Происхождение и воспроизведение графиков¶
Одиннадцать SVG в репозитории — научные учебные графики, построенные tools/generate_guide_figures.py по настоящим вычислениям скалярного API. Это не сгенерированные художественные иллюстрации. Генератор сначала выполняет все утверждения девяти сценариев, затем рисует модели и подписи. Код сценариев и численные ожидания находятся в examples/guide.py.
Воспроизведение файлов¶
Из локальной копии репозитория с установленной FuzzyRoutines используйте закреплённый набор средств документации на CPython 3.14:
python -m pip install -r docs/requirements-plots.txt
python tools/generate_guide_figures.py --output-directory docs/site/content/en/assets/figures
python tools/generate_guide_figures.py --output-directory docs/site/content/en/assets/figures --check
--check побайтно сравнивает каждый ожидаемый SVG и не записывает файлы. CI документации выполняет эту проверку на Python 3.14 с закреплёнными зависимостями. SVG-идентификаторы используют фиксированную соль хеша, метаданные не содержат дату генерации, подписи используют фиксированное семейство шрифтов. Воспроизводимость относится к этому набору средств; побайтовое совпадение между разными версиями библиотек или шрифтов не обещается.
Для редакторской проверки явный --preview-directory PATH дополнительно записывает PNG в выбранный каталог. По умолчанию записываются только SVG под --output-directory. После установки зависимостей команды не обращаются к сети. Отсутствующая зависимость, устаревший график, провал проверки сценария или ошибка записи дают ненулевой код завершения.
Matplotlib и его зависимости, включая NumPy, нужны только средствам документации. Установка и импорт FuzzyRoutines их не требуют. Скрипт примеров по умолчанию не импортирует ни одну из них.
Независимая проверка научного содержания¶
Побайтовое сравнение SVG обнаруживает устаревшие файлы, но не доказывает математику. tests/test_guide_figures.py независимо проверяет все 401 координату каждой из 36 кривых по элементарным кусочным или экспоненциальным формулам. Также проверяются координаты точек, шесть столбцов датчиков, пороги, четырёхузловой расчёт центроида с точной рациональной арифметикой и расположение заголовков и легенд. Эталонные расчёты не вызывают библиотечные функции принадлежности. CI документации устанавливает средства построения графиков и выполняет эти тесты на установленном скалярном API перед сравнением SVG.
Правильное чтение изображений¶
- Линии непрерывных моделей используют 401 точку отображения: это иллюстрации, а не доказательства точной геометрии или политика квадратуры
Centroid. - Точки альфа-среза показывают заданную сетку из девяти узлов; выделенные контуром точки — подходящие координаты полностью перебранного дискретного универсального множества из пяти точек.
- Диагностика шкалы использует одиннадцать координат с границами. Гладкие кривые рисунка и диагностические наблюдения дают разные виды сведений.
- На графике нормализации показаны только дискретные точки, без интерполирующей линии или подразумеваемых промежуточных координат.
- График центроида сопоставляет аналитические моменты с отдельным пользовательским расчётом методом трапеций по четырём точкам. Ни плотность отображаемой линии, ни этот грубый расчёт не настраивают адаптивное интегрирование библиотеки.
- На графике операторов вторая входная степень равна 0.6, по горизонтали меняется первая. Ни одна ось не обозначает физическое измерение.
Каждое изображение имеет описательную альтернативу Markdown и заголовок/описание SVG. Страница даёт численный результат текстом, поэтому понимание примера не зависит от восприятия цвета или доступности изображения. Параметры и метки иллюстративны и не являются эмпирической калибровкой.
Графики используют SVG-бэкенд Matplotlib и поддержку метаданных savefig.