Echarts折线图绘制(一)
Echarts折线图绘制
1.前言:
在自己的website上需要使用到图表类绘制时,经常用到Echarts绘制一些可交互式的图表。鉴于每次写代码都要重新修改或者添加配置,文章将总结出大部分常用图表的基本配置和相应代码。
2.Line折线图绘制
2.1基础折线图
我们先来看看效果,如下图所示:
接下来我会给出一些配置的简单说明,可以根据需要自行修改。
全局配置
配置项 | 类型 | 描述 | 可选值 / 默认值 |
---|---|---|---|
title |
Object | 图表标题配置 | - |
tooltip |
Object | 提示框配置 | - |
legend |
Object | 图例配置 | - |
xAxis |
Object | X 轴配置 | - |
yAxis |
Object | Y 轴配置 | - |
series |
Array | 数据系列配置 | - |
title
配置
配置项 | 类型 | 描述 | 可选值 / 默认值 |
---|---|---|---|
text |
String | 标题文本 | 必填,默认为空 |
left |
String | 标题水平位置 | left / center / right ,默认 auto |
bottom |
String | 标题垂直位置(注释掉) | 单位支持像素、百分比,默认不设置 |
tooltip
配置
配置项 | 类型 | 描述 | 可选值 / 默认值 |
---|---|---|---|
trigger |
String | 触发类型 | axis / item ,默认 item (item是指当鼠标悬浮在某个具体的图表数据点时,显示提示框。axis是指坐标轴触发。鼠标悬浮在坐标轴上的任意点时,会显示与该轴相关的所有数据的提示框。) |
legend
配置
配置项 | 类型 | 描述 | 可选值 / 默认值 |
---|---|---|---|
data |
Array | 图例项的名称 | 必填,默认为空 |
top |
String | 图例的垂直位置 | 单位支持像素、百分比,默认 auto |
xAxis
/ yAxis
配置
配置项 | 类型 | 描述 | 可选值 / 默认值 |
---|---|---|---|
type |
String | 坐标轴类型 | value / category / time / log |
data |
Array | 类目轴的类目数据 | 仅对 category 轴有效 |
name |
String | 坐标轴名称 | 默认为空 |
axisLine |
Object | 是否显示坐标轴轴线 | { show: true / false } ,默认显示 |
axisTick |
Object | 是否显示坐标轴刻度 | { show: true / false } ,默认显示 |
splitLine |
Object | 是否显示分隔线 | { show: true / false } ,默认显示 |
series
配置
配置项 | 类型 | 描述 | 可选值 / 默认值 |
---|---|---|---|
name |
String | 系列名称 | 必填 |
data |
Array | 数据数组 | 必填 |
type |
String | 系列类型 | line / bar 等,默认为 line |
symbol |
String | 标记类型 | circle / rect / triangle 等,默认 circle |
symbolSize |
Number | 标记大小 | 默认 4 |
showSymbol |
Boolean | 是否显示标记 | 默认 true |
coordinateSystem |
String | 坐标系类型 | cartesian2d / polar 等,默认 cartesian2d |
stack |
String | 数据堆叠 | 同名堆叠 |
smooth | Boolean | 是否平滑折线 | 默认 false |
connectNulls |
Boolean | 是否连接空数据点 | 默认 false |
step |
Boolean | 是否使用阶梯线 | 默认 false |
配置项 | 类型 | 描述 | 可选值 / 默认值 |
---|---|---|---|
color |
String | 自定义线条颜色 | 默认使用调色盘 |
series配置中出现的stack,smooth,step我们单独绘制出来看看效果是怎么样的,注意,stack是数据堆叠,只有相同stack值的数据才会堆叠。
1 | <script> |
2.2阶梯折线图
阶梯图的示例如下
阶梯图JavaScript代码片段,复制粘贴即可修改
1 | <script> |
2.3平滑折线图
同样的,以下是平滑曲线示例
这是加入平滑配置后的JavaScript片段
1 | <script> |
2.4堆叠折线图
以下是堆叠图示例JavaScript代码片段
1 | <script> |
2.5基本面积图
如果希望折线下方被颜色填充,可以使用配置areaStyle区域填充样式。设置后显示成区域面积图。注意在xAxis中添加boundaryGap: false,目的是铺满边界
以下是基本面积图示例JavaScript代码片段,其中origin表示图形的起始区域,默认情况下,图形会从坐标轴轴线到数据间进行填充。如果需要填充的区域是坐标轴最大值到数据间,或者坐标轴最小值到数据间,或者某个数值到数据间则可以通过这个配置项进行设置。
可选值包括:
auto 填充坐标轴轴线到数据间的区域(默认值)
start 填充坐标轴底部(非 inverse 情况是最小值)到数据间的区域
end 填充坐标轴顶部(非 inverse 情况是最大值)到数据间的区域
number 填充指定数值到数据间的区域(从 v5.3.2 开始支持)
如果添加color配置,就会取消原有调色盘颜色,改为自定义颜色,但建议搭配series里的color一起设置。其实默认的就挺好看。
1 | <script> |
2.6堆叠面积图
当你学会了使用基本堆叠图后,堆叠面积图也不在话下。这里新加入了一个配置emphasis中的focus: ‘series’,这会在鼠标移入高亮图形时,选择是否淡出其它数据的图形已达到聚焦的效果。如果不需要这个效果,可以把series设置为none或者self,或者直接删掉也可以。
以下是堆叠图示例JavaScript代码片段
1 | <script> |
2.7渐变堆叠面积图
不多说,直接看效果
思路就是自定义喜欢的颜色,然后设置color中的new echarts.graphic.LinearGradient就可以了。
以下是JavaScript源码
1 | <script> |
3 最后
折线图内容较多,下期继续更新内容,拜拜