python - 传单 jupyter 绘图颜色密度热图
问题描述
我正在研究 pandas csv 数据框,并在 jupyter 中使用ipyleaflet
你可以绘制到地图来了解。
到目前为止,我的代码看起来像这样
from ipyleaflet import Map, Marker, MarkerCluster
longitudes = df['Longitude'].values.tolist()
latitudes = df['Latitude'].values.tolist()
markers = []
for lon,lat in zip(longitudes, latitudes):
markers.append(Marker(location=(lat, lon)))
m = Map(center=(latitudes[0], longitudes[0]), zoom=10)
marker_cluster = MarkerCluster(
markers=markers
)
m.add_layer(marker_cluster);
m
这很好,但后来我看到了这个
我也有同样的领域Economic Need Index
,所以我也想做同样的事情,也很好奇我如何也能切换到CartoDB
不太繁忙的地图。
解决方案
从ipyleaflet 的最新版本开始,现在可以创建 HeatMap:
from ipyleaflet import Map, Heatmap
from random import uniform
m = Map(center=[0, 0], zoom=2)
# Create a random heatmap
locations = [
[uniform(-80, 80), uniform(-180, 180), uniform(0, 1000)] # lat, lng, intensity
for i in range(1000)
]
heat = Heatmap(locations=locations, radius=20, blur=10)
m.add_layer(heat)
# Change some attributes of the heatmap
heat.radius = 30
heat.blur = 50
heat.max = 0.5
heat.gradient = {0.4: 'red', 0.6: 'yellow', 0.7: 'lime', 0.8: 'cyan', 1.0: 'blue'}
m
此外,如果您想切换到“不太繁忙的地图”,您可以在创建底图时更改它:
from ipyleaflet import Map, basemaps
m = Map(center=(52, 10), zoom=8, basemap=basemaps.CartoDB.DarkMatter)
m
您还可以根据瓷砖的 url 创建一个 TileLayer,您可以在文档中找到示例
推荐阅读
- java - Java初学者:类文件
- ms-access-2016 - MS-Access2016 数据库不显示 SQL 视图
- c# - 如何正确进行急切加载?
- github - 每个分支的 github 易受攻击的依赖项
- python - 需要帮助并行化此代码
- google-bigquery - 数据工作室自动从报告中过滤掉空维度?
- postgresql - Airflow 1.9 - 任务卡在队列中
- phantomjs - 在 GitLab CI 中以无头模式运行时出现 PhantomJS 超时问题
- c++ - 是否可以在可变参数模板函数中扩展非可变参数?
- javascript - 如何创建一个在加载特定网页后自动启动的计时器