乐趣区

关于python:python可视化来分析全国疫情

很长一段时间在 python 下出图都是应用 matplotlib,其益处就是利用比拟宽泛,文档很容易找,不过出的图微显俊俏。​ ​pyecharts​​ 是百度的 echarts 基于 python 的实现,能够很不便的间接在 python 里进行调用。其出的图相当丑陋。但因为版本起因,一些办法可能和老的版本会有不同。

一、装置
我这里应用的 python 版本是 python3.7,应用 pyecharts 也是最新的。应用 pip 装置还是比较简单的。

pip install pyecharts 
pip install pyecharts-jupyter-installer

留神,第二个包是为了和 jupyter 进行集成用的,便于间接在页面上出图。第二个包不装或都调用的参数不对,都会呈现如下的报错:

Javascript error adding output!
ReferenceError: echarts is not defined
See your browser Javascript console for more details.

另外国内的地图和之前的版本不同,是进行了独自拆散过的,如果须要应用,须要应用如下命令进行装置:

pip install echarts-countries-pypkg
pip install echarts-china-provinces-pypkg
pip install echarts-china-cities-pypkg
pip install echarts-china-counties-pypkg
pip install echarts-china-misc-pypkg
pip install echarts-united-kingdom-pypkg

装置实现后,能够应用 pip show pyecharts 查看装置的地位。

二、jupyter 运行出图
我这里应用的 jupyter 间接在页面上调用应用的,测试代码如下:

from pyecharts.charts import Bar
from pyecharts import options as opts
bar = (Bar()
.add_xaxis(["衬衫", "毛衣", "领带", "裤子", "风衣", "高跟鞋", "袜子"])
.add_yaxis("商家 A", [114, 55, 27, 101, 125, 27, 105])
.add_yaxis("商家 B", [57, 134, 137, 129, 145, 60, 49])
.set_global_opts(title_opts=opts.TitleOpts(title="某商场销售状况"))
)
bar.render_notebook()
#bar.render() #应用 render 办法会生成 html 页面

间接页面上运行后后果如下:

另外如果在 jupyter 页面上不能出图,除了下面提到的类名称引入不对外,还可能是短少 html5lib 包。还须要留神 jupter 和 jupterlab 是两个不同的产品,前面这个是 jupter 的将来版。这个在引入的时候应用的代码是有区别的。具体能够看官网示例。

python 可视化来剖析全国疫情代码

from pyecharts import options as opts
from pyecharts.charts import Geo
from pyecharts.globals import ChartType, SymbolType
import requests
import json
res = json.loads(requests.get('http://www.dzyong.top:3005/yiqing/province/').text)
print(res)
province = [p['provinceName'] for p in res['data']]
val1 = [p['confirmedNum'] for p in res['data']]
val2 = [p['curesNum'] for p in res['data']]
val3 = [p['deathsNum'] for p in res['data']]
geo = Geo()
geo.add_schema(maptype="china")
geo.add(
    "geo",
    [list(z) for z in zip(province, val1)],
    type_=ChartType.EFFECT_SCATTER,
)

geo.set_series_opts(label_opts=opts.LabelOpts(is_show=False, background_color='black', color='green'))
geo.set_global_opts(visualmap_opts=opts.VisualMapOpts(is_piecewise=True, min_=0, max_=30000),
    title_opts=opts.TitleOpts(title="全国实时数据"))
geo.render('全国实时数据.html')

以上就是本次分享的全部内容,当初想要学习编程的小伙伴指路 Python 技术大本营,欢送各位的到来哦~

退出移动版