如何显示多行而不是一行?

问题描述 投票:4回答:2

对于学校,我必须做一个作业,在其中显示每个城市的测量时间的路况长度。当我尝试执行此操作时,会得到以下结果:

“结果”

这是我的数据框的照片:

“

这是我的代码:

import plotly.express as px

datum = data.loc[data['Date'] == '2020-03-03']
datum = datum.sort_values(by='Time')
dataframe = pd.DataFrame(datum, columns = ['City','Time', 'Date','Traffic_length', 'Traffic_jams'])

dataframe = dataframe.reset_index()

fig = px.line(dataframe, x="Time", y="Traffic_length", color='City')
fig.show()

我希望它用不同的线条显示每个城市,例如:

“示例”

我尝试了多种方法,但无济于事。有人知道如何使用plotly.express吗?

python pandas plotly plotly-express
2个回答
0
投票

使用枢轴转换数据然后绘图

import matplotlib.pyplot as plt
df = df.pivot(index='Time', columns='City', values='Traffic_length')
df.plot()
plt.show()

0
投票

您可以使用熊猫的绘图功能,例如:

import matplotlib.pyplot as plt
import pandas as pd
df = dataframe
fig, ax = plt.subplots()
df.groupby('City').plot(x='Time', y='Traffic_length', ax=ax, legend=True)
© www.soinside.com 2019 - 2024. All rights reserved.