本章我们在通过一些常见示例熟悉Matplotlib库中设置参数的语法。
本文主要内容:
- 设置图表的默认值
- 创建子图
- 设置Ticks
# 导入库
import matplotlib.pyplot as plt
# 定义X、Y的值
x = [5, 10, 15, 20]
y = [1, 4, 3, 4]
# 绘制直线
plt.plot(x, y)
# 设置轴的标题
plt.xlabel('X Title')
plt.ylabel('Y Title')
plt.title('Main Title!')
plt.show()
运行后的效果如下:
需要使用到xticks()和yticks()函数去设置轴的参数。
示例代码如下:
# 导入库
import matplotlib.pyplot as plt
import numpy as np
# 定义X、Y的值
x = [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]
y = [1, 4, 3, 2, 7, 6, 9, 8, 10, 5]
# 绘制直线
plt.plot(x, y)
# 设置轴的标题
plt.xlabel('X Title')
plt.ylabel('Y Title')
# X轴的刻度:0~61的之间,刻度将是这个范围类等差为5的值,
plt.xticks(np.arange(0, 61, 5))
# X轴的刻度:0~11的之间,刻度将是这个范围类等差为5的值,
plt.yticks(np.arange(0, 11, 1))
plt.show()
运行后的效果如下:
从图表中可以看到X轴的为0、5、…….、60,正是我们代码中所设置的。另外还有很多基本的设置功能,大家可根据官方文档自行练习。
import matplotlib.pyplot as plt
# 第一条线的坐标
x1 = [1, 2, 3]
y1 = [2, 4, 1]
# 绘制第一条线
plt.plot(x1, y1, label="line 1")
# 第二条线的坐标
x2 = [1, 2, 3]
y2 = [4, 1, 3]
# 绘制第二条线
plt.plot(x2, y2, label="line 2")
# 设置标题
plt.xlabel('x - axis')
plt.ylabel('y - axis')
plt.title('Main Title!')
# 在绘图上显示图例
plt.legend()
# 显示绘图
plt.show()
运行后的效果如下:
# 导入matplotlib库
from matplotlib import pyplot as plt
# X轴值
x = [1, 2, 3, 4, 5]
# Y轴值
y = [10, 5, 8, 4, 2]
# bars的标签
tick_label = ['one', 'two', 'three', 'four', 'five']
# 绘制条形图
plt.bar(x, y, tick_label=tick_label,
width=0.8, color=['red', 'green'])
# 显示图
plt.show()
运行后结果如下:
import matplotlib.pyplot as plt
# 每个元素占有的部分
slices = [3, 7, 8, 6]
# 每部分的标签
activities = ['eat', 'sleep', 'work', 'play']
# 每个标签的颜色
colors = ['r', 'y', 'g', 'b']
# 绘制饼图
plt.pie(slices, labels=activities, colors=colors,
startangle=90, shadow=True, explode=(0, 0, 0.1, 0),
radius=1.2, autopct='%1.1f%%')
# 在绘图上显示图例
plt.legend()
# 显示绘图
plt.show()
运行后结果如下:
上面,我们使用plt.pie()方法绘制饼图。
import matplotlib.pyplot as plt
# 定义X、Y的值
x = [1, 2, 3, 4, 5, 6]
y = [2, 4, 1, 5, 2, 6]
# 绘制点
plt.plot(x, y, color='green', linestyle='dashed', linewidth=3,
marker='o', markerfacecolor='blue', markersize=12)
# 设置X和Y轴范围
plt.ylim(1, 8)
plt.xlim(1, 8)
plt.show()
运行后结果如下:
由上可见,我们已经完成了几个自定义
本章节的额内容是对图表的默认值进行修改,自定义为我们所需要的样式。
若有问题,欢迎联系作者(微信:lixu1770105)。