Дополнительная строка в графике временных рядов с помощью Matplotlib

#python #matplotlib #time-series

Вопрос:

У меня есть набор данных о потоке трафика для разных станций. введите описание изображения здесь

Я пытаюсь построить их только на ограниченное время, например, на лето. Когда я строю график, я вижу, что в каждом из них есть линия, пересекающая весь сюжет.

 fig, ax = plt.subplots(nrows=16, figsize=(60,120))

stations = countData19_gdf['address'].unique()
print(len(stations))
summersubset = countData19_gdf.loc['2019-06-01': '2019-08-31']
cnt=0
for station in stations:
    station_data = summersubset[summersubset['address'] == station]
    ax[cnt].plot( station_data['volume'], c='green',  label= 'flow')
    ax[cnt].title.set_text(station)
    ax[cnt].set_xlabel('Study Date')
    ax[cnt].set_ylabel('volume (V/15 minutes)')
    ax[cnt].set_title(station)
    ax[cnt].grid(True)
    ax[cnt].xaxis.set_major_locator(DayLocator())
    ax[cnt].xaxis.set_major_formatter(DateFormatter('%m/%d'))
    ax[cnt].legend(loc='upper left')

    cnt = cnt  1
 

введите описание изображения здесь

Комментарии:

1. Я добавил снимок данных

2. Спасибо, я отсортировал индекс, и это сработало.

Ответ №1:

Как предположил Джон Хенниг в комментариях, я просто заказал индекс перед сюжетом, и это сработало.

 gdf = gdf.sort_index()