python - 在 python 中使用 Plotly 绘制基于 Long 格式的图形线
问题描述
我的数据集如下所示
|CREDIT_ENTITY TENOR SPREAD SNAPSHOT_DATE|
|ABC 1Y 127.161 14/09/2017|
|ABC 3Y 150.161 14/09/2017|
|ABC 5Y 180.161 14/09/2017|
|ABC 7Y 111.161 14/09/2017|
|ABC 10Y 128.161 14/09/2017|
|ABC 1Y 123.161 15/09/2017|
|ABC 3Y 145.161 15/09/2017|
|ABC 5Y 196.161 15/09/2017|
|ABC 7Y 111.161 15/09/2017|
|ABC 10Y 134.161 15/09/2017|
|ABC 1Y 109.161 25/09/2017|
|ABC 3Y 190.161 25/09/2017|
|ABC 5Y 180.161 25/09/2017|
|ABC 7Y 127.161 25/09/2017|
|ABC 10Y 170.161 25/09/2017|
我想为这样的数据集绘制一个图表,每个音阶都有一条曲线。我使用以下命令。
import pandas as pd
import plotly.express as px
fig = px.line(Final_DF, x="SNAPSHOT_DATE", y="SPREAD", color="TENOR")
fig.show()
然而,在绘制图表时,我得到了每个日期的不同曲线,这真的很奇怪。
我想请问有人可以帮忙吗?谢谢
解决方案
我不得不为每个男高音将您的数据框重组为一个:
import matplotlib.pyplot as plt
import pandas as pd
tennors = [t for t in Final_DF['TENOR'].drop_duplicates()]
dfs = [Final_DF[Final_DF['TENOR'] == t] for t in tennors]
现在在一个图中绘制所有数据框(您可能需要在交互式窗口单元格中运行它):
fig, ax = plt.subplots()
for df in dfs:
df.plot(x='SNAPSHOT_DATE', y='SPREAD', ax=ax, label=list(df['TENOR'])[0])
对我很有用。
这个答案能解决你的问题吗?
推荐阅读
- c# - GeckoFx 60 下载 + 打开文件
- c# - 瓷砖没有按预期删除
- docker - 尝试在远程服务器的容器中连接 onos 控制器
- java - 在片段中为 GoogleApiclient 获取空值?
- apache-kafka-streams - Spring Cloud Stream - 在不明确使用 KTable/KStream 的情况下查询主题?
- oracle-apex - 如何在“选择列表”oracle apex 中使用图像?
- cassandra - 水平压实中层数的影响是什么?
- php - PHP - 条件 AKA Yoda 表示法中的值顺序
- docker - 如何在 kubernetes 中定义和共享 pod 环境变量到 pod 的应用程序
- r - 在 R 中为时间序列的变化创建指标变量的最简单方法