参考链接
[1] python matlotlib绘图,以时间为横坐标
中文乱码问题
mpl.rcParams[‘font.sans-serif’] = [‘SimHei’]
import matplotlib.pyplot as plt
#导入中文字体,避免显示乱码
import pylab as mpl
import numpy as np
#数据源
list_date = ['20190813', '20190814', '20190815', '20190816', '20190819']
list_count = [8, 8, 6, 11, 19]
#中文乱码问题
mpl.rcParams['font.sans-serif'] = ['SimHei']
# 生成figure对象,相当于准备一个画板
fig = plt.figure(figsize=(8, 3))
# 生成axis对象,相当于在画板上准备一张白纸,111,11表示只有一个表格,
#第3个1,表示在第1个表格上画图
ax = fig.add_subplot(111)
plt.title(conspt)
plt.xlabel('日期')
plt.ylabel('涨停数量')
#将字符串的日期,转换成日期对象
xs = [datetime.datetime.strptime(d, '%Y%m%d').date() for d in list_date]
#日期对象作为参数设置到横坐标,并且使用list_date中的字符串日志作为对象的标签(别名)
plt.xticks(xs, list_date, rotation=45, fontsize=10)
plt.yticks(np.arange(0, 30, step=2), fontsize=10)
ax.plot(xs, list_count, color='r')
#下方图片显示不完整的问题
plt.tight_layout()
#在点阵上方标明数值
for x, y in zip(xs, list_count):
plt.text(x, y + 0.3, str(y), ha='center', va='bottom', fontsize=10)