如何使用matplotlib
创建许多不同的图表对象,然后能够分别控制每个图表对象(不影响其他图表对象) )?
理想情况下,我希望得到以下内容:
#创建图表处理程序对象
chartHandler = ChartHandler()
#绘制图表的某些值#0
chartHandler [0] .plot(范围(0,100))
#绘制图表的一些值#5
chartHandler [5] .plot(范围(500,700))
答案 0 :(得分:2)
除非您在谈论我尚未在matplotlib
中处理过的事情,否则我认为您所寻找的是figure.add_subplot()
。您应该能够捕获每个figure.add_subplot()
的回报并从那时开始单独操作,有点像这样:
import matplotlib.pyplot as plt
#Create an 11x5 figure
fig = plt.figure(figsize=(11,5))
#Create subplots[0]
subplts = []
subplt = fig.add_subplot(121)
subplts.append(subplt)
#Create subplots[1:20]
for xind in range(4,8):
for yind in range(0,5):
subplt = fig.add_subplot(5,8,(yind*8+xind))
subplts.append(subplt)
plt.show()
应该注意的是,上述脚本存在一些问题。主要是,子图略有重叠。这可以使用add_subplot
的position关键字和一些简单的数学来解决。
在任何情况下,您现在都可以通过在subplots
中引用其索引来修改每个子图。添加绘图,修改范围等应该非常简单。