画折线图至少需要2个列表:横坐标列表和纵坐标列表,两个坐标的位置一一对应。
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
x_axis_data = [1, 2, 3, 4, 5]
y_axis_data = [1, 2, 3, 4, 5]
# plot中参数的含义分别是横轴值,纵轴值,颜色,透明度和标签
plt.plot(x_axis_data, y_axis_data, 'ro-', color='#4169E1', alpha=0.8, label='一些数字')
# 显示标签,如果不加这句,即使加了label='一些数字'的参数,最终还是不会显示标签
plt.legend(loc="upper right")
plt.xlabel('x轴数字')
plt.ylabel('y轴数字')
plt.show()
# plt.savefig('demo.jpg') # 保存该图片
plt.plot(x_axis_data, y_axis_data, 'ro-', color='#4169E1', alpha=0.8, label='一些数字')
这句话按照横纵坐标的两个列表画了一条线
'ro-'
是线条的格式,这个线条格式其实有很多含义,下面是一些例子:
线的格式 | 显示形式 |
---|---|
‘ro-’ | 红色的线(red),坐标点会有小圆点(o) |
‘ro’ | 红色的线(red),坐标点用小圆点(o)表示,但是这个线条本身不会显示出来 |
‘r–’ | 红色(red)的虚线 |
‘bs’ | 蓝色(blue)的方块(square) |
‘g^’ | 绿色(green)的三角 |
… | … |
颜色可以写成color='blue'
或者写成十六进制的颜色值color='#4169E1'
alpha是透明度,label是该条线对应的标签
plt.legend(loc="upper right")
这句代码作用是显示标签,同时显示的位置是右上,这个地方可选的参数还有:
参数 | 参数码 |
---|---|
‘best’ | 0 |
‘upper right’ | 1 |
‘upper left’ | 2 |
‘lower left’ | 3 |
‘lower right’ | 4 |
‘right’ | 5 |
‘center left’ | 6 |
‘center right’ | 7 |
‘lower center’ | 8 |
‘upper center’ | 9 |
‘center’ | 10 |
设置参数为'best'
时,会自动选一个位置放标签,并且选的位置是最好的,覆盖其他线条的比例最小
加数据标签可以定量的分析折线的数据,加标签还比较简单,只要加上这句就可以了:
for x, y in zip(x_axis_data, y_axis_data):
plt.text(x, y+0.3, '%.0f' % y, ha='center', va='bottom', fontsize=10.5)
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
x_axis_data = [1, 2, 3, 4, 5]
y_axis_data = [1, 2, 3, 4, 5]
# plot中参数的含义分别是横轴值,纵轴值,颜色,透明度和标签
plt.plot(x_axis_data, y_axis_data, 'ro-', color='#4169E1', alpha=0.8, label='一些数字')
for x, y in zip(x_axis_data, y_axis_data):
plt.text(x, y+0.3, '%.0f' % y, ha='center', va='bottom', fontsize=10.5)
# 显示标签,如果不加这句,即使加了label='一些数字'的参数,最终还是不会显示标签
plt.legend(loc="upper right")
plt.xlabel('x轴数字')
plt.ylabel('y轴数字')
plt.show()
# plt.savefig('demo.jpg') # 保存该图片