Echarts数据可视化基础配置
ECharts是由百度打造的一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器,底层依赖矢量图形库 ZRender,提供直观,交互丰富,可高度个性化定制的数据可视化图表。

0.常见的数据可视化库:
D3目前Web 端评价最高的Javascript 可视化工具库(入手难)
ECharts一个开源 Javascript 数据可视化库上手简单,案例多
Highcharts国外的前端数据可视化库,非商用免费,被许多国外大公司所使用
AntV蚂蚁金服全新一代数据可视化解决方案
Highcharts 和 Echarts的关系相当于是 Office 和 WPS 的关系
1.ECharts官网:https://echarts.apache.org/
2.ECharts特点:
1)ECharts是一个JS插件
2)ECharts性能好可流畅运行PC与移动设备
3)ECharts兼容主流浏览器
4)ECharts提供很多常用图表,且可定制。比如:折线图、柱状图、散点图、饼图、K线图等等
一、ECharts使用五部曲:
1.引入echarts包
<script src="js/echarts.min.js"></script>
2.准备一个DOM容器有大小
<div class="chart"></div>
3.初始化echarts实例对象
let myChart = echarts.init(document.querySelector('.chart'));4.指定配置项和数据(option)
var option = {
xAxis: {
type: 'category',
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
yAxis: {
type: 'value'
},
series: [{
data: [820, 932, 901, 934, 1290, 1330, 1320],
type: 'line'
}]
};5.将配置项设置给echarts实例对象
myChart.setOption(option);
二、基础配置
需要了解的主要配置:series xAxis yAxis grid tooltip title legend color
series
系列列表。每个系列通过 type 决定自己的图表类型
大白话:图标数据,指定什么类型的图标,可以多个图表重叠。
xAxis:直角坐标系 grid 中的 x 轴
boundaryGap: 坐标轴两边留白策略 true,这时候刻度只是作为分隔线,标签和数据点都会在两个刻度之间的带(band)中间。
yAxis:直角坐标系 grid 中的 y 轴
grid:直角坐标系内绘图网格。
title:标题组件
tooltip:提示框组件
legend:图例组件
color:调色盘颜色列表
数据堆叠,同个类目轴上系列配置相同的stack值后 后一个系列的值会在前一个系列的值上相加。
看下面的例子,你就懂了:
option = {
// color设置我们线条的颜色 注意后面是个数组
color: ['pink', 'red', 'green', 'skyblue'],
// 设置图表的标题
title: {
text: '折线图堆叠123'
},
// 图表的提示框组件
tooltip: {
// 触发方式
trigger: 'axis'
},
// 图例组件
legend: {
// series里面有了 name值则 legend里面的data可以删掉
},
// 网格配置 grid可以控制线形图 柱状图 图表大小
grid: {
left: '3%',
right: '4%',
bottom: '3%',
// 是否显示刻度标签 如果是true 就显示 否则反之
containLabel: true
},
// 工具箱组件 可以另存为图片等功能
toolbox: {
feature: {
saveAsImage: {}
}
},
// 设置x轴的相关配置
xAxis: {
type: 'category',
// 是否让我们的线条和坐标轴有缝隙
boundaryGap: false,
data: ['星期一', '周二', '周三', '周四', '周五', '周六', '周日']
},
// 设置y轴的相关配置
yAxis: {
type: 'value'
},
// 系列图表配置 它决定着显示那种类型的图表
series: [
{
name: '邮件营销',
type: 'line',
data: [120, 132, 101, 134, 90, 230, 210]
},
{
name: '联盟广告',
type: 'line',
data: [220, 182, 191, 234, 290, 330, 310]
},
{
name: '视频广告',
type: 'line',
data: [150, 232, 201, 154, 190, 330, 410]
},
{
name: '直接访问',
type: 'line',
data: [320, 332, 301, 334, 390, 330, 320]
}
]
};三、根据需求定制图表
1.修改图表颜色大小
color: ["#2f89cf"],
grid: {
left: "0%",
top: "10px",
right: "0%",
bottom: "4%",
containLabel: true
},2.X轴相关设置 xAxis
文本颜色设置为 rgba(255,255,255,.6) 字体大小为 12px
X轴线的样式 不显示
// 设置x轴标签文字样式
// x轴的文字颜色和大小
axisLabel: {
color: "rgba(255,255,255,.6)",
fontSize: "12"
},
// x轴样式不显示
axisLine: {
show: false
// 如果想要设置单独的线条样式
lineStyle: {
color: "rgba(255,255,255,.1)",
width: 1,
type: "solid"
}
}3.Y 轴相关定制 yAxis
yAxis: [
{
type: "value",
// 修改刻度标签 相关样式
axisLabel: {
color: "rgba(255,255,255,.6) ",
fontSize: 12
},
// y轴的线条改为了 2像素
axisLine: {
lineStyle: {
color: "rgba(255,255,255,.1)",
width: 2
}
},
// y轴分割线的颜色
splitLine: {
lineStyle: {
color: "rgba(255,255,255,.1)"
}
}
}
],4.修改柱形为圆角以及柱子宽度 series 里面设置
series: [
{
name: "直接访问",
type: "bar",
// 修改柱子宽度
barWidth: "35%",
data: [10, 52, 200, 334, 390, 330, 220],
itemStyle: {
// 修改柱子圆角
barBorderRadius: 5
}
}
]
};5.让图表跟随屏幕自适应
window.addEventListener("resize", function() {
myChart.resize();
});更多详细配置查看手册:https://echarts.apache.org/zh/option.html
原文地址:https://tangjiusheng.cn/js/201.html
