我正在进行可视化项目,我使用imdb API来阐明一些不同的方面。 我想在大多数电影制作的底图上显示。 我已经创建了一个最受欢迎的国家/地区的列表,现在我想将它添加到我的底图中,因此通常一个国家/地区使用它的红色就越多。 (使用气压计 - 从浅黄色到深红色)。
我的问题是,如何在底图中实现我的列表? 我的清单如下:
[304, 60, 18, 0, 3, 8, 6, 14, 14, 2, 6, 2, 2, 3, 3, 2, 0, 2, 13, 3, 3, 5, 0, 2, 1, 1, 12]
现在我们已经使用代码
创建了一个标准底图更新
好吧,到目前为止,我设法创建了一个我也需要的颜色栏。但我仍然不知道如何为国家着色并使用我的列表与feqrency国家。
例如,304代表美国:)
代码:
from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt
import numpy as np
m = Basemap(projection='mill',llcrnrlat=-90,urcrnrlat=90,\
llcrnrlon=-160,urcrnrlon=160,resolution='c')
m.drawcoastlines()
m.drawcountries(color='black')
m.drawmapboundary()
#Colorbar
# The number of divisions of the cmap we have
k = 400
A = np.random.random((10,10))*k
c = cmap_discretize('autumn', 3)
# First show without
plt.imshow(A,interpolation='nearest',cmap=c)
plt.colorbar()
plt.title('Imdb Top250 feq countries')
plt.show()
答案 0 :(得分:0)
你需要使用色彩映射。在制作绘图时,使用cmap
参数并选择合适的色彩映射表。您可以在此处查看示例 - http://matplotlib.org/basemap/users/examples.html