首页 > 其他分享 >ECharts数据可视化

ECharts数据可视化

时间:2022-10-08 14:12:52浏览次数:72  
标签:name type value ECharts --- 可视化 data 数据 echarts

学习文档:
https://blog.csdn.net/weixin_43883917/article/details/113886713
https://www.runoob.com/echarts/echarts-tutorial.html

1.使用CDN引入:
Staticfile CDN(国内):

<script src="https://cdn.staticfile.org/echarts/4.3.0/echarts.min.js"></script>

jsDelivr:

<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/echarts.min.js"></script>

cdnjs:

<script src="https://cdnjs.cloudflare.com/ajax/libs/echarts/4.3.0/echarts.min.js"></script>


2.NPM方法(npm 版本需要大于 3.0):
# 查看版本
$ npm -v
#升级 npm
cnpm install npm -g
# 升级或安装 cnpm
npm install cnpm -g
# 最新稳定版
$ cnpm install echarts --save
安装完成后 ECharts 和 zrender 会放在 node_modules 目录下,我们可以直接在项目代码中使用 require('echarts') 来使用
<!-- 为 ECharts 准备一个具备大小(宽高)的 DOM -->

<div id="main" style="width: 600px;height:400px;"></div>
var echarts = require('echarts');
// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));
// 绘制图表
myChart.setOption({
         title: { ---标题
         text: 'ECharts 入门示例'
           },
         tooltip: {}, ---提示信息
         xAxis: { ---X轴显示项
            data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
            },
         yAxis: {}, ---Y轴显示项
         series: [{ ---系列列表
             name: '销量', // 系列名称
             type: 'bar', // 系列图表类型
             data: [5, 20, 36, 10, 10, 20] // 系列中的数据内容
}]
});

 

每个系列通过 type 决定自己的图表类型:

type: 'bar':柱状/条形图
type: 'line':折线/面积图
type: 'pie':饼图
type: 'scatter':散点(气泡)图
type: 'effectScatter':带有涟漪特效动画的散点(气泡)
type: 'radar':雷达图
type: 'tree':树型图
type: 'treemap':树型图
type: 'sunburst':旭日图
type: 'boxplot':箱形图
type: 'candlestick':K线图
type: 'heatmap':热力图
type: 'map':地图
type: 'parallel':平行坐标系的系列
type: 'lines':线图
type: 'graph':关系图
type: 'sankey':桑基图
type: 'funnel':漏斗图
type: 'gauge':仪表盘
type: 'pictorialBar':象形柱图
type: 'themeRiver':主题河流
type: 'custom':自定义系列

 

饼图:

option = {
// 全局调色盘。
color: ['#c23531','#2f4554', '#61a0a8', '#d48265', '#91c7ae','#749f83', '#ca8622', '#bda29a','#6e7074', '#546570', '#c4ccd3'],
series : [
   {
// 此系列自己的调色盘。
    color: ['#dd6b66','#759aa0','#e69d87','#8dc1a9','#ea7e53','#eedd78','#73a373','#73b9bc','#7289ab', '#91ca8c','#f49f42'],
    name: '访问来源',
    type: 'pie',
    radius: '55%',
    data:[
       {value:235, name:'视频广告'},
       {value:274, name:'联盟广告'},
       {value:310, name:'邮件营销'},
       {value:335, name:'直接访问'},
       {value:400, name:'搜索引擎'}
      ],
     roseType: 'angle', ---南丁格尔图
     itemStyle: { ---itemStyle 参数可以设置诸如阴影、透明度、颜色、边框颜色、边框宽度等
     normal: {
        shadowBlur: 200,
        shadowColor: 'rgba(0, 0, 0, 0.5)'
      }
}
   // 高亮样式。
   emphasis: {
        itemStyle: {
       // 高亮时点的颜色
          color: 'red' ---鼠标移动到该模块时该模块的颜色
        },
   label: {
      show: true,
       // 高亮时标签的文字
          formatter: '高亮时显示的标签内容'
          }
    },
  }]
};

 

样式设置:
主题
var chart = echarts.init(dom, 'light'); ---背景白色
或者
var chart = echarts.init(dom, 'dark'); ---背景黑色

 

异步加载
ECharts 通常数据设置在 setOption 中,如果我们需要异步加载数据,可以配合 jQuery等工具,在异步获取数据后通过 setOption 填入数据和配置项就行

echarts_test_data.json 数据:
{
"data_pie" : [
{"value":235, "name":"视频广告"},
{"value":274, "name":"联盟广告"},
{"value":310, "name":"邮件营销"},
{"value":335, "name":"直接访问"},
{"value":400, "name":"搜索引擎"}
]
}
var myChart = echarts.init(document.getElementById('main'));
myChart.showLoading(); // 开启 loading 效果(异步加载需要一段时间,数据加载完成后再调用 hideLoading 方法隐藏加载动画)
$.get('https://www.runoob.com/static/js/echarts_test_data.json', function (data) {
myChart.hideLoading(); // 隐藏 loading 效果
myChart.setOption({
series : [
  {
      name: '访问来源',
      type: 'pie', // 设置图表类型为饼图
      radius: '55%', // 饼图的半径,外半径为可视区尺寸(容器高宽中较小一项)的 55% 长度。
      data:data.data_pie
   }]
  })
}, 'json')

 

交互组件:
dataZoom 组件可以实现通过鼠标滚轮滚动,放大缩小图表的功能
(默认情况下 dataZoom 控制 x 轴,即对 x 轴进行数据窗口缩放和数据窗口平移操作)
通过 dataZoom.xAxisIndex 或 dataZoom.yAxisIndex 来指定 dataZoom 控制哪个或哪些数轴

dataZoom: [
{
type: 'slider',
show: true,
xAxisIndex: [0],
start: 1,
end: 35
},
{
type: 'slider',
show: true,
yAxisIndex: [0],
left: '93%',
start: 29,
end: 36
},

 

数据的视觉映射
visualMap 组件中可以使用的视觉元素有:
图形类别(symbol)
图形大小(symbolSize)
颜色(color)
透明度(opacity)
颜色透明度(colorAlpha)
颜色明暗度(colorLightness)
颜色饱和度(colorSaturation)
色调(colorHue)

visualMap 组件定义了把数据的指定维度映射到对应的视觉元素上。
visualMap 组件可以定义多个,从而可以同时对数据中的多个维度进行视觉映射。
visualMap 组件可以定义为 分段型(visualMapPiecewise) 或 连续型(visualMapContinuous),通过 type 来区分

分段型视觉映射组件,有三种模式:
连续型数据平均分段: 依据 visualMap-piecewise.splitNumber 来自动平均分割成若干块。
连续型数据自定义分段: 依据 visualMap-piecewise.pieces 来定义每块范围。
离散数据根据类别分段: 类别定义在 visualMap-piecewise.categories 中。

option = {
visualMap: [
{
type: 'piecewise'
min: 0,
max: 5000,
dimension: 3, // series.data 的第四个维度(即 value[3])被映射
seriesIndex: 4, // 对第四个系列进行映射。
inRange: { // 选中范围中的视觉配置
color: ['blue', '#121122', 'red'], // 定义了图形颜色映射的颜色列表,
// 数据最小值映射到'blue'上,
// 最大值映射到'red'上,
// 其余自动线性计算。
symbolSize: [30, 100] // 定义了图形尺寸的映射范围,
// 数据最小值映射到30上,
// 最大值映射到100上,
// 其余自动线性计算。
},
outOfRange: { // 选中范围外的视觉配置
   symbolSize: [30, 100]
   }
},
...
]
};

 

标签:name,type,value,ECharts,---,可视化,data,数据,echarts
From: https://www.cnblogs.com/xinyu-yudian/p/16768770.html

相关文章