我对此有一个后续问题question https://stackoverflow.com/questions/1401102/python-with-matplotlib-drawing-multiple-figures-in-parallel/1401686#1401686.
是否可以通过在图形的不同部分使用多个 python 脚本来简化图形生成?
例如,如果我有以下功能:
功能:绘制某事物的直方图
功能:画一个方框,里面有文字
功能:绘制某物 C 的图
功能:绘制某物 D 的图
如何在不同的脚本中重用上述函数?例如,如果我想创建一个带有直方图的图形,其中包含 C 的绘图,我会以某种方式从我的脚本中调用 FunctionA 和 FunctionC。或者,如果我想要一个包含两个图的图形,我会调用 FunctionC 和 FunctionD。
我不确定我是否清楚地解释了自己,但问这个问题的另一种方式是:如何将图形对象传递给函数,然后让该函数向传递的图形对象绘制一些内容,然后将其返回在主脚本中添加其他内容,例如标题之类的?
在这里你想使用艺术家对象 http://matplotlib.sourceforge.net/users/artists.html,并根据需要将它们传递给函数:
import numpy as np
import matplotlib.pyplot as plt
def myhist(ax, color):
ax.hist(np.log(np.arange(1, 10, .1)), facecolor=color)
def say_something(ax, words):
t = ax.text(.2, 20., words)
make_a_dim_yellow_bbox(t)
def make_a_dim_yellow_bbox(txt):
txt.set_bbox(dict(facecolor='yellow', alpha=.2))
fig = plt.figure()
ax0 = fig.add_subplot(1,2,1)
ax1 = fig.add_subplot(1,2,2)
myhist(ax0, 'blue')
myhist(ax1, 'green')
say_something(ax0, 'this is the blue plot')
say_something(ax1, 'this is the green plot')
plt.show()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)