Pandas 如何绘制图表,使其与上一个值相加,而不是在零线上绘制
在这段代码中,我绘出了Pandas 如何绘制图表,使其与上一个值相加,而不是在零线上绘制,pandas,matplotlib,Pandas,Matplotlib,在这段代码中,我绘出了pct\u day。由于该值不会像在股票价值中那样增加,因此可以在将要绘制的当前值添加到上一个值并绘制该数据的位置绘制该数据。这样,折线图将随着时间的推移而增加,而不是下面的图像,其中图表绘制在零线上 High Low Open Close Volume Adj Close year pct_day month day 1 2 794.913004 779.509998 7
pct\u day
。由于该值不会像在股票价值中那样增加,因此可以在将要绘制的当前值添加到上一个值并绘制该数据的位置绘制该数据。这样,折线图将随着时间的推移而增加,而不是下面的图像,其中图表绘制在零线上
High Low Open Close Volume Adj Close year pct_day
month day
1 2 794.913004 779.509998 788.783002 789.163007 6.372860e+08 789.163007 1997.400000 0.002211
3 833.470005 818.124662 823.937345 828.889339 9.985193e+08 828.889339 1997.866667 0.004160
4 863.153573 849.154299 858.737861 853.571429 1.042729e+09 853.571429 1997.714286 -0.003345
5 900.455715 888.571429 895.716426 894.472137 1.022023e+09 894.472137 1998.357143 -0.001216
6 847.453076 837.161537 840.123847 844.383843 8.889831e+08 844.383843 1998.076923 0.003679
... ... ... ... ... ... ... ... ... ...
12 27 909.735997 900.942000 905.528664 904.734009 7.485793e+08 904.734009 1998.133333 -0.000308
28 946.635010 940.440016 942.995721 944.127147 7.552150e+08 944.127147 1998.071429 0.001251
29 950.723837 941.625390 944.760775 947.200773 6.830400e+08 947.200773 1998.076923 0.002899
30 891.501671 883.954989 887.031665 887.819181 6.010675e+08 887.819181 1997.833333 0.001844
31 918.943857 910.320763 916.251549 913.786154 6.879523e+08 913.786154 1997.923077 -0.002772
363 rows × 8 columns
在Jupyter笔记本中,如下所示:
您需要列
pct\u day
的累计和。首先,创建一个新列,在其中通过numpy计算该值
之后,您可以通过
df.plot(y='pct\u value\u cumsum')
我使用了以下命令df['pct\u day]'。cumsum(axis=0)
但是我在解析时得到了语法错误:意外的EOF
。将顶点(')从方括号中取出。它应该在里面。谢谢,我确实更改了df['pct_day'].cumsum(axis=0)
但是得到了这个错误,而不是TypeError:'type'对象是不可订阅的
pct_value_list = df['pct_value'].tolist()
pct_value_cumsum = list(np.cumsum(pct_value_list))
df['pct_value_cumsum'] = pct_value_cumsum