> For the complete documentation index, see [llms.txt](https://bemind.gitbook.io/neural/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://bemind.gitbook.io/neural/neuralprophet/rukovodstva-po-funkciyam/vizualizaciya-prognozov-neuralprophet.md).

# Визуализация прогнозов NeuralProphet

Этот блокнот демонстрирует, какие варианты построения графиков доступны в NeuralProphet.

**NeuralProphet** поддерживает использование нескольких бэкендов для визуализации, каждый из которых имеет свои преимущества и недостатки:

* `plotly`: Интерактивные графики, но могут быть медленными для больших наборов данных и не отображаются в версии документации.
* `plotly-static`: Статические графики для отображения в документации.
* `plotly-resampler`: Интерактивные графики, которые работают быстрее с большими наборами данных, но могут некорректно отображаться в некоторых средах.
* `matplotlib`: Статические графики, но скоро будут устаревшими.

Давайте начнем с той же модели, что и в учебниках.

```python
import pandas as pd
from neuralprophet import NeuralProphet, set_log_level

# Отключение сообщений журнала, кроме случаев ошибок
set_log_level("ERROR")

# Загрузка набора данных из CSV-файла с помощью pandas
df = pd.read_csv("https://github.com/ourownstory/neuralprophet-data/raw/main/kaggle-energy/datasets/tutorial04.csv")

# Уменьшение набора данных до двух лет для более наглядного отображения
df = df.iloc[-365 * 2 :]

# Модель и прогнозирование
m = NeuralProphet(
    # Отключение точек изменения тренда
    n_changepoints=10,
    # Отключение компонентов сезонности
    yearly_seasonality=True,
    weekly_seasonality=True,
    daily_seasonality=True,
    n_lags=10,
)
m.add_lagged_regressor("temperature")

m.set_plotting_backend("plotly-static")

metrics = m.fit(df)
forecast = m.predict(df)

```

### Постройте прогноз

Постройте прогноз модели и фактические данные.

```python
m.plot(forecast)
```

<figure><img src="https://neuralprophet.com/_images/how-to-guides_feature-guides_plotly_4_0.svg" alt=""><figcaption></figcaption></figure>

### Постройте компоненты

Чтобы визуализировать компоненты прогноза, такие как тренд, сезонность и праздники, вы можете использовать метод `plot_parameters`. Вы можете выбрать показ всех компонентов или только части с помощью `components`. [Подробнее смотрите в официальной документации NeuralProphet.](https://neuralprophet.com/code/forecaster.html?highlight=lot_parameters#neuralprophet.forecaster.NeuralProphet.plot_parameters)

```
m.plot_components(forecast)
```

<figure><img src="https://neuralprophet.com/_images/how-to-guides_feature-guides_plotly_6_0.svg" alt=""><figcaption></figcaption></figure>

### Постройте параметры

Для лучшего понимания модели можно визуализировать параметры модели. Как и в случае с `plot_components`, вы можете [выбрать визуализацию всех параметров или только некоторой их части.](https://neuralprophet.com/code/forecaster.html?highlight=plot_parameters#neuralprophet.forecaster.NeuralProphet.plot_parameters)

```python
m.plot_parameters()
```

<figure><img src="https://neuralprophet.com/_images/how-to-guides_feature-guides_plotly_8_0.svg" alt=""><figcaption></figcaption></figure>

### Построение нескольких прогнозов

Neuralprophet может генерировать прогнозы на несколько шагов вперед, если указать параметр `n_forecasts`&#x20;

```python
# Модель и прогнозирование
m = NeuralProphet(
    # Отключение точек изменения тренда
    n_changepoints=10,
    # Отключение компонентов сезонности
    yearly_seasonality=True,
    weekly_seasonality=True,
    daily_seasonality=True,
    n_lags=10,
    n_forecasts=10,
)
m.add_lagged_regressor("temperature")

m.set_plotting_backend("plotly-static")

metrics = m.fit(df)
forecast = m.predict(df)

```

Если мы будем строить наш прогноз, как и раньше, все прогнозы на каждом шаге будут отображены. Однако мы также можем построить каждый прогноз на каждом шаге индивидуально.

```python
m.plot(forecast, forecast_in_focus=4)
```

<figure><img src="https://neuralprophet.com/_images/how-to-guides_feature-guides_plotly_12_0.svg" alt=""><figcaption></figcaption></figure>

Тренд, сезонность и праздники одинаковы для всех прогнозов вперед, поэтому они отображаются только один раз. Но авторегрессия и запаздывающие регрессоры различаются для каждого шага прогнозирования. Если `forecast_in_focus` не указан, график компонент показывает долю компонента к каждому шагу прогноза разными цветами. Если указан `forecast_in_focus`, график компонент показывает долю компонента указанного шага прогноза.

```python
# Показать только последние 20 дней для лучшего отображения компонентов
m.plot_components(forecast[-20:])
```

<figure><img src="https://neuralprophet.com/_images/how-to-guides_feature-guides_plotly_14_0.svg" alt=""><figcaption></figcaption></figure>

Поскольку параметры одинаковы для всех прогнозов на несколько шагов вперед, они отображаются только один раз.

```python
m.plot_parameters()
```

<figure><img src="https://neuralprophet.com/_images/how-to-guides_feature-guides_plotly_16_0.svg" alt=""><figcaption></figcaption></figure>
