Python日记(4)——matplotlib基础入门(2)在这里插入代码片
每天做一个Python小练习,顺便记录一些小技巧。
刻度,标签和图例
matplotlib中的pyplot方法,专门设计为做交互式作用,包含了xlim、 xticks和xticklabel等方法,这些方法分别控制了绘图范围、刻度位置以及刻度标签。以下为常见的两种方式:
(1)若没有输入任何参数时调用,则返回当前的参数值(例如plt.xlim()
返回当前的x轴绘图范围)。
(2)传入参数的情况下调用,并设置参数值(例如plt.xlim([0, 10])
会将x轴的范围设置为0,10)。
当使用这些方法时,都会在当前活动,或者最近创建的AxesSubplot
上生效,这些方法中的每一个对应于子图的自身的两个方法,比如xlim
对于ax.get_lim
和ax.set_lim
。
设置标题,轴标签,刻度和刻度标签
讲解这些方法前,我会生成一个简单图表,并绘制随机漫步。
fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)
ax.plot(np.random.randn(1000).cumsum())
plt.show()
输出图像如下:
要改变在数据范围内所设定的刻度,我们可以调用set_xticks
ticks = ax.set_xticks([0, 250, 500, 750, 1000])
默认情况下,这些刻度也是有标签的,这里我们可以使用set_xtickslabels为标签赋值:
labels = ax.set_xticslabels(['one', 'two', 'three', 'four', 'five'], rotation=30, fontsize='small')
其中rotation
参数是将标签旋转的角度,fontsize
是标签的字体大小。
最后为x轴定义名称和子图定义标题
![在这里插入图片描述](https://img-blog.csdnimg.cn/6fc9f26e9326476c9b48e2ab11d1fce8.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBASnVuZV9QeXQ=,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
整体代码如下:
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)
ax.plot(np.random.randn(1000).cumsum())
ticks = ax.set_xticks([0, 250, 500, 750, 1000])
labels = ax.set_xticklabels(['one', 'two', 'three', 'four', 'five'], rotation=30, fontsize='small')
plt.show()
输出图片如下:
y轴的方法也是相同的过程,只需把x替换成y即可。轴的类型只有一种set方法。
设置绘图属性时,为了方便可看,可以批量设置。如下:
props = {
'title': 'My first matplotlib plot',
'xlabel': 'Stages'
'ylabel': 'Sum'
}
ax.set(**props)