我正在尝试制作一个看起来像这样的插图:
但我得到的是:
这是我的程序:
from pylab import *
from matplotlib import colors
# A = [[1,2,3,4,5]]
A = [[0],[1]]
Amap = colors.ListedColormap(['blue','green'])
figure(1)
imshow(A, cmap=Amap, interpolation='nearest')
annotate('AA BB',xy=(0,0), xytext=(.8,0), fontsize=20)
axis('off')
savefig('graph-py.pdf')
show()
我已经尝试了所有方法来获得箭头,但似乎无法实现。有什么想法吗?
最佳答案
我通常会浏览 gallery找到我想做的事的例子。 annotation_demo2看起来与您想要的相似……我想出了这个。看起来你错过了 arrowprops kwarg .
from pylab import *
from matplotlib import colors
# A = [[1,2,3,4,5]]
A = [[0],[1]]
Amap = colors.ListedColormap(['blue','green'])
fig = figure(1)
ax = fig.add_subplot(111, autoscale_on=False)
imshow(A, cmap=Amap, interpolation='nearest')
ax.annotate('AA BB', fontsize=20, xy=(.25, .75),
xycoords='data', xytext=(150, -6),
textcoords='offset points',
arrowprops=dict(arrowstyle="->",
linewidth = 5.,
color = 'red')
)
ax.annotate('CC DD', fontsize=20, xy=(.25, .25),
xycoords='data', xytext=(150, -6),
textcoords='offset points',
arrowprops=dict(width = 5.,
headwidth = 15.,
frac = 0.2,
shrink = 0.05,
linewidth = 2,
color = 'red')
)
axis('off')
savefig('graph-py.pdf')
show()
close()
看起来像这样:
关于python - 你如何用箭头 * 和 * 文本注释 matplotlib imshow map ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19237703/