【发布时间】:2014-02-28 21:37:46
【问题描述】:
我正在尝试在绘图的右侧插入一个 .png 图像,并遵循此处提到的代码: Combine picture and plot with Python Matplotlib
这是我尝试过的:
import numpy as np
from matplotlib.colors import LinearSegmentedColormap
import matplotlib.pyplot as plt
import matplotlib as mpl
import matplotlib.cbook as cbook
from matplotlib._png import read_png
from matplotlib.offsetbox import OffsetImage
cmap = mpl.cm.hot
norm = mpl.colors.Normalize(vmin=-1 * outlier, vmax=outlier)
cmap.set_over('green')
cmap.set_under('green')
cmap.set_bad('green')
plt.xlim(0,35)
plt.ylim(0,35)
fig, ax = plt.subplots()
ax.set_aspect('equal')
cb_ax=fig.add_axes([0.85, 0.1, 0.03, 0.8])
img = ax.imshow(np.ma.masked_values(data, outlier), cmap=cmap, norm=norm, interpolation='none',vmax=outlier)
cb = mpl.colorbar.ColorbarBase(cb_ax, cmap=cmap, norm=norm, extend='both')
##axim = plt.subplot2grid(shape, loc, rowspan=1)
## phlo tree
image_file = cbook.get_sample_data('mytree.png',asfileobj=False)
image = plt.imread(image_file)
phyl_ax=fig.add_axes([0.10,0.1, 0.03, 0.8])
phyl_ax.imshow(image,interpolation='nearest')
热图将位于左侧,树的图像将插入右侧。有了上面的代码,我就得到了……
右侧添加了一些东西,但显然它不是应该的样子。 起初我以为我将 phyl_ax 的尺寸设置得太小,但是当我尝试增加它时,甚至之前的“东西”也没有被添加。
有人能指出我哪里出错了吗?
【问题讨论】:
标签: python image matplotlib heatmap