IT科技类资讯

关于Python可视化Dash工具—散点地图、热力地图、线形地图

时间:2010-12-5 17:23:32  作者:IT科技类资讯   来源:数据库  查看:  评论:0
内容摘要:好不容易实现了choropleth_mapbox地图,也顺道把散点地图、热力地图、线形地图处理掉吧,做到有始有终,再迈向新的领域;从微信公众号里拿到了按分省统计的用户数据,又拿到了各地市数据,通过这两

好不容易实现了choropleth_mapbox地图,关于h工也顺道把散点地图、可视热力地图、具散线形地图处理掉吧,点地做到有始有终,图热图线图再迈向新的力地领域;从微信公众号里拿到了按分省统计的用户数据,又拿到了各地市数据,形地通过这两种数据分别实现choropleth_mapbox、关于h工scatter_mapbox、可视density_mapbox,具散至于line_mapbox构造数据过于麻烦,点地直接拷贝了官网上的图热图线图案例。

基于分省统计的力地用户数据,通过choropleth_mapbox进行行政区域的形地数据展示。网站模板

import json import pandas as pd import plotly.express as px # 中国地图 with open(china_geo.json) as response:     counties = json.load(response) df = pd.read_csv("gongzhonghaopro.csv",关于h工encoding="utf-8",                    dtype={ "areacode": str}) fig = px.choropleth_mapbox(df, geojson=counties, featureidkey="properties.adcode",locations=areacode,  color=total,                            #color_continuous_scale="Viridis",                            range_color=(0, 320),                            color_continuous_scale=Reds,                            zoom=3, center={ "lat": 37.4189, "lon": 116.4219},                            mapbox_style=carto-positron) fig.update_layout(margin={ "r": 0, "t": 0, "l": 0, "b": 0}) fig.show() 

基于分地市统计的用户数据,通过scatter_mapbox进行各城市的数据展示。这里面不同的地方是直接采用mapbox的地图,而且申请了一个tokenkey,此外数据的构成方面,需要附上各区域的经度、维度、展示数据等信息。

all_data = pd.read_csv("gongzhonghao.csv",encoding="utf-8") token = pk.eyJ1Ijoiam9obndhbmcyMDIxIiwiYSI6ImNrbWNheTJ1NzA4cWQyb21uZHYycTgzMGQifQ.Tyk26CpuPLPi3bpw05yM_A fig = px.scatter_mapbox(all_data, lat="langitude", lon="latitude", hover_name="city", hover_data=["city", "total"],                         color="total",                         size="total",                         #color_continuous_scale=px.colors.sequential.matter,                         size_max=30,                         color_continuous_scale="Reds",                         zoom=5, height=1000) fig.update_layout(mapbox = { accesstoken: token, #需要到官网注册一个token                             center: { lon: 106.573, lat: 30.66342},  #指定的地图中心                             zoom: 3,                             style: basic, #显示的地图类型,服务器租用有遥感地图,街道地图等类型                            },                   margin = { l: 0, r: 0, t: 0, b: 0}) fig.show() 

基于分地市统计的用户数据,通过density_mapbox进行各城市的数据展示。热力图相对来说呈现效果要好于scatter_mapbox,不过这里面关于range_color的设置一直没想明白该如何正确处理。

all_data = pd.read_csv("gongzhonghao.csv",encoding="utf-8") print(all_data) fig = px.density_mapbox(all_data, lat=langitude, lon=latitude, z=total, radius=20,                         color_continuous_scale=px.colors.diverging.RdYlGn[::-1],                         center={ "lat": 37.4189, "lon": 116.4219}, zoom=3,                         range_color =(0,15),                         mapbox_style="stamen-terrain") fig.show() 

基于官方案例的line_geo地图展示。

下一步该探索一下dash_core_components 、dash_html_components 、idash_bootstrap_components组件了,最终的目标是实现可视化大屏,还有很长的路要走。高防服务器

copyright © 2025 powered by 益强资讯全景  滇ICP备2023006006号-31sitemap