生活消费
5分钟学会ECharts项目:全球GDP数据可视化
2024-12-31 16:24

应对现在数据可视化的趋势,越来越多企业需要在很多场景下使用可视化图表来展示体现数据,让数据更加直观,数据特点更加突出

目前,数据可视化JS库也有很多,比如 echarts、d3.js 等等。

本项目使用的是 echarts 库实现的,效果如下

 

  • 领略 数据可视化 的魅力(小白
  • 掌握echarts图表的基本使用(稍有基础
  • 配置适合项目需求的图表(稍有基础
  • 掌握基本的数据处理方法(有一定基础
  • axios库的基本使用(稍有基础
  • HTML/CSS/JS基本语法
  • echarts制作图表基本步骤
  • 配置echarts图表
  • Ajax获取真实数据
  • 将数据应用到图表中展示

项目中用到的资料,老师已经放到百度网盘了。

资料下载地址及密码

  • 链接:百度网盘 请输入提取码
  • 提取码:ze49
  • 将 下载的 资料GDP文件夹) 使用vscode或其他代码编辑器打开
  • 查看官方 文档 > 使用手册 ,根据这个手册,可以学到,使用echarts大概分为4个步骤
    • 创建一个具有宽高的盒子
    • 初始化 echarts
    • 设置配置项
    • 生成图表

具体做法,创建 demo.html ,代码如下

 
 
  • 将body设置为全屏的
  • div的高度设为 100%
 
 

实际开发中,有各不相同的需求和业务场景,官方给出的示例往往并不能满足项目需求,只能作为一个参考。

如果需要得到一个符合项目需求的图表,则需要自己修改配置项,对图表进行配置。

配置 echarts 图表,则需要查看 echarts 的 配置项手册 以及参考 echarts的 使用手册。

下面,简单的对图表进行一下配置,需求如下

  • 图表的标题,要求标题字体微软雅黑、字体大小40,橙色,左右居中,距离顶部30像素。
  • 调整网格(图表区域,距离顶部 80px、距离右侧 180px
  • 去掉图例(legend)和输入移入提示(tooltip
 
 

参考 动态排序柱状图 文档,将动态排序柱状图基本的配置加好。

修改 xAxis 、yAxis 和 series,完整的配置如下

 

将上述代码中的 41、42行的时间修改为 1000 毫秒,否则太慢了。

注意,修改 series 中的 data,随便修改为一个数组,参考上面的代码

完成后效果如下

图表中使用的真实数据结构如下

 

如何将这些数据展示在图表中呢

  1. 去掉 yAxis 中的 data
  2. 将 series 系列中的 data 换成 上述数据
  3. 在 series 系列中,通过 encode 来指定 X 轴 和 Y 轴分别使用哪一列数据
  4. 将 yAxis 中的 max 修改为 9,表示只显示 10 个国家
 

这步搞定后,顺便将 yAxis 中的 max 修改为 9,表示只显示 10 个国家

yAxis: {
  type: 'category',
-  // data: ['A', 'B', 'C', 'D', 'E'],
  inverse: true,
  animationDuration: 300,
  animationDurationUpdate: 300,
+  max: 9 // 这里的 9 表示只显示 10 个国家
},

完成后效果

让数据动起来的原理很简单,只要间隔一段时间,修改 series 中的数据即可。

比如间隔 1s ,随机改变一下 series 中的 GDP 数据,来测试一下

 

完成后的效果如下

已经准备了每个国家使用的颜色(可以自行修改)。

存储颜色的文件是 文件夹中的

所以,首先在 demo.html 中加载这个js文件

<script src="https://blog.csdn.net/itcast_cn/article/details/js/colors.js"></script>

设置柱子的颜色,需要用到 series 系列中的 配置项

 
 
 

完成后,每个国家的柱子将会有自己的颜色,效果如下(截图软件原因,效果不是很好

使用自定义label标签的方式,设置国旗。

还是在 series 系列中,修改原有的

 

完成后,所有国家都使用的 中国国旗。

如何为每个国家设置自己的国旗呢

我们从上面的代码中发现规律,只要 和 rich 中的 名字一样即可设置图片,所以可以动态的设置这个名字,全部使用国家名(不能用中文的,只能用英文的

继续修改上面的代码

 

上述代码中的 rich 变量,来自于 文件夹的 ,所以导入它

 

完成后效果如下

目前使用的都是测试数据。

真实数据来源于网络(世界银行,经过老师整理后,形成 data.json

这些数据怎么用呢?答案是通过Ajax请求得到。所以

  1. 导入 axios 库
 
  1. 发送请求,获取这些数据
 

得到如下结构的数据和我们开始模拟的数据结构是一样的,只不过这里的数据是从1960~2020年的全部数据

 
 
  1. 加载得到全部的年(其实自己通过js方法计算也可以,不过为了方便,已经准备好这些年份的数据了
 
  1. 将前面那个 放到 方法内部,并修改数据真真实的数据
 

这步完成,基本就可以达到最终效果了(数据变化60次,最终显示2020年的真实数据)。这里不再截图

可以稍微补充一下,比如去掉 xAxis 轴,去掉 yAxis 的轴线和刻度,图表右下角加入年。

  1. 去掉 xAxis 轴
 
  1. 去掉 yAxis 的轴线和刻度
 
  1. 图表右下角加入年(参考这个官方示例

然后定时器中,修改这个年

    以上就是本篇文章【5分钟学会ECharts项目:全球GDP数据可视化】的全部内容了,欢迎阅览 ! 文章地址:http://ww.kub2b.com/news/17302.html
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 企库往资讯移动站 http://ww.kub2b.com/mobile/ , 查看更多   
最新文章
京东万商 v6.2.2手机京东app下载「京东万商 v6.2.2」
uses-permission:'android.permission.INTERNET',允许程序访问网络连接,可能产生GPRS流量uses-permission:'android.permission.
三星Galaxy S8多少钱?三星Galaxy S8价格s8手机「三星Galaxy S8多少钱?三星Galaxy S8价格」
三星Galaxy S8多少钱  三星Galaxy S8的价格预计约6000元。   三星Galaxy S8基于Android7.0深度定制的UI,在主界面通过上下滑
如何设置路虎屏幕投屏?路虎手机「如何设置路虎屏幕投屏?」
要将手机屏幕内容投射到路虎车内的中控屏,有两种主要的方法,一种适用于安卓设备,一种适用于iPhone设备。首先,对于安卓设备,
林峯老婆张馨月再惹争议!用60元山寨手机壳被扒,删帖逃避引群嘲
娱乐圈从来不缺热闹,尤其是那些站在镁光灯边缘的“家属们”。最近,林峯的老婆张馨月(Carina)可谓是“热搜钉子户”,从检查离
百万新娘之爱无悔宝莲乘敏君沏茶的时候用她的手机给天祥发短信手机短信发不出去是什么原因「百万新娘之爱无悔宝莲乘敏君沏茶的时候用她的手机给天祥发短信」
很高兴和大家见面啦,我是小轮娱乐君,请多多指教。宝莲称敏君沏茶的时候,赶紧用她的手机给天祥发了短信,之后又装作有急事的样
小米手机怎么检测硬件,小米手机硬件检测教程
买了小米手机后,很多人会关心配置是否优越或存在不足。接下来,我将分享如何检测小米手机硬件的教程,帮助你了解设备性能与状况
京基智农2024年净利下滑59%
新京报讯(记者王思炀)4月1日,新京报记者了解到,日前召开2024年业绩说明会。2024年,京基智农实现营业收入59.60亿元,同比下
DNF:至尊天空价格&外观汇总!蝴蝶套最贵,墨染丹清最值得拿下
我们都知道自从DNF推出12套普通天空后,就不再推出了!虽说普通天空不再推出,但是至尊天空却一直在推出着。从第一套至尊天空若
两个android手机通过蓝牙连接手机蓝牙连接「两个android手机通过蓝牙连接」
在现代社会中,蓝牙已经成为了一种常见的无线通信技术。通过蓝牙,我们可以实现多种设备之间的连接和数据传输,比如手机与耳机、
炉石盒子工具版炉石传说盒子手机版「炉石盒子工具版」
炉石盒子工具版是一款非常好用的游戏辅助类应用,提供了很多的游戏资讯让用户可以第一时间掌握,而且还提供了最新的新手教学视频