【python】画折线图

一个简单的折线图:

画折线图至少需要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')  # 保存该图片
上述代码显示结果如下:
【python】画折线图_第1张图片
代码语句说明:
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')  # 保存该图片
运行结果:
【python】画折线图_第2张图片

你可能感兴趣的:(python)