georgefan 发表于 2022-4-15 09:01

数据可视化:制作自己的国内旅行足迹地图

疫情期间,旅行成为奢望。不过,用数据可视化的方式回顾自己之前的国内旅行足迹,也不失为一种乐事。
基本思路:在excel中整理数据,python读取数据,采用pyecharts生成可视化图形。
1. excel文件模板,见附件,需要与程序放在同一个文件夹。其中,sheet1为各省区市中区级市的列表,有访问历史的可标记1。sheet4为数据透视表统计的各省访问合计情况,只需要刷新,不要调整单元格位置。
2. 运行python程序,附后。
3. 在同一个文件夹生成“Trvel.html”,运行可见可视化文件。如下图。

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")

tan19890718 发表于 2022-4-16 21:50

chowhong 发表于 2022-4-16 09:58
运行成功了,只是不知道为什么副标题里的那个字符没有显示。用的Firefox浏览器

代码一个都不改的吗…………

georgefan 发表于 2022-4-22 11:43

lzspain 发表于 2022-4-15 13:08
可不可以抓取高德地图的数据?出行记录和点亮城市。

百度地图可以,但是需要申请开发者账号!

ciker_li 发表于 2022-4-15 09:04

感谢分享

逝去的初夏 发表于 2022-4-15 09:11

这一个个小点点不太吉利...美化一点区域能细化点也是挺不错的

jay026 发表于 2022-4-15 09:34

这,蛮有意思

Allen333 发表于 2022-4-15 09:44

很有想法的东西

Yeah_whr 发表于 2022-4-15 09:51

可以学习一下Echarts,能实现动态迁徙地图

叫我小王叔叔 发表于 2022-4-15 10:30

我研究了一下,搞不下去了,前端大屏加后端flask,看起来逼格更高,就是没有现成的轮子可以参考了。

foo666 发表于 2022-4-15 10:42

666666,强啊

ruoshuisanqian 发表于 2022-4-15 10:48

很有想法,感谢分享。

初心超级酷 发表于 2022-4-15 11:14

感谢分享
页: [1] 2
查看完整版本: 数据可视化:制作自己的国内旅行足迹地图