前言
子图是指说绘制的图形是有多个图形组成的,通过子图能否进行数据的不同比较。其主要是通过subplot方法
实现的。
其中有规范划分和不规则划分。
subplot(numRows, numCols, plotNum)
numRows:子图总行数
numCols:子图总列数
plotNum:子图编号(从左到右,从上到下从1开始编号)
规范划分
就是子图的大小一致,一个萝卜一个坑。
代码
mport matplotlib.pyplot as plt
import numpy as np
x=np.arange(1,100)
plt.subplot(221)
plt.plot(x,x)
plt.subplot(222)
plt.plot(x,-x)
plt.subplot(223)
plt.plot(x,x*x)
plt.subplot(224)
plt.plot(x,np.log(x))
plt.show()
展示
不规范划分
通过将一个萝卜占两个坑和多个坑来实现。
其中主要通过numRows和numCols来进行不规则划分的,如何更好的理解呢,就是在原有的划分中剩下的部分它可以重新进行行列,其中第3个参数是根据不规则划分原则进行编号得到的编号,其中若有空缺没有划分也应按区域编号。其中有重叠会发生覆盖。
代码一
import numpy as np
import matplotlib.pyplot as plt
x=np.arange(1,100)
plt.subplot(221)
plt.plot(x,x)
plt.subplot(222)
plt.plot(x,-x)
plt.subplot(212)
plt.plot(x,x*2)
plt.show()
展示
代码二
import numpy as np
import matplotlib.pyplot as plt
x=np.arange(1,100)
plt.subplot(221)
plt.plot(x,x)
plt.subplot(223)
plt.plot(x,-x)
plt.subplot(122)
plt.plot(x,x*2)
plt.show()
展示
代码三
import numpy as np
import matplotlib.pyplot as plt
x=np.arange(1,100)
plt.subplot(331)
plt.plot(x,x)
plt.subplot(332)
plt.plot(x,-x)
plt.subplot(313)
plt.plot(x,x*2)
plt.show()
展示
代码四
import numpy as np
import matplotlib.pyplot as plt
x=np.arange(1,100)
plt.subplot(331)
plt.plot(x,x)
plt.subplot(332)
plt.plot(x,-x)
plt.subplot(312)
plt.plot(x,x*2)
plt.show()
展示
后记
其中难点在于不规则划分,同时乐趣也在于不规则划分的挑战,我相信不规则划分可以画出更多更好玩的图形,先就到这里了,不太理解的多看看上面的代码和图形之间的对比就了解了。