1:导包
2:matplotlib基本属性和方法
字体,颜色,标注,中文。线条等属性:
import matplotlib.pyplot as plt
import matplotlib as mpl
mpl.rcParams['font.sans-serif'] = ['KaiTi', 'SimHei', 'FangSong'] # 汉字字体,优先使用楷体,如果找不到楷体,则使用黑体
mpl.rcParams['font.size'] = 12 # 字体大小
mpl.rcParams['axes.unicode_minus'] = False # 正常显示负号
plt.plot(x_data, y_data, lw=1, c='turquoise', marker='s', ms=4, label='趋势图') # marker设置标记形状,c 颜色设置
plt.xticks(rotation=45)#倾斜x轴标注
plt.legend(loc='upper left') # 图例标签
plt.title("爬虫数据分析报表") # 对应标题栏
plt.grid(axis="y") # 设置Y轴网格线
plt.axis('tight')
plt.xlabel('年份') # x轴标注
plt.ylabel('数量') # y轴标注
plt.text(a, b, b, ha='center', va='bottom', fontsize=8)#设置数字标签
具体代码
import matplotlib.pyplot as plt
import matplotlib as mpl
def getdate(beforeOfDay):#获取最近7天的数据
today = datetime.datetime.now()
# 计算偏移量
dates=[]
for i in range(beforeOfDay,0,-1):
offset = datetime.timedelta(days=-i+1)
# 获取想要的日期的时间
re_date = (today + offset).strftime('%m-%d')
dates.append(re_date)
return dates
def create(x_data,y_data,):
mpl.rcParams['font.sans-serif'] = ['KaiTi', 'SimHei', 'FangSong'] # 汉字字体,优先使用楷体,如果找不到楷体,则使用黑体
mpl.rcParams['font.size'] = 12 # 字体大小
mpl.rcParams['axes.unicode_minus'] = False # 正常显示负号
x_data = getdate(7)
y_data = [7000, 8000, 6300, 7100, 8400, 9000, 10700]
plt.plot(x_data, y_data, lw=1, c='turquoise', marker='s', ms=4, label='趋势图') # marker设置标记形状,c 颜色设置
plt.xticks(rotation=45)
plt.legend(loc='upper left') # 图例标签
plt.title("爬虫数据分析报表") # 对应标题栏
plt.grid(axis="y") # 设置Y轴网格线
plt.axis('tight')
plt.xlabel('年份') # x轴标注
plt.ylabel('数量') # y轴标注
for a, b in zip(x_data, y_data): # 设置数字标签
plt.text(a, b, b, ha='center', va='bottom', fontsize=8)
plt.savefig("./picture/a.png", bbox_inches='tight')