全球疫情可视化实时更新

使用ECharts和jQuery实现全球疫情实时地图,从API获取并处理数据,解决国家名称匹配问题,自定义鼠标悬浮提示,设置颜色映射。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

全球疫情可视化实时更新

1. 配置

boostrap为前端框架,echarts可视化,jQuery获取、处理数据

2. 思路

  1. 前端框架搭好,这里不细说
  2. 后端用JQuery从API中获取数据

3. 如何用echarts做全球疫情地图

以累计确诊病例分布图为例

数据源为https://lab.isaaclin.cn/nCoV/api/area?latest=1

获取数据的框架

 $.get("https://lab.isaaclin.cn/nCoV/api/area?latest=1",
  function (data, status) {
  //处理数据
  });

处理Json数据

var arr = [];
            // 处理数据,成地图需要的数据结构
data.results.forEach(item => {
   
   
    // 循环的过程中,向空数组中加入所需的内容
    if(item.countryName==item.provinceName){
   
     
    //这个判断是因为,这个数据还统计了中国省份和城市的数据,所以这个条件用于判断这个元组是否为国家的数据                  
    arr.push({
   
   
        name: item.countryEnglishName, // name固定
        value: item.confirmedCount, // value固定
        nowconfirm: item.currentConfirmedCount, // 当前确诊
        heal: item.curedCount,//治愈数
        dead: item.deadCount,//死亡数
        CName:item.countryName//国家的中文名字
    });
}  
});

因为echarts的world.js对应的国家名是英文的,但是从丁香园获取的国家的英文名与echarts地图里存储的英文名之间可能出现不匹配的问题,因此,我自己一个个筛选了那些名字不匹配的国家,进行名字替换,可能还有没有考虑到的国家。

//统一替换名称不匹配的问题
arr.forEach(item => {
   
   
if(item.name=='United States of America'){
   
   
    item.name='United States'
}
else if(item.name=='The Islamic Republic of Mauritania'){
   
   
    item.name='Mauritania'
}
else if(item.name=='Kazakstan'){
   
   
    item.name='Kazakhstan'
}
else if(item.name=='Somali'){
   
   
    item.name='Somalia'
}
else if(item.name=='Central African Republic'){
   
   
    item.name='Central African Rep.'
}
else if(item.name=='Papua New Cuinea'){
   
   
    item
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值