Добавление цветовой шкалы на график рассеяния - PullRequest
0 голосов
/ 08 марта 2020

В настоящее время я работаю с некоторыми геопространственными данными и хочу добавить цветную полосу рядом с картой. Я использовал следующий код для наложения базовой карты на график рассеяния. Тем не менее, я не могу получить правильный цвет рядом с ним. Может кто-нибудь найти причину такого поведения?

cm = plt.cm.get_cmap('RdYlBu') # define a colormap

fig,ax = plt.subplots(figsize=(15, 15))    
city_map = df.plot(alpha=0.2, ax=ax) # plot a city contour
ctx.add_basemap(city_map) # plot a city map

points = gdf_new.plot(c=gdf_new['Score'], cmap=cm, ax=ax) # scatter plot
fig.colorbar(ax.collections[1], ax=ax) # current solution

pandas столбец gdf_new['Score'] содержит значения от 0 до 1, используемые для окрашивания точек.
Если я заменил последнюю строку на ниже, я получу :

для plt.colorbar() - RuntimeError: No mappable was found to use for colorbar creation. First define a mappable such as an image (with imshow) or a contour set (with contourf)

для plt.colorbar(point) - AttributeError: 'AxesSubplot' object has no attribute 'get_array'

Мое текущее решение заключается в добавлении: fig.colorbar(ax.collections[1], ax=ax) - отображает правильное цветная полоса, но с неправильным диапазоном чисел 0-200 вместо 0-1.

Как это исправить?

...