疫情期间,旅行成为奢望。不过,用数据可视化的方式回顾自己之前的国内旅行足迹,也不失为一种乐事。
基本思路:在excel中整理数据,python读取数据,采用pyecharts生成可视化图形。
1. excel文件模板,见附件,需要与程序放在同一个文件夹。其中,sheet1为各省区市中区级市的列表,有访问历史的可标记1。sheet4为数据透视表统计的各省访问合计情况,只需要刷新,不要调整单元格位置。
2. 运行python程序,附后。
3. 在同一个文件夹生成“Trvel.html”,运行可见可视化文件。如下图。
trvel
[Python] 纯文本查看 复制代码 import xlrd
from pyecharts.charts import Map
from pyecharts import options as opts
import datetime
now = datetime.datetime.now()
fn = now.strftime('%Y年%m月%d日')
xls = xlrd.open_workbook("data.xls")
table = xls.sheet_by_name("Sheet4")
data = []
m = 0
for n in range(4, 38):
if table.cell(n, 1).value > 0:
data.append((table.cell(n, 0).value, int(table.cell(n, 1).value)))
m = max(m, table.cell(n, 1).value)
MyMap = Map(init_opts=opts.InitOpts(
page_title="个人国内足迹图",
width="1000px",
height='640px',
bg_color="white",
animation_opts=opts.AnimationOpts(animation_easing="cubicOut"),
))
MyMap.set_global_opts(
title_opts=opts.TitleOpts(
title="个人国内足迹",
subtitle=f"截止日期:{fn} © A GeoF Production",
pos_right="center",
pos_top="5%"),
visualmap_opts=opts.VisualMapOpts(
pos_right="center",
pos_top="15%",
orient="horizontal",
is_piecewise=False,
min_=1,
max_=m,
range_color=["lightyellow", "red"]),
legend_opts=opts.LegendOpts(
is_show=False))
MyMap.add(
tooltip_opts=opts.TooltipOpts(
is_show=True,
),
is_map_symbol_show=True,
label_opts=opts.LabelOpts(
is_show=True
),
series_name="到访地区数",
data_pair=data,
maptype="china",
is_roam=False)
MyMap.render("Trvel.html")
|