WE PROVIDE ENGLISH VERSION, PLEASE CLICK HERE
本项目负责平台的信息展示,可视化地理信息。
基于 ECharts 可视化库及其他技术栈:
- 目的&设计:创建一个独立的疫情地图可视化,有两个主要目标
- 地理精度:有市级地理粒度,最开始是一个全国地图的 heatmap,点击一个省重绘成省 map。(重绘参考)
- optional: 可能会做成县级精度,具体见讨论
- 时间信息:有时间轴,点击一个地区可以画出stacked area chart之类的疫情发展图 (确诊/疑似/死亡为不同层),也可以根据选择的时间点重绘地图。(时间轴参考案例)
- 使用:取决于数据
- 如果自动抓取省市级数据:疫情地图与前端其他组件交互较少,且数据可以通过 API 直接获取,可以作为单独 webpage,最终作为 iframe 整合进前端页面。
- 如果使用手动抓取的县级数据,则作为组件融入前端,接受传入数据。讨论
- 目的:用于可视化各种不同地理信息(例如医院位置,酒店位置,etc.)
- 使用:作为组件被前端调用,数据来自前端。
- 基础设计:点图+地图(参考例子)
- 交互:
- 不自带过滤等交互组件,上层应该自己创建 checkbox, slider, etc. 过滤后数据传入地图组件可以重绘地图
- 接受传入的 mouseEvent,可以帮助做信息过滤及定位(e.g., 点击一个省选中它的信息)
- (相关讨论)
- 数据格式设计讨论
合作指南参考主 repo(viz 没有项目机器人+注意将 demo script 改成我们的 repo) TL;DR:
- 请在project 面板自行认领&self-assign issues(如果不能更改 assignee,请回复 issue 表示认领,我们会后面添加 assign)
- 对数据和设计如果有讨论请参见如下 issue:
- 如有其它建议请开 issue
- 参与更多讨论请加入slack 讨论组,我们在 channel #proj-map-visualization
!!具体进行中及待领任务请看project 面板
已经有基础疫情地图,界面排布根据界面大小的缩放而改动,能显示省市两个层级的疫情信息。已经接好了数据接口,可以从官方 API 拿到每日信息 (但是为了避免对 API 造成巨大负担现在是每日手动拉下来的。)
- 省市层级交互
- 时间轴交互:
- 支持 resize:
- 在疫情数据中加入统计图(线图或者 stacked area chart)显示疫情发展数据
- 时间轴与统计图与地图互动
已经有可视化其他地理信息 (e.g. 求援医院地理位置,酒店位置) 的通用地图控件,用百度地图 API,可以精确在地图上标出。
现在用 mock 数据做,之后应该会按照指示接入前端用来可视化他们的数据。接入数据后的一个展示见这里(图太大……)
- 可视化库: ECharts v4
- 逻辑语言: TypeScript v3
- 组件引擎: WebCell v2
- 组件库: BootCell v1
- 状态管理: MobX v5
- PWA 框架: Workbox v4
- 打包工具: Parcel v1
- CI / CD: Travis CI + GitHub Pages
# clone the repo
git clone [email protected]:wuhan2020/map-viz.git
# setup the npm env
cd map-viz
npm install
# start the project
npm start