pyecharts新功能体验 | pyecharts-Map3D实现新冠肺炎疫情全国数据立体可视化

pyecharts官方在2月28日发布了1.7的全新版本,最重要的一个是完善了Map3D:
具体请看:http://pyecharts.org/#/zh-cn/3d_charts?id=map3d-三维地图
在这里插入图片描述
觉得这个挺好玩的,正好今天在我之前的文章pyecharts实现新冠肺炎疫情可视化并搭建BI数据大屏(Plus)有兄弟评论说代码不能用了…害,当然不能用了,(TX页面又改了呗)我中间都改过一次了…

于是趁着这个周五晚上,我想继续把我的那个项目改改,然后去看了看页面…BUT,不看不知道,一看吓一跳!
在这里插入图片描述
看这里,以往的数据都消失了!!!!!!!!这…
在这里插入图片描述
以前的每天的数据都消失了,这就没办法了啊,这些数据是我的BI数据大屏的灵魂啊,没了也没办法了,没有这些数据,搭建出来的BI也将会毫无意义。

所以我换了个方向,因为之前的都是平面(2维)的,既然官方出三维的了,那我就换三维的可视化现有的数据吧…


老规矩,先上成品,后上代码:
在这里插入图片描述
动态图不是很清晰,这里放个静态的:
在这里插入图片描述
(PS:这里我可视化的是累计确诊人数)

Demo:

import json
import requests
import pandas as pd
from pyecharts.charts import *
from pyecharts import options as opts
from pyecharts.commons.utils import JsCode
from pyecharts.globals import ThemeType, ChartType

reponse = requests.get('https://view.inews.qq.com/g2/getOnsInfo?name=disease_h5').json()
data = json.loads(reponse['data'])
province = []
confirm = []
for item in data['areaTree'][0]['children']:
    province.append(item['name'])
    confirm.append(item['total']['confirm'])
china_data = pd.DataFrame({"province": province, "confirm": confirm})

dicts_all = {'黑龙江': [127.9688, 45.368], '上海': [121.4648, 31.2891],
             '内蒙古': [110.3467, 41.4899], '吉林': [125.8154, 44.2584],
             '辽宁': [123.1238, 42.1216], '河北': [114.4995, 38.1006],
             '天津': [117.4219, 39.4189], '山西': [112.3352, 37.9413],
             '陕西': [109.1162, 34.2004], '甘肃': [103.5901, 36.3043],
             '宁夏': [106.3586, 38.1775], '青海': [101.4038, 36.8207],
             '新疆': [87.9236, 43.5883], '西藏': [91.11, 29.97],
             '四川': [103.9526, 30.7617], '重庆': [108.384366, 30.439702],
             '山东': [117.1582, 36.8701], '河南': [113.4668, 34.6234],
             '江苏': [118.8062, 31.9208], '安徽': [117.29, 32.0581],
             '湖北': [114.3896, 30.6628], '浙江': [119.5313, 29.8773],
             '福建': [119.4543, 25.9222], '江西': [116.0046, 28.6633],
             '湖南': [113.0823, 28.2568], '贵州': [106.6992, 26.7682],
             '广西': [108.479, 23.1152], '海南': [110.3893, 19.8516],
             '广东': [113.28064, 23.125177], '北京': [116.405289, 39.904987],
             '云南': [102.71225, 25.040609], '香港': [114.165460, 22.275340],
             '澳门': [113.549130, 22.198750], '台湾': [121.5200760, 25.0307240]}
for item in [list(z) for z in zip(china_data['province'], china_data['confirm'])]:
    dicts_all[item[0]].append(item[1])

(Map3D()
 .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="bar3D",
    data_pair=list(zip(list(dicts_all.keys()), list(dicts_all.values()))),
    type_=ChartType.BAR3D,
    bar_size=1,
    shading="lambert",
    label_opts=opts.LabelOpts(
        is_show=True,
        formatter=JsCode(
            "function(data){return data.name + ' ' + data.value[2];}")))
 .set_global_opts(title_opts=opts.TitleOpts(title="COVID-19全国疫情分布图"))).render("render.html")


其实吧,我觉得以前数据都被清空,一个是因为时间太长了,都100天了,一直在这里挂着也没啥意义…,还有最重要的一点,就是在全国人民的努力下,疫情得到了控制,因为最近每天新增的人数与多半个月之前那会完全没法比啊,连零头都不到…还是要再次 感谢奋战在前线的医护人员,包括警察、滴滴司机、外卖小哥、社会服务人员、志愿者、社区工作人员等等…还有在后方或捐钱或捐物的社会各界爱心人士,包括每一位宅在家“做贡献”的大家❤;每个人都在为这场“战疫”奋斗着,我们也相信,一切都会好起来,像以前一样…



最新:基于Django+Pyecharts的COVID19新冠肺炎疫情监控面板

基于Django+Pyecharts的COVID19新冠肺炎疫情监控面板

代码地址:https://github.com/sleepyyoung/COVID19

欢迎Star~

  • 21
    点赞
  • 73
    收藏
    觉得还不错? 一键收藏
  • 17
    评论
pyecharts是一个基于Python的数据库,它提供了丰富的图表类型供用户使用。其中,map3d是pyecharts库中的一个模块,用于绘制3D地图。 map3d模块可以让用户在地球的表面上绘制各种数据,具有很高的可效果和沉浸感。通过map3d模块,用户可以创建具有3D效果的地图,并将地理信息与相应的数据进行关联。用户可以根据自己的需求,自定义各个区域的颜色、高度、数据标签等属性,以展示地理信息和数据之间的关系。 使用pyecharts的map3d模块,用户可以实现以下功能: 1. 绘制3D地图:通过使用地图样式和数据源,用户可以在3D地球上绘制出各个地区的形状和位置。 2. 数据关联:用户可以将数据与地理信息对应起来,通过不同的颜色、高度等觉效果展示数据的差异和分布情况。 3. 数据标签:用户可以通过在绘制的图表上添加数据标签,让观众更清晰地了解每个地区所代表的数据。 4. 自定义样式:用户可以根据需求,自定义地图的颜色、高度、光照等属性,以提升可效果。 5. 交互功能:用户可以在绘制的3D地图上进行交互,例如旋转、缩放等,以更全面地观察地理信息和数据之间的关系。 总之,pyecharts的map3d模块提供了一种直观、具有沉浸感的方式来展示地理信息和数据的关系,使用户能够更好地理解和分析数据。同时,pyecharts库还提供了丰富的其他数据类型,供用户选择,以满足不同需求的可展示。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值