[Python] 纯文本查看 复制代码
#-*- coding:utf-8 -*-
# author:**ZLH**
# datetime:2019/8/16 14:41
# software: PyCharm
import matplotlib.pyplot as plt
x_data = ['2001','2002','2003','2004','2005','2006','2007']
y_data = [2300, 3400, 4500, 6200, 6700, 7800, 8900]
# x_data达标横坐标的值,y_data代表纵坐标 的值
# plt.plot(x_data,y_data)
# 横坐标的值如果未定义,则x的数值默认为123456
# plt.plot(y_data)
y_data2=[2200,3300,3400,5500,6600,7700,8800,]
# plt.plot(x_data,y_data,x_data,y_data2)
# 指定折线的颜色,线宽,样式。目前linestyle指定折线样式时,该参数支持以下字符串参数值:
# todo '-:'代表实线,这是默认值;'--:'代表虚线;'::'代表点线;'-.:'代表短线、点相间的虚线
ln1,= plt.plot(x_data,y_data,color='red',linewidth=2.0,linestyle='-',label='python销量')
ln2, = plt.plot(x_data,y_data2,color = 'blue',linewidth=3.0,linestyle='-.',label='java销量')
# 调用legend()函数设置图例
"""
loc参数是指定图例的添加位置,该参数支持如下参数值:
best:自动选择最佳位置
upper right :将图例放在右上角
upper left :放在左上角
lower right:右下角
lower left:左下角
right:右边
center left:左边居中
center right:右边距中
lower center:底部居中
upper center :顶部居中
center :中心
"""
# matplotlib 默认不支持中文字体。所以要想加载中文,就调用matplotlib.font_manager子模块下的fontproperties类加载中文字体、在调用legend()函数中的prop属性指定使用中文字体。
# import matplotlib.font_manager as fm
# font1 = fm.FontProperties(fname='C:\Windows\Fonts\msyh.ttc')
# plt.legend(loc = 'best',prop=font1)
# plt.title("标题", fontproperties="SimHei") # (黑体)
plt.rcParams['font.sans-serif'] = ['SimHei'] # 步骤一(替换sans-serif字体)
plt.rcParams['axes.unicode_minus'] = False # 步骤二(解决坐标轴负数的负号显示问题)
plt.legend(loc = 'best')
# handles=[ln2,ln1],可以不用指定,不写也会默认的
# 调用show()显示图形
plt.xlabel("年份",)
plt.ylabel("销量(本)",)
plt.title("某图书的历年销量",)
#plt.yticks([4000,7000,8000],[r'挺好',r'优秀',r'火爆'],)
plt.show()