注释matplotlib.basemap图的colorbar

时间:2017-07-27 04:28:04

标签: python matplotlib matplotlib-basemap

enter image description here以下代码将绘制我希望看到的内容,但我想知道如何编辑颜色条以使其具有标题?

fig = plt.figure()
ax = fig.add_subplot(1,1,1)
x = []
y = []
z = []
with open('TEMP.txt', 'r') as csvfile:
    plots = csv.reader(csvfile, delimiter="\t")
    for row in plots:
        x.append(float(row[0]))
        y.append(float(row[1]))
        z.append(float(row[2]))
m = Basemap(projection='stere',lat_ts = -25, lat_0 = -25.27 , lon_0 = 133.77, resolution='l',width=14000000, height=10000000)

m.drawcoastlines()
m.drawparallels(np.arange(-80, 80, 20))
m.drawmeridians(np.arange(-180, 181, 20))
m.fillcontinents(color='coral')
lats = x
lons = y
time = z
x, y = m(lons,lats)
sc = m.scatter(x,y,60,z,cmap='jet',marker='o')
plt.colorbar(sc)
plt.show()

1 个答案:

答案 0 :(得分:1)

有两种不同的方法可以做到这一点。这首先是@umutto在使用set_label的评论中所建议的。第二种是使用ax.set_title,但标签的默认位置存在一些差异。

plt.imshow(np.random.randn(25).reshape(5,5))

cb = plt.colorbar() 

cb.set_label("Test 1", rotation=270)
cb.ax.set_title("Test 2")

plt.show()  

这产生了下图:

enter image description here