Echarts 缩写来自 Enterprise Charts(商业级数据图表),是百度的一个开源的数据可视化工具
Echarts 能够绘制 2D 和 3D 的饼状图、柱状图、折线图等几乎所有我们能够见到的图形
Echarts 能够在 PC 端和移动设备上流畅运行,兼容当前绝大部分浏览器
Echarts 是一个纯 JavaScript 的图表库,底层依赖轻量级的 Canvas 库 ZRender
官网: https://echarts.apache.org/zh/index.html
使用步骤:
下载
复制/粘贴代码
代码分析
结论
实现:
npm i echarts
复制代码
分析代码
通过分析代码得出结论,使用 Echarts 绘制图形只需要做 5 件事情
① 引入 echarts.js 核心文件
② 定义一个用来显示图表的div (使用样式可以控制图表的宽高)
③ 初始化 echarts 实例 (此处要将div的dom对象作为参数传入)
④ 配置图表所需的数据
⑤ 调用 setOption 方法绘制图表
第四步配置数据项是最为关键的,要掌握里面的主要配置项
Document
series: {
type: 'bar',
data: [123,456,324,555],
markPoint: {
data: [
{ type: 'max', name: '最大值'},
{ type: 'min', name: '最小值'}
]
},
markLine: {
data: [
{ type: 'average', name: '平均值'},
{ type: 'max', name: '最大值'},
{ type: 'min', name: '最小值'}
]
}
}
markPoint:可以通过定义data来显示数据中的最大最小值,并在其对应的柱状图上显示point标记
markLine:可以通过一条线来显示最大最小及平均值
也可以通过交换xAxis和yAxis中的配置项来进行横向显示
xAxis: {},
yAxis: {data: ['java', 'C++', 'C', 'Python']},
title: 用来设置主标题、副标题、标题样式等
title: {
text: 'echart测试', // 主标题文字
subtext: '销售数据前5名', // 副标题文字
textStyle: { // 主标题样式
color: 'red',
fontSize: '30px'
},
subtextStyle: { //副标题样式
color: 'green',
fontSize: '24px'
}
},
tooltip: 提示框组件,用来配置鼠标进入或者点击时的提示信息
tooltip: {
trigger: 'item', // 提示信息, itme、axis
triggerOn: 'mousemove', //提示触发方式, mousemove(默认)、click
formatter: '{b}
{a}: {c}' // 数据显示格式, string 和 function 两种
}
toolbox: 内置工具栏, 导出图片、数据视图、动态类型切换、数据区域缩放
toolbox: {
feature: {
saveAsImage: { // 保存为图片
show: true
},
dataView: {}, // 数据视图
dataZoom: {}, // 区域缩放
restore: {}, // 重置视图
magicType: { // 图表切换
type: ['bar', 'line'] // 在柱状图和折线图之间切换
}
}
},
legend: 图例,用于筛选系列,要和 series 配合使用
在 series 中可以有多组数据, 只要定义多个对象即可
script>
// 初始化 echarts 实例
var echart = echarts.init(document.getElementById('echart'))
var ydata1 = [123,456,324,555]
var ydata2 = [456,252,123,324]
var ydata3 = [235,542,153,111]
// 配置图表所需的数据
var option = {
title: {
text: 'echart测试',
},
tooltip: {
trigger: 'item',
},
legend: {
data: [
{name: '数据一'},
{name: '数据二'},
{name: '数据三'}
]
},
xAxis: {data: ['java', 'C++', 'C', 'Python']},
yAxis: {},
series: [
{
type: 'bar',
data: ydata1,
name: '数据一'
},
{
type: 'bar',
data: ydata2,
name: '数据二'
},
{
type: 'bar',
data: ydata3,
name: '数据三'
}
]
}
// 调用 setOption 方法绘制图表
echart.setOption(option)
折线图和柱状图基本上是一样的,只需要将series中的type设置为line
series: [
{
type: 'line',
data: ydata1,
name: '数据一'
},
{
type: 'line',
data: ydata2,
name: '数据二'
},
{
type: 'line',
data: ydata3,
name: '数据三'
}
]
var option = {
title: {
text: 'echart测试',
},
tooltip: {
trigger: 'item',
},
xAxis: {data: ['java', 'C++', 'C', 'Python'],boundaryGap: false},
yAxis: {},
series:
{
type: 'line',
data: ydata1,
name: '数据一',
smooth: true,
areaStyle: {
color: 'gold',
opacity: 0.5
}
}
}
实际工作时,我们通常都使用复制/粘贴,修改数据 的方式来使用 echarts
https://echarts.apache.org/zh/index.html