这是一个非常简单的问题。我有年的 x 轴和数字的 y 轴,线性增加 100。当用 pandas 和 matplotlib 绘制它时,我得到一个不代表任何数据的图表。我需要一些帮助来解决这个问题,因为它的代码量很小:
CSV 如下:
A,B
2012,100
2013,200
2014,300
2015,400
2016,500
2017,600
2018,700
2012,800
2013,900
2014,1000
2015,1100
2016,1200
2017,1300
2018,1400
代码:
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
data = pd.read_csv("CSV/DSNY.csv")
data.set_index("A", inplace=True)
data.plot()
plt.show()
生成的图表是:
这显然与数据非常不一致 - 有什么建议吗?
最佳答案
matplotlib/pandas 的默认行为是在连续的数据点之间画一条线,而不是用符号标记每个数据点。
修复:将 data.plot()
更改为 data.plot(style='o')
,或 df.绘图(标记='o',线宽=0)
。
关于python - 简单的图形不代表数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52487862/