I have a follow up question to this question.
Is it possible to streamline the figure generation by having multiple python scripts that work on different parts of the figure?
For example, if I have the following functions:
FunctionA: Draw a histogram of something
FunctionB: Draw a box with a text in it
FunctionC: Draw a plot of something C
FunctionD: Draw a plot of something D
Here you want to use the Artist objects, and pass them as needed to the functions:
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()