Matplotlib как графы с сюжетом express - PullRequest
0 голосов
/ 06 марта 2020

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

df.plot()

И это создает отдельную линию для всех элементов, но я хочу создать одинаковые линейные графики с сюжетом express, но я не могу это сделать, возможно, потому что я есть столбцы с датами

df;
dataDate 2019-10-01 2019-10-02  2019-10-01  2019-10-01  2019-10-02 
name                        
item1      0.24      0.12       0.19        0.20        0.12    
item2      0.26      0.25       0.17        0.17        0.13    
item3      0.22      0.24       0.18        0.17        0.16    
item4      0.72      0.22       0.19        0.20        0.15    
item5      0.55      0.23       0.19        0.18        0.14    

Подскажите, как я могу создавать линейные графики для всех элементов за время с помощью plotly express. Спасибо

1 Ответ

1 голос
/ 06 марта 2020

У них есть отличные примеры в их документации (https://plot.ly/python/plotly-express/#scatter -and-line-plots ).

По своей конструкции это лучше всего работает с аккуратными данными, поэтому у вас будет столбец для даты столбец для номера элемента, а затем столбец для значения.

from datetime import datetime, timedelta
import numpy as np
import pandas as pd

base = datetime.today()
dates = [base - timedelta(days=x) for x in range(10)] * 3
cats = ['A'] * 10 + ['B'] * 10 + ['C'] * 10
vals = np.arange(30)

df = pd.DataFrame({'Date': dates, 'Category': cats, 'Value': vals})
px.line(df, x='Date', y='Value', color='Category')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...