python - 用 Matplotlib 和 Pandas 绘制日期
问题描述
我正在尝试根据 X 轴上的日期绘制 Y 轴上的销售数量。我似乎无法找到一种方法来做 X 轴上的日期。如果我将日期更改为浮点数,我可以绘制它,但我仍然无法找到绘制日期格式的方法。
import matplotlib.pyplot as plt
import csv
x = []
y = []
with open('book1.csv','r') as csvfile:
plots = csv.reader(csvfile, delimiter=',')
for row in plots:
x.append(float(row[0]))
y.append(float(row[1]))
plt.plot(x,y, label='Loaded from file!')
plt.xlabel('x')
plt.ylabel('y')
plt.title('Interesting Graph\nCheck it out')
plt.legend()
plt.show()
我的 csv 看起来像:
1/1/2019,7980.185714
2/1/2019,9478.297619
3/1/2019,9282.166667
4/1/2019,6900.833333
5/1/2019,5563.716667
解决方案
您需要将类型更改x
为 datetime :
import matplotlib.pyplot as plt
import csv
import datetime as dt
x = []
y = []
with open('book1.csv','r') as csvfile:
plots = csv.reader(csvfile, delimiter=',')
for row in plots:
x.append(dt.datetime.strptime(row[0],'%m/%d/%Y').date())
y.append(float(row[1]))
plt.plot(x,y, label='Loaded from file!')
plt.xlabel('x')
plt.xticks(x, x, rotation=90)
plt.ylabel('y')
plt.title('Interesting Graph\nCheck it out')
plt.legend()
plt.show()
推荐阅读
- amcharts - 确保显示值标签
- tableau-api - Tableau 禁用自定义视图选项
- shell - 如何迭代文件夹内的所有文件并运行 curl 命令来安装 AEM 包
- javascript - 数据表子行 Hanlde Null 值
- php - 找不到类“条纹\条纹”
- authentication - 如何使用 OpenID Connect 在 API 中获取身份
- algorithm - ArrayBuffer 的二进制搜索
- r - papaja:放置浮动时控制文本间距 H
- c# - 错误:System.InvalidOperationException:未创建会话:Chrome 版本必须在 70 到 73 之间,使用 ChromeDriver 和 Chrome 通过 Selenium
- java - 分页库 - 按键加载特定页面