我正试图在几周内描绘一个销售趋势。但是在x轴上,刻度没有按正确的顺序排列,这使得我的图形看起来很奇怪
正如你所看到的,圆圈周,需要从起点或轴开始。为什么在我对数据框中的日期进行排序之后,仍然会发生这种情况
熊猫代码:
basic_df = filterDataFrameByDate(df,start_date,end_date)
df = basic_df.groupby(['S2PName',basic_df['S2BillDate'].dt.to_period(flag)], sort=False)['S2PGTotal'].agg([('totSale','sum'),('count','size')]).reset_index()
df.sort_values('S2BillDate',inplace=True)
df['S2BillDate'] = df['S2BillDate'].astype('str')
我还注意到,当我从图例中取消选择“Samosa”时,记号排列正确
有谁能帮我解决这个问题吗
熊猫代码和数据:
代码:
print(df['S2BillDate'].unique())
作品:
<PeriodArray>
['2020-02-03/2020-02-09', '2020-02-10/2020-02-16', '2020-02-17/2020-02-23',
'2020-02-24/2020-03-01']
Length: 4, dtype: period[W-SUN]
代码:
df = basic_df.groupby(['S2PName',basic_df['S2BillDate'].dt.to_period(flag)], sort=False)['S2PGTotal'].agg([('totSale','sum'),('count','size')]).reset_index()
作品:
[537 rows x 4 columns]
S2PName S2BillDate totSale count
0 SAMOSA 2020-02-10/2020-02-16 4057.89 228
1 COFFEE 2020-02-10/2020-02-16 10567.21 582
2 TEA 2020-02-10/2020-02-16 6808.92 445
3 POORI 2020-02-10/2020-02-16 7556.77 179
4 PONGAL 2020-02-10/2020-02-16 4758.97 122
.. ... ... ... ...
411 PEPPER CHICKEN 2020-02-24/2020-03-01 90.00 1
412 SEZWAN CHICKEN FRIED NOODLES 2020-02-24/2020-03-01 199.50 2
413 SEZWAN VEG FRIED RICE 2020-02-24/2020-03-01 69.83 1
414 SEZWAN EGG FRIED RICE 2020-02-24/2020-03-01 89.78 1
415 EGG MASALA 2020-02-24/2020-03-01 50.04 1
我可以重现你的问题。我正在使用
plotly.express
,但它与plotly.graph_objs
的工作方式相同资料
这个产品
这里的问题是如何对日期进行排序。如果您看到
COFFEE
的第一点是2020-02-24/2020-03-01
,那么第二点是2020-02-17/2020-02-23
以此类推一个快速解决方案将是
我个人更喜欢在
xaxis
上使用日期而不是字符串相关问题 更多 >
编程相关推荐