本篇我们来了解一个新的可视化模块pyecharts,由于爬虫敏感问题,博主对数据已经提取供大家使用,本篇文章仅介绍数据可视化。

一、热力图

案例:绘制2021部分城市的GDP热力图(比如上海,北京,深圳,重庆,长沙的2021年总GDP),data为一个列表,每个城市数据用元祖表示,比如:(‘上海’,43214.85)。

from pyecharts.charts import Geo
from pyecharts import options as opts
from pyecharts.globals import ChartType

data=[('上海',43214.85),('北京',40269.60),('深圳',30664.85),('重庆',27894.02),('长沙',13270.70)]
geo = (Geo()
 .add_schema(maptype="china")
 .add("人口", data,
 type_=ChartType.HEATMAP)
 .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
 .set_global_opts(
 visualmap_opts=opts.VisualMapOpts(),
 legend_opts=opts.LegendOpts(is_show=False),
 title_opts=opts.TitleOpts(title="Geo-全国GDP图"))
 )
 
geo.render_notebook()

运行如下:

二、地理图表

2.1 地理坐标系

案例一:绘制2021部分省份的人口数量在地图中

在这里插入图片描述

2.2 市区地图

案例:标出2021部分省份的人口数量在地图中

from pyecharts.charts import Map

data=[('福建',41540086),('广东',126012510),('河北',74610235),('山西',34915616),('四川',83674866)]
print(data)
geo = (
   Map()
  .add("", data, 'china')
)
geo.render_notebook()

例如:绘制上海市各个区的平均房价交互式地图

from pyecharts.charts import Geo
from pyecharts import options as opts
from pyecharts.globals import ChartType

data=[('上海',43214.85),('北京',40269.60),('深圳',30664.85),('重庆',27894.02),('长沙',13270.70)]
geo = (Geo()
 .add_schema(maptype="china")
 .add("人口", data,
 type_=ChartType.HEATMAP)
 .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
 .set_global_opts(
 visualmap_opts=opts.VisualMapOpts(),
 legend_opts=opts.LegendOpts(is_show=False),
 title_opts=opts.TitleOpts(title="Geo-全国GDP图"))
 )
 
geo.render_notebook()

运行如下:

2.3人口流动图

案例:河南省人口输出到外省的人口量。依次向广东,浙江,江苏,上海,北京传输人口277.36,246.59,219.72,134.3.127.1万人。

from pyecharts import options as opts
from pyecharts.charts import Geo
from pyecharts.globals import ChartType, SymbolType

c = (
    Geo()
    .add_schema(maptype="china")
    .add(
        "",
        [("广东",277.36), ("浙江", 246.59), ("江苏", 219.72), ("上海", 134.3),('北京',127.1)],
        type_=ChartType.EFFECT_SCATTER,
        color="white",
    )
    .add(
        "geo",
        [("河南", "广东"), ("河南", "浙江"), ("河南", "江苏"), ("河南", "上海"),('河南','北京')],
        type_=ChartType.LINES,
        effect_opts=opts.EffectOpts(
            symbol=SymbolType.ARROW, symbol_size=6, color="blue"
        ),
        linestyle_opts=opts.LineStyleOpts(curve=0.2),
    )
    .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
    .set_global_opts(title_opts=opts.TitleOpts(title="河南省主要人口输出"))
)
c.render_notebook()

运行如下:

2.4 3D地图

案例:绘制福建,广东,河北,山西,四川,新疆的2021总人口数量,绘制到3D地图上

from pyecharts import options as opts
from pyecharts.charts import Map3D
from pyecharts.globals import ChartType

data=[('福建',41540086),('广东',126012510),('河北',74610235),('山西',34915616),('四川',83674866),('新疆',2585.23)]

map3d = (
    Map3D()
    .add("部分省人口数量(单位:万)", data_pair=data, maptype='china')
)
map3d.render_notebook()

2.5 3D地球

案例:绘制一个立体的3D地球

from pyecharts.faker import POPULATION
from pyecharts.charts import MapGlobe

globe = (
    MapGlobe()
    .add_schema()
    .add(
        series_name="",
        maptype="world",
        data_pair=POPULATION[1:]
    )
)

globe.render_notebook()

如下:

三、疫情数据可视化

本小节做一个简单的案例,轻松简单的做一个疫情数据显示屏,由于爬虫知识敏感问题,所以这里作者直接把数据拿出来了,数据日期为2022年4月24日数据,数据来源:丁香医生。数据仅供参考,不作任何用途。

from pyecharts.charts import Map
from pyecharts import options as opts

data=[['香港', 328074], ['台湾', 56468], ['上海', 43782], ['吉林', 39903],
      ['浙江', 2984], ['黑龙江', 2851], ['广东', 6981], ['江西', 1184], 
      ['江苏', 2175], ['福建', 3002], ['山东', 2676], ['北京', 1876], 
      ['广西', 1572], ['山西', 413], ['海南', 288], ['青海', 88], 
      ['云南', 2114], ['四川', 1999], ['河南', 2878], ['湖南', 1362], 
      ['陕西', 3276], ['河北', 1993], ['内蒙古', 1706], ['安徽', 1063],
      ['辽宁', 1614], ['湖北', 68398], ['天津', 1800], ['重庆', 694], 
      ['贵州', 179], ['新疆', 999], ['甘肃', 681], ['宁夏', 122], 
      ['澳门', 82], ['西藏', 1]]

print(data)

geo = (
   Map()
  .add("感染人数", data, 'china') # 传入数据,地图选择中国

)
    
geo.render_notebook()

效果如下:

为了让图更加优美,需要对它设置标签,颜色信息,所以添加set_global_opts方法,修改后代码如下:

from pyecharts.charts import Map
from pyecharts import options as opts

data=[['香港', 328074], ['台湾', 56468], ['上海', 43782], ['吉林', 39903],
      ['浙江', 2984], ['黑龙江', 2851], ['广东', 6981], ['江西', 1184], 
      ['江苏', 2175], ['福建', 3002], ['山东', 2676], ['北京', 1876], 
      ['广西', 1572], ['山西', 413], ['海南', 288], ['青海', 88], 
      ['云南', 2114], ['四川', 1999], ['河南', 2878], ['湖南', 1362], 
      ['陕西', 3276], ['河北', 1993], ['内蒙古', 1706], ['安徽', 1063],
      ['辽宁', 1614], ['湖北', 68398], ['天津', 1800], ['重庆', 694], 
      ['贵州', 179], ['新疆', 999], ['甘肃', 681], ['宁夏', 122], 
      ['澳门', 82], ['西藏', 1]]

print(data)

geo = (
   Map()
  .add("感染人数", data, 'china') # 传入数据,地图选择中国
  .set_global_opts(
    title_opts=opts.TitleOpts(title="2022-4-23中国疫情地图"),
    visualmap_opts=opts.VisualMapOpts(max_=10000, is_piecewise=True,
                                    #最大数据范围,分段
                                    # 第一段设置为:猩红
                                      pieces=[
                                          {"max": 99999, "min": 10001, "label": ">10000", "color": "#DC143C"},
                                          {"max": 10000, "min": 1000, "label": "1000-10000", "color": "#8A0808"},
                                          {"max": 999, "min": 500, "label": "500-999", "color": "#B40404"},
                                          {"max": 499, "min": 100, "label": "100-499", "color": "#DF0101"},
                                          {"max": 99, "min": 10, "label": "10-99", "color": "#F78181"},
                                          {"max": 9, "min": 1, "label": "1-9", "color": "#F5A9A9"},
                                          {"max": 0, "min": 0, "label": "0", "color": "#FFFFFF"},
                                      ],
                                     is_calculable=True) 
)
)
    
geo.render_notebook()

运行:

pyecharts是图表是可以制作成网页的,作者在此留下一个思考:是否可以制作实时每天每小时更新的这样网页?当然,这留给感兴趣的同学去探索。因为设计爬虫,前端,数据分析,可视化。本书主要只介绍了数据可视化与数据分析。

四、空气质量数据可视化

案例:绘制身份的降雨量在地图上。(数据来源由作者随机设置,读者可以自行查看相关数据网站设置真实值)

from pyecharts.charts import Map
from pyecharts import options as opts


attr_1= [95, 56, 87, 92, 74, 79, 82,68 , 59, 63, 82]
value_1  = ["福建","河南","浙江","江西","贵州","四川","上海","北京","湖北","广西","河北"]
# print([list(z) for z in zip(attr_1, value_1)])

c = (
    Map()
    .add("空气质量", [list(z) for z in zip(attr_1, value_1)],"china") # 用列表推导式对两个列表合并成对应形式

    .set_global_opts(
        title_opts=opts.TitleOpts(title="降雨量可视化"),
        visualmap_opts=opts.VisualMapOpts(max_=100,is_piecewise=True                              
                                    )
    )
)
# c.render_notebook()
c.render(r"1.html")

运行如下:

本次案例对图形保存为html格式文件,可以使用浏览器打开查看自己的图形。唯一的区别就是最后一行:c.render(r"1.html"),它所代表的含义为对图形保存为1.html文件,也就是网页文件。

五、外卖点分布数据可视化

案例:假设获取到美团与饿了么的部分省份骑手数量,对该数据同时绘制在一张图上。(数据由作者随意设置,仅供参考)

from pyecharts import options as opts


value_1 = [1500, 1300, 20000, 23000, 3500, 3400, 2500]
attr_1 = ["福建","山东","北京","上海","江西","云南","重庆"]
value_2 = [21000, 16520, 24120, 17820, 9542, 4689, 4325, 8950,]
attr_2 = ["北京","广东","上海","浙江","四川","贵州","云南","重庆"]

c = (
    Map()
    .add("饿了么", [list(z) for z in zip(attr_1, value_1)],"china")
    .add("美团", [list(z) for z in zip(attr_2, value_2)],"china")
    .set_global_opts(
        title_opts=opts.TitleOpts(title="美团-饿了么骑手分布"),
        visualmap_opts=opts.VisualMapOpts(max_=25000,is_piecewise=True)
    )
)


# c.render_notebook()
c.render(r"2.html")

效果如下:

六、总结

本篇文章带大家进入了一个新的数据可视化模块,它非常适合制作可视化大屏

以上就是Python pyecharts绘制交互式可视化图表的详细内容,更多关于Python pyecharts可视化图表的资料请关注Devmax其它相关文章!

Python+pyecharts绘制交互式可视化图表的更多相关文章

  1. XCode 3.2 Ruby和Python模板

    在xcode3.2下,我的ObjectiveCPython/Ruby项目仍然可以打开更新和编译,但是你无法创建新项目.鉴于xcode3.2中缺少ruby和python的所有痕迹(即创建项目并添加新的ruby/python文件),是否有一种简单的方法可以再次安装模板?我发现了一些关于将它们复制到某个文件夹的信息,但我似乎无法让它工作,我怀疑文件夹的位置已经改变为3.2.解决方法3.2中的应用程序模板

  2. 如何在Xcode 8中启用Visual Memory Debugger?

    我将项目从以前版本的Xcode迁移到Xcode8.我想要的是使用新的可视化内存调试器.它可用于新项目,但在我导入的项目中完全缺少.为什么是这样?

  3. Swift基本使用-函数和闭包(三)

    声明函数和其他脚本语言有相似的地方,比较明显的地方是声明函数的关键字swift也出现了Python中的组元,可以通过一个组元返回多个值。传递可变参数,函数以数组的形式获取参数swift中函数可以嵌套,被嵌套的函数可以访问外部函数的变量。可以通过函数的潜逃来重构过长或者太复杂的函数。

  4. 10 个Python中Pip的使用技巧分享

    众所周知,pip 可以安装、更新、卸载 Python 的第三方库,非常方便。本文小编为大家总结了Python中Pip的使用技巧,需要的可以参考一下

  5. Swift - 继承UIView实现自定义可视化组件附记分牌样例

    在iOS开发中,如果创建一个自定义的组件通常可以通过继承UIView来实现。下面以一个记分牌组件为例,演示了组件的创建和使用,以及枚举、协议等相关知识的学习。效果图如下:组件代码:scoreView.swift123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051importUIKitenumscoreType{caseCommon//普通分数面板Best//最高分面板}pr

  6. Swift、Go、Julia与R能否挑战 Python 的王者地位

    本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请发送邮件至dio@foxmail.com举报,一经查实,本站将立刻删除。

  7. 红薯因 Swift 重写开源中国失败,貌似欲改用 Python

    本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请发送邮件至dio@foxmail.com举报,一经查实,本站将立刻删除。

  8. 你没看错:Swift可以直接调用Python函数库

    上周Perfect又推出了新一轮服务器端Swift增强函数库:Perfect-Python。对,你没看错,在服务器端Swift其实可以轻松从其他语种的函数库中直接拿来调用,不需要修改任何内容。以如下python脚本为例:Perfect-Python可以用下列方法封装并调用以上函数,您所需要注意的仅仅是其函数名称以及参数。

  9. Swift中的列表解析

    在Swift中完成这个的最简单的方法是什么?我在寻找类似的东西:从Swift2.x开始,有一些与你的Python样式列表解析相当的东西。(在这个意义上,它更像是Python的xrange。如果你想保持集合懒惰一路通过,只是这样说:与Python中的列表解析语法不同,Swift中的这些操作遵循与其他操作相同的语法。

  10. 使用自动布局可视化格式与Swift?

    我一直在试图使用AutolayoutVisualFormatLanguageinSwift,使用NSLayoutConstraint.constraintsWithVisualFormat。这里有一些例子,没有什么有用的代码,但就我可以告诉应该让类型检查器快乐:但是,这会触发编译器错误:“Cannotconverttheexpression’stype‘[AnyObject]!’totype‘St

随机推荐

  1. 10 个Python中Pip的使用技巧分享

    众所周知,pip 可以安装、更新、卸载 Python 的第三方库,非常方便。本文小编为大家总结了Python中Pip的使用技巧,需要的可以参考一下

  2. python数学建模之三大模型与十大常用算法详情

    这篇文章主要介绍了python数学建模之三大模型与十大常用算法详情,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感想取得小伙伴可以参考一下

  3. Python爬取奶茶店数据分析哪家最好喝以及性价比

    这篇文章主要介绍了用Python告诉你奶茶哪家最好喝性价比最高,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧

  4. 使用pyinstaller打包.exe文件的详细教程

    PyInstaller是一个跨平台的Python应用打包工具,能够把 Python 脚本及其所在的 Python 解释器打包成可执行文件,下面这篇文章主要给大家介绍了关于使用pyinstaller打包.exe文件的相关资料,需要的朋友可以参考下

  5. 基于Python实现射击小游戏的制作

    这篇文章主要介绍了如何利用Python制作一个自己专属的第一人称射击小游戏,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起动手试一试

  6. Python list append方法之给列表追加元素

    这篇文章主要介绍了Python list append方法如何给列表追加元素,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  7. Pytest+Request+Allure+Jenkins实现接口自动化

    这篇文章介绍了Pytest+Request+Allure+Jenkins实现接口自动化的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  8. 利用python实现简单的情感分析实例教程

    商品评论挖掘、电影推荐、股市预测……情感分析大有用武之地,下面这篇文章主要给大家介绍了关于利用python实现简单的情感分析的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下

  9. 利用Python上传日志并监控告警的方法详解

    这篇文章将详细为大家介绍如何通过阿里云日志服务搭建一套通过Python上传日志、配置日志告警的监控服务,感兴趣的小伙伴可以了解一下

  10. Pycharm中运行程序在Python console中执行,不是直接Run问题

    这篇文章主要介绍了Pycharm中运行程序在Python console中执行,不是直接Run问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

返回
顶部