如何解决Python Plotly:使用字符串格式的日期而不是数字时不维护轴
我在 plotly 和 Pandas 中遇到一个奇怪的问题,当我使用格式化的日期字符串而不是月份的 int 时,轴正在翻转。
我从我的数据集创建了这个组:
dfg = dfq.groupby(['Target','Mon','Month_fr','Year'])['Value'].mean().reset_index()
Target Mon Mon_fr Yr Value
Aggression 1 Jan 2020 0.393939
Aggression 2 Feb 2020 0.181818
Aggression 3 Mar 2020 0.430556
Aggression 4 Apr 2020 0.159420
Aggression 5 May 2020 0.445783
Aggression 6 Jun 2020 0.446154
Aggression 7 Jul 2019 0.620690
Aggression 8 Aug 2019 0.692308
Aggression 9 Sep 2019 0.207792
Aggression 10 Oct 2019 0.287671
Aggression 11 Nov 2019 0.253968
Aggression 12 Dec 2019 0.461538
Off-Task 1 Jan 2020 0.818182
Off-Task 2 Feb 2020 0.606061
Off-Task 3 Mar 2020 0.643836
Off-Task 4 Apr 2020 0.710145
Off-Task 5 May 2020 1.084337
Off-Task 6 Jun 2020 1.014925
Off-Task 7 Jul 2019 1.137931
Off-Task 8 Aug 2019 0.846154
Off-Task 9 Sep 2019 0.701299
Off-Task 10 Oct 2019 0.794521
Off-Task 11 Nov 2019 0.730159
Off-Task 12 Dec 2019 0.984615
SIB 1 Jan 2020 0.492308
SIB 2 Feb 2020 0.045455
SIB 3 Mar 2020 0.154930
SIB 4 Apr 2020 0.289855
SIB 5 May 2020 0.192771
SIB 6 Jun 2020 0.164179
SIB 7 Jul 2019 0.086207
SIB 8 Aug 2019 0.415385
SIB 9 Sep 2019 0.434211
SIB 10 Oct 2019 0.301370
SIB 11 Nov 2019 0.245902
SIB 12 Dec 2019 0.507692
并希望在 y 轴上绘制带有“值”的并排条形图
当我使用数字月份值时,这很好用:
fig = px.bar(dfg,x=["Target","Mon"],y="Value",color = "Target",title="Behavior Data",barmode="group")
fig.show()
但是当我尝试使用格式化的月份变量执行相同操作时:
fig = px.bar(dfg,"Month_fr"],barmode="group")
fig.show()
它翻转轴并且不再使用“值”作为表示的数据:
你们有没有好心人遇到过这个奇怪的问题?!帮助...
解决方法
我明白了!问题是我将 x 的值作为列表输入:
x=["Target","Month_fr"],
我不知道我不需要在我的 x 变量中包含“Target”,因为该分组由“color = 'Target'”处理......这就是为什么在使用整数时这不会成为问题的原因几个月我不知道。使用 2 个字符串值作为 x 值可能存在一些问题。
感谢任何考虑过的人!如果您有兴趣,这里是工作代码:
import plotly.express as px # (version 4.7.0)
fig = px.bar(dfg,x="Month_fr",y="Value",color = "Target",title="Behavior Data",barmode="group")
fig.show()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。