echarts可视化| 青训营

47 阅读2分钟

ECharts简介

ECharts,一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE9/10/11,Chrome,Firefox,Safari等),底层依赖矢量图形库 ZRender,提供直观,交互丰富,可高度个性化定制的数据可视化图表

官网:echarts.apache.org/zh/index.ht…

丰富的可视化类型

常规

  1. 折线图
  2. 柱状图
  3. 散点图
  4. 饼图
  5. K线图
  6. 盒形图

地理数据可视化

  1. 地图
  2. 热力图
  3. 线图

关系数据可视化

  1. 关系图
  2. treemap
  3. 旭日图

绘制一个简单的图表

  • 在绘图前我们需要为 ECharts 准备一个定义了高宽的 DOM 容器。在刚才的例子 </head> 之后,添加:
 <body>
   <!-- 为 ECharts 准备一个定义了宽高的 DOM -->
   <div id="main" style="width: 600px;height:400px;"></div>
 </body>
  • 然后就可以通过 echarts.init 方法初始化一个 echarts 实例并通过 setOption 方法生成一个简单的柱状图,下面是完整代码。

引入 Apache ECharts

 <!DOCTYPE html>
 <html lang="en">
 ​
 <head>
     <meta charset="UTF-8">
     <meta name="viewport" content="width=device-width, initial-scale=1.0">
     <script src="./echarts.js"></script>
     <title>Document</title>
 </head>
 ​
 <body>
 ​
     <div id="main" style="width: 600px;height: 400px;"></div>
     <script>
         // 基于准备好的dom,初始化echarts实例
         /* 1.创建一个echarts对象,初始化 */
         /* 要把这个echarts对象,放入上述· */
         var myChart = echarts.init(document.getElementById("main"))
         /* 2.创建配置信息 */
         // 指定图表的配置项和数据
         var option = {
             title: {
                 text: 'ECharts 入门示例'
             },
             tooltip: {},
             legend: {
                 data: ['销量']
             },
             xAxis: {
                 data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
             },
             yAxis: {},
             series: [
                 {
                     name: '销量',
                     type: 'bar',
                     data: [5, 20, 36, 10, 10, 20]
                 }
             ]
         };
         /* 3. 将配置信息和对象信息连接起来*/
         // 使用刚指定的配置项和数据显示图表。
         myChart.setOption(option);
 ​
     </script>
 </body>
 </html>

image-20230814033114790

图表容器及大小

  • 通常来说,需要在 HTML 中先定义一个 <div> 容器,并且通过 CSS 使得该容器具有宽度和高度。
  • 初始化的时候,传入该容器,图表的大小默认即为该容器的大小
  • 必须保证这个容器有大小
 <div id="main" style="width: 600px;height:400px;"></div>

温馨提示

需要注意的是,使用这种方法在调用 echarts.init 时需保证容器已经有宽度和高度了

指定图表的大小

  • 如果图表容器不存在宽度和高度,或者,你希望图表宽度和高度不等于容器大小,也可以在初始化的时候指定大小
 var myChart = echarts.init(document.getElementById('main'),null,{
   width:600,
   height:400
 });
  • 重置myChart对象里面的宽高
 myChart.resize({
   width: 800,
   height: 400
 });
  • 加上js后,图表可以根据浏览器大小进行调整
 window.addEventListener('resize', function () {
   myChart.resize({
     width: window.innerWidth / 2,
     height: window.innerHeight / 2
    })
 })