ECharts是一款基于JavaScript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。ECharts最初由百度团队开源,并于2018年初捐赠给Apache基金会,成为ASF孵化级项目。
ECharts 提供了常规的折线图、柱状图、散点图、饼图、K线图,用于统计的盒形图,用于地理数据可视化的地图、热力图、线图,用于关系数据可视化的关系图、treemap、旭日图,多维数据可视化的平行坐标,还有用于 BI 的漏斗图,仪表盘,并且支持图与图之间的混搭。
可以去官网按需定制图表模块进行下载对应压缩包,并用
按需配置下载地址:https://echarts.apache.org/zh/download.html
- Staticfile CDN(国内) : https://cdn.staticfile.org/echarts/4.3.0/echarts.min.js
- jsDelivr:https://cdn.jsdelivr.net/npm/[email protected]/dist/echarts.min.js。
- cdnjs : https://cdnjs.cloudflare.com/ajax/libs/echarts/4.3.0/echarts.min.js
使用的是国外的地址可能引入打开页面,加载时间会过长。尝试练习还是建议下载到本地引入即可;
npm install echarts --save
<script src="js/echarts.min.js">script>
<div id="echartsBox" style="width: 600px;height:400px;">div>
// 基于准备好的dom,初始化echarts实例
const myChart = echarts.init(document.getElementById('echartsBox'));
// 指定图表的配置项和数据
const option = {
title: {
text: '柱状图实例'
},
xAxis: {
data: ['周一', '周二', '周三', '周四', '周五']
},
yAxis: {},
series: [{
name: '情绪',
type: 'bar',
data: [5, 30, 50, 80, 100]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>图表示例title>
<script src="js/echarts.min.js">script>
head>
<body>
<div id="echartsBox" style="width: 600px;height:400px;">div>
<script>
// 基于准备好的dom,初始化echarts实例
const myChart = echarts.init(document.getElementById('echartsBox'));
// 指定图表的配置项和数据
const option = {
title: {
text: '柱状图实例'
},
xAxis: {
data: ['周一', '周二', '周三', '周四', '周五']
},
yAxis: {},
series: [{
name: '情绪',
type: 'bar',
data: [5, 30, 50, 80, 100]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
script>
body>
html>
其他配置详情请见官网文档
属性名 | 属性类型 | 属性详情 |
---|---|---|
show | Boolean | 是否显示 |
text、subtext | String | 主标题、副标题文本 |
link、sublink | String | 主标题、副标题文本超链接 |
textStyle、subtextStyle | Object | 主标题、副标题文本样式 |
textAlign | String | 水平对齐方式 |
textVerticalAlign | String | 垂直对齐方式 |
top、right、bottom、right | String | 文本距离容器四侧的位置 |
padding | String | 标题组件内边距 |
当有多条数据时展示了数据分类展示;其他配置详情请见官网文档
属性名 | 属性类型 | 属性详情 |
---|---|---|
show | Boolean | 是否显示 |
data | Array | 图例的数据数组 |
formatter | String、Function | 用来格式化图例文本 |
orient | String | 图例列表的布局朝向 |
itemStyle | Object | 图例的图形样式 |
textStyle | Object | 文本样式 |
align | String | 水平对齐方式 |
textVerticalAlign | String | 垂直对齐方式 |
top、right、bottom、right | String | 文本距离容器四侧的位置 |
padding | String | 标题组件内边距 |
直角坐标系 grid 中的 x 轴,一般情况下单个 grid 组件最多只能放上下两个 x 轴,多于两个 x 轴需要通过配置 offset 属性防止同个位置多个 x 轴的重叠。
其他配置详情请见官网文档
属性名 | 属性类型 | 属性详情 |
---|---|---|
show | Boolean | 是否显示 |
data | Array | x轴的标题数据 |
nameTextStyle | Object | 坐标轴名称的文字样式,同textStyle |
axisLine | Object | 坐标轴轴线相关设置。详情见下方 |
axisTick | Object | 坐标轴刻度相关设置,详情见下方 |
axisLabel | Object | 坐标轴刻度标签的相关设置。 |
nameRotate | number | 坐标轴名字旋转,角度值。 |
min、max | number、string、function | 坐标轴最小最大值 |
splitNumber | number | 坐标轴的分割段数 |
interval | number | 强制设置坐标轴分割间隔 |
同textStyle配置相同
直角坐标系 grid 中的 y 轴,一般情况下单个 grid 组件最多只能放左右两个 y 轴,多于两个 y 轴需要通过配置 offset 属性防止同个位置多个 Y 轴的重叠。
其他配置详情请见官网文档
属性名 | 属性类型 | 属性详情 |
---|---|---|
show | Boolean | 是否显示 |
data | Array | x轴的标题数据 |
nameTextStyle | Object | 坐标轴名称的文字样式,同textStyle |
axisLine | Object | 坐标轴轴线相关设置。同xAxis |
axisTick | Object | 坐标轴刻度相关设置,同xAxis |
axisLabel | Object | 坐标轴刻度标签的相关设置。同xAxis |
nameRotate | number | 坐标轴名字旋转,角度值。 |
min、max | number、string、function | 坐标轴最小最大值 |
splitNumber | number | 坐标轴的分割段数 |
interval | number | 强制设置坐标轴分割间隔 |
数据源的配置,配置类型为数组对象(Array),根据每个对象type来配置图形样式。
其他配置详情请见官网文档
不同图形都要特定的属性配置,这里就不一一详细讲述。后面会根据特定图形专门讲解,下面主要介绍通用了一些属性配置;
属性名 | 属性类型 | 属性详情 |
---|---|---|
type | String | 展示图表类型 |
name | String | 系列名称,用于tooltip的显示 |
data | Array | 系列中的数据内容数组。数组项通常为具体的数据项。 |
xAxisIndex | Number | 使用的 x 轴的 index,在单个图表实例中存在多个 x 轴的时候有用。 |
yAxisIndex | Number | 使用的 y 轴的 index,在单个图表实例中存在多个 y轴的时候有用。 |
label | Object | 图形上的文本标签,可用于说明图形的一些数据信息文档链接 |
itemStyle | Object | 折线拐点标志的样式。同textStyle |
lineStyle | Object | 线条样式。文档链接 |
areaStyle | Object | 区域填充样式。设置后显示成区域面积图。文档链接 |
用于鼠标滑过显示提示信息。
其他配置详情请见官网文档
属性名 | 属性类型 | 属性详情 |
---|---|---|
show | Boolean | 是否显示 |
trigger | String | 触发类型 |
showContent | Boolean | 是否显示提示框浮层 |
alwaysShowContent | Boolean | 是否永远显示提示框内容 |
triggerOn | String | 提示框触发条件 |
position | String、Array、Function | 提示框浮层的位置,默认不设置时位置会跟随鼠标的位置。 |
formatter | String、Function | 提示框内容格式器 |
valueFormatter | String、Function | tooltip中数值部门的格式化回调函数 |
textStyle | Object | 提示框浮层的文本样式,同TextStyle |
backgroundColor | String | 提示框背景颜色 |
工具栏。内置有导出图片,数据视图,动态类型切换,数据区域缩放,重置五个工具。
其他配置详情请见官网文档
属性名 | 属性类型 | 属性详情 |
---|---|---|
show | Boolean | 是否显示 |
orient | String | 工具栏icon的布局朝向 |
itemSize | Number | 工具栏icon的大小 |
showTitle | Boolean | 是否在鼠标 hover 的时候显示每个工具 icon 的标题。 |
feature | Object | 各工具配置项。文档链接 |
iconStyle | Object | 公用的 icon 样式设置。文档链接 |
tooltip | Object | 工具箱的 tooltip 配置,配置项同 tooltip |
top、right、bottom、right | String | 文本距离容器四侧的位置 |