【问题标题】:Python plotly line chart y-axis prints in order it is read from CSV rather than sequentiallyPython plotly 折线图 y 轴按从 CSV 读取的顺序打印,而不是按顺序打印
【发布时间】: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

【问题讨论】:

    标签: python pandas numpy plotly


    【解决方案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() 
    

    结果图将是:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-20
      • 2013-05-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多