Artist样式
Matplotlib库很多绘制方法都可以样式设置,比如设置颜色,线的宽度,线的风格等
data1, data2, data3, data4 = np.random.randn(4, 100) # make 4 random data setsfig, ax = plt.subplots(figsize=(10, 5.4))x = np.arange(len(data1))ax.plot(x, np.cumsum(data1), color='blue', linewidth=3, linestyle='--')l, = ax.plot(x, np.cumsum(data2), color='orange', linewidth=2)l.set_linestyle(':')plt.show()
绘制两个线条,并设置线条样式
线条样式
Matplotlib有个很灵活的颜色集,绝大部分Artist都可以设置颜色,有的还可以设置多个颜色
fig, ax = plt.subplots(figsize=(10, 5.4))ax.scatter(data1, data2, s=50, facecolor='C0', edgecolor='k')plt.show()
scatter()函数的边缘和里面是两个颜色
颜色
线的宽度通常都是1像素,点的大小取决于使用的函数
fig, ax = plt.subplots(figsize=(10, 5.4))ax.plot(data1, 'o', label='data1')ax.plot(data2, 'd', label='data2')ax.plot(data3, 'v', label='data3')ax.plot(data4, 's', label='data4')ax.legend()plt.show()
通过字母指定点的不同样式
点
标签绘制
之前是通过set_xlable(), set_ylable(), set_title()的方式将标签加到想要的位置的,标签也可以通过text()函数添加
mu, sigma = 115, 15x = mu + sigma * np.random.randn(10000)fig, ax = plt.subplots(figsize=(10, 5.4), layout='constrained')# the histogram of the datan, bins, patches = ax.hist(x, 50, density=1, facecolor='C0', alpha=0.75)ax.set_xlabel('Length [cm]')ax.set_ylabel('Probability')ax.set_title('Aardvark lengths
(not really)')ax.text(75, .025, r'$\mu=115,\ \sigma=15#39;)ax.axis([55, 175, 0, 0.03])ax.grid(True)plt.show()
所有的text相关函数返回matplotlib.text.Text实例,Matplotlib也接收TeX表达式,上文中r可以让python不再将\视作转义字符。
添加文本
可以在图形中添加标注
fig, ax = plt.subplots(figsize=(10, 5.4))t = np.arange(0.0, 5.0, 0.01)s = np.cos(2 * np.pi * t)line, = ax.plot(t, s, lw=2)ax.annotate('local max', xy=(2, 1), xytext=(3, 1.5), arrowprops=dict(facecolor='black', shrink=0.05))ax.set_ylim(-2, 2)plt.show()
xy和xytext都在坐标系中,也可以选择其它的坐标系
标注
通过Axes.legend()方法来识别线条或标记
fig, ax = plt.subplots(figsize=(10, 5.4))ax.plot(np.arange(len(data1)), data1, label='data1')ax.plot(np.arange(len(data2)), data2, label='data2')ax.plot(np.arange(len(data3)), data3, 'd', label='data3')ax.legend()plt.show()
在后续教程在学习legend()方法的使用
legend
留言与评论(共有 0 条评论) “” |