Jupyter 笔记本的 Google 地图
gmaps 是一个插件,可在 IPython 笔记本中包含交互式 Google 地图。
我们来绘制一个 热图 _,显示旧金山的出租车接载情况:
.. 代码:: Python
import gmaps
import gmaps.datasets
gmaps.configure(api_key="AI...") # 你的 Google API 密钥
locations = gmaps.datasets.load_dataset("taxi_rides")
fig = gmaps.figure()
fig.add_layer(gmaps.heatmap_layer(locations))
图
.. image:: docs/source/images/taxi_example.png
我们还可以使用 GeoJSON 绘制氯色图。
.. 代码:: Python
from matplotlib.cm import viridis
从 matplotlib.colors 模块导入 to_hex
import gmaps import gmaps.datasets import gmaps.geojson_geometries gmaps.configure(api_key="AI...") # 你的 Google API 密钥 countries_geojson = gmaps.geojson_geometries.load_geometry('countries') # 加载国家的 GeoJSON rows = gmaps.datasets.load_dataset('gini') # 'rows' 是一个元组列表 country2gini = dict(rows) # 字典, 映射 'country' -> Gini系数 min_gini = min(country2gini.values()) max_gini = max(country2gini.values()) gini_range = 最大 Gini 值 - 最小 Gini 值
def calculate_color(gini): """ 将 GINI 指数转换为颜色 """ # 使 gini 成为介于 0 和 1 之间的数值 normalized_gini = (gini - min_gini) / gini_range
# 反转 gini,以便高不平等性提供深色的颜色
inverse_gini = 1.0 - normalized_gini
# 将 GINI 指数转换为 Matplotlib 颜色
mpl_color = viridis(inverse_gini)
# 将 Matplotlib 颜色转换为有效的 CSS 颜色
gmaps_color = to_hex(mpl_color, keep_alpha=False)
return gmaps_color暂无开放 Issues,或尚未同步最近议题。