利用Python绘制酷炫的3D地图

目录

  • 1.重庆市3D地图
  • 2.中国3D地图一
  • 3.中国3D地图二
  • 4.中国3D地图三
  • 5.地球展示
之前我们介绍了很多Python地图可视化的内容,本次主要介绍如何Python绘制3D地图,还是比较神奇的,下面让我们一起一饱眼福吧!

1.重庆市3D地图
from pyecharts import options as optsfrom pyecharts.charts import Map3Dfrom pyecharts.globals import ChartType# 经纬度example_data = https://www.it610.com/article/[[[119.107078, 36.70925, 1000], [116.587245, 35.415393, 1000]],[[117.000923, 36.675807], [120.355173, 36.082982]],[[118.047648, 36.814939], [118.66471, 37.434564]],[[121.391382, 37.539297], [119.107078, 36.70925]],[[116.587245, 35.415393], [122.116394, 37.509691]],[[119.461208, 35.428588], [118.326443, 35.065282]],[[116.307428, 37.453968], [115.469381, 35.246531]],]c = (Map3D(init_opts=opts.InitOpts(width="1400px", height="700px")).add_schema(maptype="重庆",itemstyle_opts=opts.ItemStyleOpts(color="rgb(5,101,123)",opacity=1,border_width=0.8,border_color="rgb(62,215,213)",),light_opts=opts.Map3DLightOpts(main_color="#fff",main_intensity=1.2,is_main_shadow=False,main_alpha=55,main_beta=10,ambient_intensity=0.3,),view_control_opts=opts.Map3DViewControlOpts(center=[-10, 0, 10]),post_effect_opts=opts.Map3DPostEffectOpts(is_enable=False),).add(series_name="",data_pair=example_data,type_=ChartType.LINES3D,effect=opts.Lines3DEffectOpts(is_show=True,period=4,trail_width=3,trail_length=0.5,trail_color="#f00",trail_opacity=1,),linestyle_opts=opts.LineStyleOpts(is_show=False, color="#fff", opacity=0),).set_global_opts(title_opts=opts.TitleOpts(title="Map3D")).render("区县3D地图.html"))

利用Python绘制酷炫的3D地图
文章图片


2.中国3D地图一 数组里面分别代表:经纬度,数值。
from pyecharts import options as optsfrom pyecharts.charts import Map3Dfrom pyecharts.globals import ChartTypefrom pyecharts.commons.utils import JsCodeexample_data = https://www.it610.com/article/[("黑龙江", [127.9688, 45.368, 100]),("内蒙古", [110.3467, 41.4899, 100]),("吉林", [125.8154, 44.2584, 100]),("辽宁", [123.1238, 42.1216, 100]),("河北", [114.4995, 38.1006, 100]),("天津", [117.4219, 39.4189, 100]),("山西", [112.3352, 37.9413, 100]),("陕西", [109.1162, 34.2004, 100]),("甘肃", [103.5901, 36.3043, 100]),("宁夏", [106.3586, 38.1775, 100]),("青海", [101.4038, 36.8207, 100]),("新疆", [87.9236, 43.5883, 100]),("西藏", [91.11, 29.97, 100]),("四川", [103.9526, 30.7617, 100]),("重庆", [108.384366, 30.439702, 100]),("山东", [117.1582, 36.8701, 100]),("河南", [113.4668, 34.6234, 100]),("江苏", [118.8062, 31.9208, 100]),("安徽", [117.29, 32.0581, 100]),("湖北", [114.3896, 30.6628, 100]),("浙江", [119.5313, 29.8773, 100]),("福建", [119.4543, 25.9222, 100]),("江西", [116.0046, 28.6633, 100]),("湖南", [113.0823, 28.2568, 100]),("贵州", [106.6992, 26.7682, 100]),("广西", [108.479, 23.1152, 100]),("海南", [110.3893, 19.8516, 100]),("上海", [121.4648, 31.2891, 100]),]c = (Map3D(init_opts=opts.InitOpts(width="1400px", height="700px")).add_schema(itemstyle_opts=opts.ItemStyleOpts(color="rgb(5,101,123)",opacity=1,border_width=0.8,border_color="rgb(62,215,213)",),map3d_label=opts.Map3DLabelOpts(is_show=False,formatter=JsCode("function(data){return data.name + " " + data.value[2]; }"),),emphasis_label_opts=opts.LabelOpts(is_show=False,color="#fff",font_size=10,background_color="rgba(0,23,11,0)",),light_opts=opts.Map3DLightOpts(main_color="#fff",main_intensity=1.2,main_shadow_quality="high",is_main_shadow=False,main_beta=10,ambient_intensity=0.3,),).add(series_name="Scatter3D",data_pair=example_data,type_=ChartType.SCATTER3D,bar_size=1,shading="lambert",label_opts=opts.LabelOpts(is_show=False,formatter=JsCode("function(data){return data.name + ' ' + data.value[2]; }"),),).set_global_opts(title_opts=opts.TitleOpts(title="Map3D")).render("中国3D地图.html"))

【利用Python绘制酷炫的3D地图】利用Python绘制酷炫的3D地图
文章图片


3.中国3D地图二 如果说前面的那个你看起来不太舒服,那么这个绝对适合做数据可视化展示哟!
from pyecharts import options as optsfrom pyecharts.charts import Map3Dfrom pyecharts.globals import ChartTypefrom pyecharts.commons.utils import JsCodeexample_data = https://www.it610.com/article/[("黑龙江", [127.9688, 45.368, 100]),("内蒙古", [110.3467, 41.4899, 300]),("吉林", [125.8154, 44.2584, 300]),("辽宁", [123.1238, 42.1216, 300]),("河北", [114.4995, 38.1006, 300]),("天津", [117.4219, 39.4189, 300]),("山西", [112.3352, 37.9413, 300]),("陕西", [109.1162, 34.2004, 300]),("甘肃", [103.5901, 36.3043, 300]),("宁夏", [106.3586, 38.1775, 300]),("青海", [101.4038, 36.8207, 300]),("新疆", [87.9236, 43.5883, 300]),("西藏", [91.11, 29.97, 300]),("四川", [103.9526, 30.7617, 300]),("重庆", [108.384366, 30.439702, 300]),("山东", [117.1582, 36.8701, 300]),("河南", [113.4668, 34.6234, 300]),("江苏", [118.8062, 31.9208, 300]),("安徽", [117.29, 32.0581, 300]),("湖北", [114.3896, 30.6628, 300]),("浙江", [119.5313, 29.8773, 300]),("福建", [119.4543, 25.9222, 300]),("江西", [116.0046, 28.6633, 300]),("湖南", [113.0823, 28.2568, 300]),("贵州", [106.6992, 26.7682, 300]),("广西", [108.479, 23.1152, 300]),("海南", [110.3893, 19.8516, 300]),("上海", [121.4648, 31.2891, 1300]),]c = (Map3D(init_opts=opts.InitOpts(width="1400px", height="700px")).add_schema(itemstyle_opts=opts.ItemStyleOpts(color="rgb(5,101,123)",opacity=1,border_width=0.8,border_color="rgb(62,215,213)",),map3d_label=opts.Map3DLabelOpts(is_show=False,formatter=JsCode("function(data){return data.name + " " + data.value[2]; }"),),emphasis_label_opts=opts.LabelOpts(is_show=False,color="#fff",font_size=10,background_color="rgba(0,23,11,0)",),light_opts=opts.Map3DLightOpts(main_color="#fff",main_intensity=1.2,main_shadow_quality="high",is_main_shadow=False,main_beta=10,ambient_intensity=0.3,),).add(series_name="数据",data_pair=example_data,type_=ChartType.BAR3D,bar_size=1,shading="lambert",label_opts=opts.LabelOpts(is_show=False,formatter=JsCode("function(data){return data.name + ' ' + data.value[2]; }"),),).set_global_opts(title_opts=opts.TitleOpts(title="城市数据")).render("带有数据展示地图.html"))

利用Python绘制酷炫的3D地图
文章图片

看完直呼这个模板,适合做城市之间的数据对,同时也展示了经纬度。

4.中国3D地图三
from pyecharts import options as optsfrom pyecharts.charts import Map3Dfrom pyecharts.globals import ChartTypec = (Map3D(init_opts=opts.InitOpts(width="1400px", height="700px")).add_schema(itemstyle_opts=opts.ItemStyleOpts(color="rgb(5,101,123)",opacity=1,border_width=0.8,border_color="rgb(62,215,213)",),map3d_label=opts.Map3DLabelOpts(is_show=True,text_style=opts.TextStyleOpts(color="#fff", font_size=16, background_color="rgba(0,0,0,0)"),),emphasis_label_opts=opts.LabelOpts(is_show=True),light_opts=opts.Map3DLightOpts(main_color="#fff",main_intensity=1.2,is_main_shadow=False,main_alpha=55,main_beta=10,ambient_intensity=0.3,),).add(series_name="", data_pair="", maptype=ChartType.MAP3D).set_global_opts(title_opts=opts.TitleOpts(title="全国行政区划地图-Base"),visualmap_opts=opts.VisualMapOpts(is_show=False),tooltip_opts=opts.TooltipOpts(is_show=True),).render("全国标签地图.html"))

利用Python绘制酷炫的3D地图
文章图片


5.地球展示
import pyecharts.options as optsfrom pyecharts.charts import MapGlobefrom pyecharts.faker import POPULATIONdata = https://www.it610.com/article/[x for _, x in POPULATION[1:]]low, high = min(data), max(data)c = (MapGlobe(init_opts=opts.InitOpts(width="1400px", height="700px")).add_schema().add(maptype="world",series_name="World Population",data_pair=POPULATION[1:],is_map_symbol_show=False,label_opts=opts.LabelOpts(is_show=False),).set_global_opts(visualmap_opts=opts.VisualMapOpts(min_=low,max_=high,range_text=["max", "min"],is_calculable=True,range_color=["lightskyblue", "yellow", "orangered"],)).render("地球.html"))

利用Python绘制酷炫的3D地图
文章图片

其实pyecharts还可以做百度地图,可以缩放定位到每一个区域,但是其实我们在日常生活中可能用不上,如果要用可以去百度地图展示效果!
以上就是利用Python绘制酷炫的3D地图的详细内容,更多关于Python 3D地图的资料请关注脚本之家其它相关文章!

    推荐阅读