我有一个时间序列数据如下:
Datum Menge
1/1/2018 0:00 19.5
1/1/2018 0:15 19.0
1/1/2018 0:30 19.5
1/1/2018 0:45 19.5
1/1/2018 1:00 21.0
1/1/2018 1:15 19.5
1/1/2018 1:30 20.0
1/1/2018 1:45 23.0
并且 Dataframe data
具有(14880,2)的形状。在Menge
列中,只有11807个值可用,其余为nan
我试着把它描绘成如下:
data.plot()
plt.show()
这给了我
但我想使用seaborn
或plotly
绘制相同的图
对于seaborn
,我试过了:
x = data.Datum
y = data.Menge.values
sns.lineplot(x = x, y = y, data = data)
它给我的输出如下:
Out[3]: <matplotlib.axes._subplots.AxesSubplot at 0x21286bb8668>
打开一个新的图形窗口,但显示为Figure 1 (Not Responding)
所以,我有两个问题:
1.在上图中,我们可以看到x轴有索引,但我希望它是Datum
值。怎么能改变呢?
1.我想通过海运或阴谋来实现这一点,那么是否有一种方法可以实现这一切?
4条答案
按热度按时间dpiehjr41#
最干净的设置,即使是多个时间序列,是:
px.line()
lineplot()
plotly:
海运:
seaborn和plotly的完整代码:
下面的代码示例将允许您生成两个图。
plotly express
另一个plotly选项是:
plotly graph_objects
seaborn
dfty9e192#
考虑一个玩具数据框架:
*海运解决方案
*解决方案
5jvtdoz23#
这比以前在Plotly中容易得多。
Plotly
Seaborn/Matplotlib
(The代码与顶部答案中的代码相同)
nimxete24#
这里最后给出的Plotly解决方案非常棒。使用figure对象,还可以很容易地为我的数据建立一个标签字典--因为政府给出的数据名称几乎没有描述性。所以这几行代码:
生成了以下Plotly图: