下面给大家分享一下ECharts的几种功能,循序渐进地实现一个复杂的曲线图。

V1.0:

代码:

let option = {title: { text: 'V1.0' },legend: { data:['销量'] },// x轴的数据xAxis: {data: ["王","胡歌","曾小贤","吕小布","关谷神奇","阿不思.邓布利多"],axisLabel:{ interval: 0 }},yAxis: {},// 可用于指定统计图类型series: [{name: '销量',type: 'line',smooth: true,data: [5, 20, 36, 10, 30, 190]}]
}

效果图:

设置双x轴:

代码:

let option = {title: { text: '设置双x轴' },legend: { data:['销量'] },// x轴的数据xAxis: [{data: ["王","胡歌","曾小贤","吕小布","关谷神奇","阿不思.邓布利多"],axisLabel:{ interval: 0 }}, {data: ["王","胡歌","曾小贤","吕小布","关谷神奇","阿不思.邓布利多"],axisLabel:{ interval: 0 },position: 'bottom',// 很重要,如果没有这个设置,默认第二个x轴就会在图表的顶部offset: 40,// X 轴相对于默认位置的偏移,在相同的 position 上有多个 X 轴的时候有用}],yAxis: {},// 可用于指定统计图类型series: [{name: '销量',type: 'line',smooth: true,data: [5, 20, 36, 10, 30, 190]}]
}

position: 很重要,设置第二条x轴相对于图表的位置,如果没有这个设置,默认第二个x轴就会在图表的顶部
offset: x轴相对于默认位置的偏移,在相同的 position 上有多个x轴的时候有用,值越大距离第一条x轴就越远
效果图:

优化双x轴:

代码:

let option = {title: { text: '优化双x轴' },legend: { data:['销量'] },grid: { bottom: '40%' },// 组件离容器下侧的距离,值可以是像 20 这样的具体像素值,也可以是像 '20%' 这样相对于容器高宽的百分比// x轴的数据xAxis: [{data: ["王","胡歌","曾小贤","吕小布","关谷神奇","阿不思.邓布利多"],axisLabel:{interval: 0,rotate: 60// 倾斜角度}}, {data: ["王","胡歌","曾小贤","吕小布","关谷神奇","阿不思.邓布利多"],axisLabel:{ interval: 0 },position: 'bottom',// 很重要,如果没有这个设置,默认第二个x轴就会在图表的顶部offset: 90,// X 轴相对于默认位置的偏移,在相同的 position 上有多个 X 轴的时候有用type: 'category',// 坐标轴类型axisTick:{ show: false },// 是否显示坐标轴刻度axisLine:{ show: false },// 是否显示坐标轴轴线}],yAxis: {},// 可用于指定统计图类型series: [{name: '销量',type: 'line',smooth: true,data: [5, 20, 36, 10, 30, 190]}]
}

grid: { bottom: ‘40%’ },// 组件离容器下侧的距离,值可以是像 20 这样的具体像素值,也可以是像 ‘20%’ 这样相对于容器高宽的百分比
rotate: 倾斜角度
type: 坐标轴类型

  • ‘value’ 数值轴,适用于连续数据。
  • ‘category’ 类目轴,适用于离散的类目数据。为该类型时类目数据可自动从 series.data 或 dataset.source 中取,或者可通过 xAxis.data 设置类目数据。
  • ‘time’ 时间轴,适用于连续的时序数据,与数值轴相比时间轴带有时间的格式化,在刻度计算上也有所不同,例如会根据跨度的范围来决定使用月,星期,日还是小时范围的刻度。
  • ‘log’ 对数轴。适用于对数数据。

axisTick: 是否显示坐标轴刻度
axisLine: 是否显示坐标轴轴线
效果图:

x轴添加滚动条:

代码:

let option = {title: { text: 'x轴添加滚动条' },legend: { data:['销量'] },grid: { bottom: '40%' },// 组件离容器下侧的距离,值可以是像 20 这样的具体像素值,也可以是像 '20%' 这样相对于容器高宽的百分比// x轴的数据xAxis: [{data: ["王","胡歌","曾小贤","吕小布","关谷神奇","阿不思.邓布利多","王","胡歌","曾小贤","吕小布","关谷神奇","邓布利多","王","胡歌","曾小贤","吕小布","关谷神奇","邓布利多"],axisLabel:{interval: 0,rotate: 60// 倾斜角度}}, {data: ["王","胡歌","曾小贤","吕小布","关谷神奇","阿不思.邓布利多","王","胡歌","曾小贤","吕小布","关谷神奇","邓布利多","王","胡歌","曾小贤","吕小布","关谷神奇","邓布利多"],axisLabel:{ interval: 0 },position: 'bottom',// 很重要,如果没有这个设置,默认第二个x轴就会在图表的顶部offset: 90,// X 轴相对于默认位置的偏移,在相同的 position 上有多个 X 轴的时候有用type: 'category',// 坐标轴类型axisTick:{ show: false },// 是否显示坐标轴刻度axisLine:{ show: false },// 是否显示坐标轴轴线}],// dataZoom 组件 用于区域缩放,从而能自由关注细节的数据信息,或者概览数据整体,或者去除离群点的影响。也就是实现滚动条的组件dataZoom: {start: 0,// 数据窗口范围的起始百分比。范围是:0 ~ 100。表示 0% ~ 100%。dataZoom-slider.start 和 dataZoom-slider.end 共同用 百分比 的形式定义了数据窗口范围height: 10,// 组件的高度。水平布局默认 30,竖直布局默认自适应。比 top 和 bottom 优先级高left: '10%',// 组件离容器左侧的距离right: '10%',// 组件离容器右侧的距离},yAxis: {},// 可用于指定统计图类型series: [{name: '销量',type: 'line',smooth: true,data: [5, 20, 36, 10, 30, 190, 5, 20, 36, 10, 30, 190, 5, 20, 36, 10, 30, 190]}]
}

dataZoom: 组件,用于区域缩放,从而能自由关注细节的数据信息,或者概览数据整体,或者去除离群点的影响。也就是实现滚动条的组件
start: 数据窗口范围的起始百分比。范围是:0 ~ 100。表示 0% ~ 100%。dataZoom-slider.start 和 dataZoom-slider.end 共同用 百分比 的形式定义了数据窗口范围
height: 组件的高度。水平布局默认 30,竖直布局默认自适应。比 top 和 bottom 优先级高
left: ‘10%’,// 组件离容器左侧的距离。left 的值可以是像 20 这样的具体像素值,可以是像 ‘20%’ 这样相对于容器高宽的百分比,也可以是 ‘left’, ‘center’, ‘right’。如果 left 的值为’left’, ‘center’, ‘right’,组件会根据相应的位置自动对齐
right: ‘10%’,// 组件离容器右侧的距离。right 的值可以是像 20 这样的具体像素值,可以是像 ‘20%’ 这样相对于容器高宽的百分比。默认自适应
效果图:

优化滚动条:

代码:

let option = {title: { text: '优化滚动条' },legend: { data:['销量'] },grid: { bottom: '40%' },// 组件离容器下侧的距离,值可以是像 20 这样的具体像素值,也可以是像 '20%' 这样相对于容器高宽的百分比// x轴的数据xAxis: [{data: ["王","胡歌","曾小贤","吕小布","关谷神奇","阿不思.邓布利多","王","胡歌","曾小贤","吕小布","关谷神奇","邓布利多","王","胡歌","曾小贤","吕小布","关谷神奇","邓布利多"],axisLabel:{interval: 0,rotate: 60// 倾斜角度}}, {data: ["王","胡歌","曾小贤","吕小布","关谷神奇","阿不思.邓布利多","王","胡歌","曾小贤","吕小布","关谷神奇","邓布利多","王","胡歌","曾小贤","吕小布","关谷神奇","邓布利多"],axisLabel:{ interval: 0 },position: 'bottom',// 很重要,如果没有这个设置,默认第二个x轴就会在图表的顶部offset: 90,// X 轴相对于默认位置的偏移,在相同的 position 上有多个 X 轴的时候有用type: 'category',// 坐标轴类型axisTick:{ show: false },// 是否显示坐标轴刻度axisLine:{ show: false },// 是否显示坐标轴轴线}],// dataZoom 组件 用于区域缩放,从而能自由关注细节的数据信息,或者概览数据整体,或者去除离群点的影响。也就是实现滚动条的组件dataZoom: {start: 0,// 数据窗口范围的起始百分比。范围是:0 ~ 100。表示 0% ~ 100%。dataZoom-slider.start 和 dataZoom-slider.end 共同用 百分比 的形式定义了数据窗口范围height: 0,// 组件的高度。指的不是滚动条本身,而是滚动条下面的组件。水平布局默认 30,竖直布局默认自适应。比 top 和 bottom 优先级高left: '10%',// 组件离容器左侧的距离right: '10%',// 组件离容器右侧的距离bottom: 30,// 组件离容器下侧的距离。bottom 的值可以是像 20 这样的具体像素值,可以是像 '20%' 这样相对于容器高宽的百分比。默认自适应startValue: 0,// 数据窗口范围的起始数值。如果设置了 dataZoom-slider.start 则 startValue 失效endValue: 6,// 很重要,页面展示的x轴数据量,6表示页面只有6+1=7条数据,总数据量超过7条滚动条就开始起作用了。数据窗口范围的结束数值。如果设置了 dataZoom-slider.end 则 endValue 失效show: true,// 很重要,是否显示组件。如果设置为false,滚动条就没有了,但是数据过滤的功能还存在。默认值是truerealtime: true,// 很重要,拖动时,是否实时更新图表的视图。如果设置为 false,则只在拖拽结束的时候更新。默认值是truebackgroundColor: '#ddd',// 组件的背景颜色handleStyle: {borderColor: '#cacaca',// 图形的描边颜色。支持的颜色格式同 color,不支持回调函数borderWidth: '1',// 描边线宽。为 0 时无描边shadowBlur: 2,// 图形阴影的模糊大小。该属性配合 shadowColor,shadowOffsetX, shadowOffsetY 一起设置图形的阴影效果shadowColor: '#ddd',// 阴影颜色。也就是滚动条左右两个小点的颜色},showDataShadow: false,// 很重要,是否在 dataZoom-silder 组件中显示数据阴影。数据阴影可以简单地反应数据走势。默认值是auto,也就是有数据阴影showDetail: false,// 很重要,是否显示detail,即拖拽时候滚动条左右是否显示详细数据信息。默认值是truexAxisIndex: [0, 1],// 很重要,设置滚动条控制的x轴,[0,1]表示它控制了第一条和第二条x轴,[0]表现为第二条x轴没有滚动条,所有数据都会展示在页面},yAxis: {},// 可用于指定统计图类型series: [{name: '销量',type: 'line',smooth: true,data: [5, 20, 36, 10, 30, 190, 5, 20, 36, 10, 30, 190, 5, 20, 36, 10, 30, 190]}]
}

bottom: 组件离容器下侧的距离。bottom 的值可以是像 20 这样的具体像素值,可以是像 ‘20%’ 这样相对于容器高宽的百分比。默认自适应
startValue: 数据窗口范围的起始数值。如果设置了 dataZoom-slider.start 则 startValue 失效
endValue: 很重要,页面展示的x轴数据量,6表示页面只有6+1=7条数据,总数据量超过7条滚动条就开始起作用了。数据窗口范围的结束数值。如果设置了 dataZoom-slider.end 则 endValue 失效
show: 很重要,是否显示组件。如果设置为false,滚动条就没有了,但是数据过滤的功能还存在。默认值是true
realtime: 很重要,拖动时,是否实时更新图表的视图。如果设置为 false,则只在拖拽结束的时候更新。默认值是true
backgroundColor: 组件的背景颜色
borderColor: 图形的描边颜色。支持的颜色格式同 color,不支持回调函数
borderWidth: 描边线宽。为 0 时无描边
shadowBlur: 图形阴影的模糊大小。该属性配合shadowColor,shadowOffsetX,shadowOffsetY一起设置图形的阴影效果。示例:

{
shadowColor: ‘rgba(0, 0, 0, 0.5)’,
shadowBlur: 10
}

shadowColor: 阴影颜色。也就是滚动条左右两个小点的颜色
showDataShadow: 很重要,是否在 dataZoom-silder 组件中显示数据阴影。数据阴影可以简单地反应数据走势。默认值是auto,也就是有数据阴影
showDetail: 很重要,是否显示detail,即拖拽时候滚动条左右是否显示详细数据信息。默认值是true
xAxisIndex: 很重要,设置滚动条控制的x轴,不指定时,当 dataZoom-slider.orient 为 'horizontal’时,默认控制和 dataZoom 平行的第一个 xAxis。但是不建议使用默认值,建议显式指定。如果是 number 表示控制一个轴,如果是 Array 表示控制多个轴。示例:

option: {
xAxis: [
{…}, // 第一个 xAxis
{…}, // 第二个 xAxis
{…}, // 第三个 xAxis
{…} // 第四个 xAxis
],
dataZoom: [
{ // 第一个 dataZoom 组件
xAxisIndex: [0, 2] // 表示这个 dataZoom 组件控制 第一个 和 第三个 xAxis
},
{ // 第二个 dataZoom 组件
xAxisIndex: 3 // 表示这个 dataZoom 组件控制 第四个 xAxis
}
] }

效果图:

鼠标悬浮显示数据(V2.0):

代码:

let option = {title: { text: '鼠标悬浮显示数据(V2.0)' },legend: { data:['销量'] },grid: { bottom: '40%' },// 组件离容器下侧的距离,值可以是像 20 这样的具体像素值,也可以是像 '20%' 这样相对于容器高宽的百分比// x轴的数据xAxis: [{data: ["王","胡歌","曾小贤","吕小布","关谷神奇","阿不思.邓布利多","王","胡歌","曾小贤","吕小布","关谷神奇","邓布利多","王","胡歌","曾小贤","吕小布","关谷神奇","邓布利多"],axisLabel:{interval: 0,rotate: 60// 倾斜角度}}, {data: ["王","胡歌","曾小贤","吕小布","关谷神奇","阿不思.邓布利多","王","胡歌","曾小贤","吕小布","关谷神奇","邓布利多","王","胡歌","曾小贤","吕小布","关谷神奇","邓布利多"],axisLabel:{ interval: 0 },position: 'bottom',// 很重要,如果没有这个设置,默认第二个x轴就会在图表的顶部offset: 90,// X 轴相对于默认位置的偏移,在相同的 position 上有多个 X 轴的时候有用type: 'category',// 坐标轴类型axisTick:{ show: false },// 是否显示坐标轴刻度axisLine:{ show: false },// 是否显示坐标轴轴线}],// dataZoom 组件 用于区域缩放,从而能自由关注细节的数据信息,或者概览数据整体,或者去除离群点的影响。也就是实现滚动条的组件dataZoom: {start: 0,// 数据窗口范围的起始百分比。范围是:0 ~ 100。表示 0% ~ 100%。dataZoom-slider.start 和 dataZoom-slider.end 共同用 百分比 的形式定义了数据窗口范围height: 0,// 组件的高度。指的不是滚动条本身,而是滚动条下面的组件。水平布局默认 30,竖直布局默认自适应。比 top 和 bottom 优先级高left: '10%',// 组件离容器左侧的距离right: '10%',// 组件离容器右侧的距离bottom: 30,// 组件离容器下侧的距离。bottom 的值可以是像 20 这样的具体像素值,可以是像 '20%' 这样相对于容器高宽的百分比。默认自适应startValue: 0,// 数据窗口范围的起始数值。如果设置了 dataZoom-slider.start 则 startValue 失效endValue: 6,// 很重要,页面展示的x轴数据量,6表示页面只有6+1=7条数据,总数据量超过7条滚动条就开始起作用了。数据窗口范围的结束数值。如果设置了 dataZoom-slider.end 则 endValue 失效show: true,// 很重要,是否显示组件。如果设置为false,滚动条就没有了,但是数据过滤的功能还存在。默认值是truerealtime: true,// 很重要,拖动时,是否实时更新图表的视图。如果设置为 false,则只在拖拽结束的时候更新。默认值是truebackgroundColor: '#ddd',// 组件的背景颜色handleStyle: {borderColor: '#cacaca',// 图形的描边颜色。支持的颜色格式同 color,不支持回调函数borderWidth: '1',// 描边线宽。为 0 时无描边shadowBlur: 2,// 图形阴影的模糊大小。该属性配合 shadowColor,shadowOffsetX, shadowOffsetY 一起设置图形的阴影效果shadowColor: '#ddd',// 阴影颜色。也就是滚动条左右两个小点的颜色},showDataShadow: false,// 很重要,是否在 dataZoom-silder 组件中显示数据阴影。数据阴影可以简单地反应数据走势。默认值是auto,也就是有数据阴影showDetail: false,// 很重要,是否显示detail,即拖拽时候滚动条左右是否显示详细数据信息。默认值是truexAxisIndex: [0, 1],// 很重要,设置滚动条控制的x轴,[0,1]表示它控制了第一条和第二条x轴,[0]表现为第二条x轴没有滚动条,所有数据都会展示在页面},// 提示框组件,也就是实现鼠标悬浮显示数据的组件tooltip: {trigger: 'axis',// 触发类型,'axis'是坐标轴触发,主要在柱状图,折线图等会使用类目轴的图表中使用// 坐标轴指示器配置项,配置指示器类型等axisPointer: {type: 'shadow'// 指示器类型,'shadow'是阴影指示器}},yAxis: {},// 可用于指定统计图类型series: [{name: '销量',type: 'line',smooth: true,data: [5, 20, 36, 10, 30, 190, 5, 20, 36, 10, 30, 190, 5, 20, 36, 10, 30, 190]}]
}

tooltip: 提示框组件,也就是实现鼠标悬浮显示数据的组件,提示框组件可以设置在多种地方:

  • 可以设置在全局,即 tooltip
  • 可以设置在坐标系中,即 grid.tooltip、polar.tooltip、single.tooltip
  • 可以设置在系列中,即 series.tooltip
  • 可以设置在系列的每个数据项中,即 series.data.tooltip

trigger: 触发类型,可选:

  • ‘item’

数据项图形触发,主要在散点图,饼图等无类目轴的图表中使用。

  • ‘axis’

坐标轴触发,主要在柱状图,折线图等会使用类目轴的图表中使用。在 ECharts 2.x 中只支持类目轴上使用 axis trigger,在 ECharts 3 中支持在直角坐标系和极坐标系上的所有类型的轴。并且可以通过 axisPointer.axis 指定坐标轴。

  • ‘none’

什么都不触发。
axisPointer: 配置坐标轴指示器的快捷方式。实际上坐标轴指示器的全部功能,都可以通过轴上的 axisPointer 配置项完成(例如 xAxis.axisPointer 或 angleAxis.axisPointer)。但是使用 tooltip.axisPointer 在简单场景下会更方便一些。

注意: tooltip.axisPointer 中诸配置项的优先级低于轴上的 axisPointer 的配置项。

坐标轴指示器是指示坐标轴当前刻度的工具。
type: 指示器类型,可选:

  • ‘line’ 直线指示器
  • ‘shadow’ 阴影指示器
  • ‘none’ 无指示器
  • ‘cross’ 十字准星指示器。其实是种简写,表示启用两个正交的轴的 axisPointer。

效果图:

ECharts设置双x轴相关推荐

  1. echarts中设置双Y轴左右刻度线一致

    echarts中设置双Y轴左右刻度线一致 一.效果图 二.主要代码 一.效果图 二.主要代码 this.taskxAxis = []this.taskSeries = [[], []]taskInit ...

  2. echarts折线图怎么从y轴开始_基于echarts的双y轴实时更新折线图

    一款基于echarts的双y轴实时更新折线图效果,页面加载后开始自动更新数据并绘制对应的折线图,可以点击右上角的按钮:显示数据视图.刷新数据和将数据存储为png的图片. 查看演示 下载资源: 46 次 ...

  3. 14. echarts画双y轴

    用echarts实现双y轴,并且实现指定数据使用y轴 参考链接:https://blog.csdn.net/qq_44827865/article/details/107000180 在使用echar ...

  4. ECharts 示例——双Y轴

    当前ECharts版本为5.1.2. 概述 按照对ECharts双Y轴图进行如下设置: 两个Y轴共用1个X轴. 数据系列:修改柱子和折线颜色 数据标签:修改字体大小.样式 数据组件:使用dataset ...

  5. ECharts 示例——双Y轴(一)

    在使用echarts中,我们经常会用到双y轴去展示数据,有时候,我们可能需要自己去设置,具体使用某一个y轴去展示某一个具体的数据. 实现代码: option = {legend: {data: ['销 ...

  6. echarts实现双y轴,并且实现制定数据使用y轴

    在使用echarts中,我们经常会用到双y轴去展示数据,有时候,我们可能需要自己去设置,具体使用某一个y轴去展示某一个具体的数据.需要的效果如下: 1.那么需要配置多y轴,如下: 2.然后,在seri ...

  7. echarts 刻度 双y轴_ECharts 解决双Y轴刻度不一致问题

    若最大最小值固定,直接初始化设置option的yAxis的min和max属性值即可: 假设已知固定最大最小值为0和1. var option = { ... yAxis:[ { name: " ...

  8. echarts实现双y轴

    我们在一个折线图中展示多个数据的时候,如果两个数据的数量级相差很大,会造成数量级低的数据折线图被压缩成一条很直的线,如下图: 解决办法是使用双y轴: $scope.echart21 = {legend ...

  9. Apache POI 生成折线图+柱状图设置双Y轴并导出word文档

    实际项目中遇到的问题,相关信息实在较少,怕自己忘记,菜鸟记录一下 我设置的是双Y轴的组和图表.左侧为折线图Y轴,右侧为柱状图Y轴. 直接上代码. // An highlighted block pub ...

  10. Echarts 设置柱状图 y 轴最小刻度为1

    Echarts x轴文字显示不全.间隔显示问题 Echarts 饼图不显示 / 隐藏数据为 0 的展示项 在 Vue 中使用 Echarts 很常见,但实现起来有很多可以优化的小细节,这篇博客主要介绍 ...

最新文章

  1. 程序猿悲喜录:魔都,想说爱你不容易
  2. 【EntityFramework Core】实体实例化注入
  3. Windows下MongoDB的安装与设置MongoDB服务
  4. Java中字符串工具类继承org.apache.commons.lang3.StringUtils类代码
  5. Linux 查看日志关键字
  6. IDEA中引入Bootstrap并展示第一个模板
  7. configure 包,出现error: no acceptable C compiler found in $PATH 问题
  8. Open VSwitch简介
  9. 读取 [选项] 列内的默认数据的方法:
  10. 杀死提交的hadoop任务
  11. 计算机超级管理用户名,超级管理员设置及简介
  12. python语言实现图像的手绘效果
  13. 计算机所占比例的函数,(excel求百分比函数公式)excel所占比例怎么算
  14. 如何高效的利用谷歌学术搜索文献
  15. No operator matches the given name and argument types. You might need to add explicit type casts
  16. 微软的MSR paraphrase数据集
  17. UE4 使用自发光材质作为烘焙光源
  18. 天威诚信受邀参加第二届GIEC互联网文娱数字创新峰会
  19. 大数据面试题以及答案整理(面试必备)
  20. Linux(CentOS)下,各种协议,端口号

热门文章

  1. curl php 用途,PHP使用CURL详解
  2. 爬虫基础,搜索引擎原理(个人整理)
  3. 创新的原则(《创新与企业家精神》彼得·德鲁克)
  4. 汉庭季琦:我用IT精神打造传统产业
  5. c++ 迷宫思路_C++实现简单走迷宫的代码
  6. 10个免费的在线Markdown编辑器
  7. 单代号网络图计算例题_考点连载 |项目管理计算题考点五:解单代号网络计划图...
  8. 谷歌开源芯片 180 纳米制造工艺
  9. 什么是Xcelsius
  10. yolov3 darknet 中文标签 中文汉化