今天我们用Pyecharts做一个地球可视化项目,一起来看看Let'sgo吧!数据处理这里我们使用全球感染新冠人数的数据集作为我们的测试数据,我们来看一下数据导入pandas的整体情况aspddf=pd.read_csv("owid-covid-data.csv")df_0608=df[df['date']=='2022-06-08']df_new=df_0608[pd.isna(df_0608['continent'])==False]df_newOutput:我们选择0608天的数据,可以看到total_cases字段是下面提取的国家当前累计确诊病例总数。covid_data=df_new[['location','total_cases']].values.tolist()Output:PyechartsDrawing通过Pyecharts绘制地球地图,官网上很详细例如我们可以直接套用到第一次导入相关库importpyecharts.optionsasoptsfrompyecharts.chartsimportMapGlobe定义地球地图函数并绘制data=[xfor_,xincovid_data]low,high=min(data),max(data)c=(MapGlobe().add_schema().add(maptype="world",series_name="WorldCovidData",data_pair=covid_data,is_map_symbol_show=False,label_opts=opts.LabelOpts(optis_show=False),=opts(visual_map)。VisualMapOpts(min_=low,max_=high,range_text=["max","min"],is_calculable=True,range_color=["lightskyblue","yellow","orangered"],)))c.render_notebook()我们得到这样的全球国家新冠确诊人数分布图部署为web服务。目前,我们所有的代码都在Jupyter中运行。与他人共享不是很方便。我们可以将整个代码部署为一个web服务,这样其他人就可以很方便的通过浏览器查看地球地图。我们先创建一个项目目录,命名为flask_map,然后将本地安装的Pyecharts目录下的templates文件夹复制到该目录下,同时创建一个data文件夹和main.py文件,Pyecharts模板的位置如下:pyecharts.render.templates我们把数据集owid-covid-data.csv放在data文件夹下,然后写main.py文件#coding=utf-8"""=======================@author:luobo@time:2022/7/2:14:32@email:@File:main.py======================""fromflaskimportFlask,render_templatefromjinja2importMarkup,Environment,FileSystemLoaderfrompyecharts.globalsimportCurrentConfig#关于CurrentConfig,请参考【基本使用-全局变量】CurrentConfig。GLOBAL_ENV=Environment(loader=FileSystemLoader("./templates"))frompyechartsimportoptionsasoptsfrompyecharts.chartsimportMapGlobeimportpandasaspddf=pd.read_csv("data/owid-covid-data.csv")df_0608=df[df['date']=='2022-06-08']df_new=df_0608[pd.isna(df_0608['continent'])=False]covid_data=df_new[['location','total_cases']].values.tolist()app=Flask(__name__,static_folder="templates")defMap_base():数据=[x代表_,x在covid_data]低,高=min(数据),max(数据)c=(MapGlobe().add_schema().add(maptype="world",series_name=“世界covid数据”,data_pair=covid_data,is_map_symbol_show=false,label_opts=optsel_opts=opts.labelopts(is_show=false),.set_global_opts(vasion_global_opts(mmap_opts=optse=opts.visaulmapopts_your)","min"],is_calculable=True,range_color=["lightskyblue","yellow","orangered"],))))returnc@app.route("/")defindex():c=Map_base()/mp.r地图。html')returnrender_template("Map.html")if__name__=="__main__":app.run()这样,我们启动Flask服务器时,只需要访问根目录(/),它会在templates目录下生成Map.html文件,地球地图也会在浏览器中正常显示。至于如何将本地的web应用部署到公网,我们会在后面的文章中介绍!以上就是本次分享的全部内容。觉得文章还不错的话,请关注公众号:Python编程学习圈,每日干货分享,发送“J”也能领取大量学习资料或前往编程学习网了解更多编程技术知识。
