Python plotly 折线图 y 轴按从 CSV 读取的顺序打印,而不是按顺序打印
Posted
技术标签:
【中文标题】Python plotly 折线图 y 轴按从 CSV 读取的顺序打印,而不是按顺序打印【英文标题】:Python plotly line chart y-axis prints in order it is read from CSV rather than sequentially 【发布时间】:2022-01-13 07:35:45 【问题描述】:我有一个 CSV 文件,其中 A 列 (MMM-YYYY) 中的日期和 B、C 和 D 列中的累积百分比股票收益。我正在尝试创建一个折线图来比较股票在此期间的表现。但是,当我运行我的代码时,y 轴不像在 excel 中那样按数字顺序(从低到高),例如我希望 y 轴以最低值开始并以最高值结束。有谁知道如何纠正这个问题?
我的代码和输出如下所示。
import plotly.express as px
import pandas as pd
import numpy as np
Return = pd.read_csv('MonthlyReturnsColumn.csv')
fig = px.line(Return, x="Month", y=Return.columns[1:4], title="Cumulative Return")
fig.update_yaxes(type ='category')
fig.show()
y-axis jumbled
【问题讨论】:
【参考方案1】:我发现了问题:CSV 数据是字符串而不是浮点数。最简单的解决方法是将文件格式改回 xlsx。新代码如下:
import plotly.express as px
import pandas as pd
import numpy as np
Return = pd.read_excel('MonthlyReturnsColumn.xlsx')
fig = px.line(Return, x="Month", y=Return.columns[1:4], title="Cumulative Return")
fig.show()
结果图将是:
【讨论】:
以上是关于Python plotly 折线图 y 轴按从 CSV 读取的顺序打印,而不是按顺序打印的主要内容,如果未能解决你的问题,请参考以下文章