I have a figure containing three subplots. The first subplot is an image (imshow), while the other two are distributions (plot).
Here's the code:
# collects data
imgdata = ... # img of shape (800, 1600, 3)
x = ... # one 1600-dimensional vector
y = ... # one 800-dimensional vector
# create the figure
f = plt.figure()
# create subplots
subplot_dim = (1, 3)
p_img = plt.subplot2grid(subplot_dim, (0, 0), aspect="auto")
p_x = plt.subplot2grid(subplot_dim, (0, 1), aspect="auto")
p_y = plt.subplot2grid(subplot_dim, (0, 2), aspect="auto")
p_img.imshow(imgdata, interpolation="None")
p_x.plot(x)
p_y.plot(y)
# save figure
f.set_size_inches(21.0, 12.0)
f.savefig("some/path/image.pdf", dpi=80)
My problem is, that the two subplots p_x, p_y always have a greater height than the image subplot p_img.
Thus, the result always looks like this:
############### ###############
# # # ***** #
# *****# # * * #
############### # *** # # * * #
# # # * # # * * #
# image # # * # #* *#
# # #*** # #* *#
############### ############### ###############
p_img p_x p_y
How can I enforce an equal size (or at least height) of p_img, p_x and p_y?
Aucun commentaire:
Enregistrer un commentaire