добавить горизонтальную граничную линию к графику временного ряда в python - PullRequest
0 голосов
/ 13 февраля 2020

Я хочу добавить горизонтальную верхнюю и нижнюю граничную линию для графика временных рядов Temparature. Допустим, верхняя граничная линия равна 30, а нижняя граничная линия - 10.

df3.plot(x="Date", y=["Temp.PM", "Temp.AM"],figsize=(20,8))

Times series plot without limit lines

Ответы [ 3 ]

0 голосов
/ 13 февраля 2020

Я думаю, что это решение может помочь вам

import matplotlib.pyplot as plt
%matplotlib inline

df3.plot(x="Date", y=["Temp.PM", "Temp.AM"],figsize=(20,8))
plt.axhline(30)
plt.axhline(10)
0 голосов
/ 14 февраля 2020

Вот код для начала и эксперимента:

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

dates = pd.date_range('20190822', '20191020', freq='D')
df3 = pd.DataFrame({'Date': dates,
                    'Temp.AM': np.random.normal(22.5, 2, len(dates)),
                    'Temp.PM': np.random.normal(27.5, 2, len(dates))})
df3.plot(x='Date', y=['Temp.PM', 'Temp.AM'], color=['dodgerblue','coral'], figsize=(20, 8))

min_temp = df3['Temp.AM'].min()
max_temp = df3['Temp.PM'].max()
plt.axhline(min_temp, c='coral', ls='--')
plt.axhline(max_temp, c='dodgerblue', ls='--')
plt.text(df3['Date'][0], min_temp, f'\nMin: {min_temp:.1f}°C', ha='left', va='center', c='coral')
plt.text(df3['Date'][0], max_temp, f'Max: {max_temp:.1f}°C\n', ha='left', va='center', c='dodgerblue')
plt.show()

example plot

0 голосов
/ 13 февраля 2020
plt.plot(df3['Date'], df3[["Temp.PM", "Temp.AM"]])
plt.axhline(30, color='r')
plt.axhline(10, color='b')
plt.show()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...