目录
1.在图上加入参考线
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0,100)
y = x*2
plt.plot(x, y)
plt.axvline(20,c='r',ls='dashed')
plt.axvline(40,c='r',ls='dashed')
plt.axvline(60,c='r',ls='dashed')
plt.show()
2.x轴刻度重叠怎么办?
有的时候画图会出现x轴的刻度很密集,使得x_label都重叠在一起,如下图。
这时候怎么才能让x轴坐标的刻度更加清晰呢?
——解决方案:将xlabel旋转一定角度!
import matplotlib.pyplot as plt
import numpy as np
data = [30,60,20,100]
plt.bar(range(len(data)), data)
plt.xticks([0,1,2,3],['Alabama','Alaska','New Hampshire','Rhode Island'],rotation=30)
plt.show()
如下图
3.如何让多个子图共用1个colorbar?
当你画多张“热图”时,它们的取值范围是相同的,此时我们希望只用 1个colorbar来表示它。那么怎么做呢?如下
from matplotlib import pyplot as plt
import numpy as np
fea_num_list = [65,150,200,350]
x1,x2,x3,x4 = [1]*4,[2]*4,[3]*4,[4]*4
X_left = np.array([x1,x2,x3,x4])
X_right = np.array([x2,x1,x4,x3])
fig = plt.figure(figsize=(5,5))
ax1 = fig.add_subplot(121)
im1 = ax1.imshow(X_left.reshape([4,4]), cmap=plt.get_cmap('hot'))
ax2 = fig.add_subplot(122)
im2 = ax2.imshow(X_right.reshape([4,4]), cmap=plt.get_cmap('hot'))
position=fig.add_axes([0.12, 0.2, 0.8, 0.03])#位置[左,下,右,上]
plt.colorbar(im2, cax=position,orientation='horizontal',shrink=0.5)
plt.show()
其中colorbar的位置通过fig.add_axes来调节。