前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Echarts 折线图完全配置指南 - 手把手教你设置 Echarts 折线图详细教程

Echarts 折线图完全配置指南 - 手把手教你设置 Echarts 折线图详细教程

原创
作者头像
蒋川
发布2022-03-29 03:28:47
11.6K0
发布2022-03-29 03:28:47
举报
文章被收录于专栏:卡拉云
Echarts 折线图完全配置指南 - 手把手教你设置 Echarts 折线图详细教程
Echarts 折线图完全配置指南 - 手把手教你设置 Echarts 折线图详细教程

本文首发:《Echarts 折线图完全配置指南

Echarts 折线图是图表中最常用的显示形式之一。使用 Echarts 做出基本的折线图很简单,但要是想把多组数据放在一张图表中,展示的漂亮又直观就不容易了。本文将带领大家从最基本的折线图,一步步完善,最终做出可读性很高的可视化图表。

01-change-line
01-change-line

根据本教程在卡拉云中搭建的折线图 Demo,你可以立即注册卡拉云,跟随本教程学习

跟随本教程你将学到

1.折线外观属性

  • 折线增加弧线平滑过渡
  • 折线图变为散状圆点
  • 实线改为虚线
  • 折线指定颜色
  • 增加数据显示
  1. 表格外观属性
  • 鼠标滑过时,显示数据提示框
  • 鼠标滑过时,显示十字准心指示器
  • 鼠标滑过数据自动吸附
  • 设置 X 轴、Y 轴颜色
  • 设置 X 轴标签 45 度斜着显示
  • 设置图表背景颜色
  • 设置下载图表的功能键

Echarts 折线图基础配置

02-line-first
02-line-first

本文使用低代码开发工具卡拉云作为 Echarts 折线图的演示工具,卡拉云内置包括 Echarts 图表组件在内数十种常见的前端组件,仅需拖拽即可生成。你无需懂任何前端知识,也可以快速开发出属于自己的后台工具。详情请见本文文末。

我们从这个最简单的折线图入手,手把手教大家一步步学习。

代码语言:txt
复制
option = {
            title: {
          text: '卡拉云新用户激活数据',
          subtext: 'Demo 虚构数据',
          x: 'center'
        },

        legend: {
          orient: 'horizontal',
          x: 'left',
          y: 'top',
          data: ['猜想','预期','实际']
        },
        grid: {
            top: '20%',  
            left: '3%', 
            right: '10%',
            bottom: '5%',
            containLabel: true
        },
        xAxis: {
          name: '月份',
          type: 'category',
          data: ['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月',]
        },
        yAxis: {
          name: '人次',
          type: 'value',
          min:0, // 配置 Y 轴刻度最小值
          max:4000,  // 配置 Y 轴刻度最大值
          splitNumber:7,  // 配置 Y 轴数值间隔
        },

        series: [ // 多组折线图数据
          {
            name: '猜想',
            data: [454,226,891,978,901,581,400,543,272,955,1294,1581],
            type: 'line'         
          },

          {
            name: '预期',
            data: [2455,2534,2360,2301,2861,2181,1944,2197,1745,1810,2283,2298],
            type: 'line',
          },

          {
            name: '实际',
            data: [1107,1352,1740,1968,1647,1570,1343,1757,2547,2762,3170,3665],
            type: 'line'
          }
        ],
        color: ['#3366CC', '#FFCC99','#99CC33']
      }

扩展阅读:《最好用的 7 款 Vue 富文本编辑器

Echarts 折线图的多种展示形式配置指南

03-line
03-line
  • 「猜想」折线改为散状圆点
  • 「猜想」折线圆点根据数据大小变化尺寸
  • 「猜想」折线隐藏线段部分
  • 「预期」折线改为虚线
  • 「实际」折线改为弧度过度
  • Echarts legend 属性配置(图例配置选项)
  • Echarts grid 属性配置(图表上下左右边缘的距离)

在卡拉云的图表组件中填入代码:

代码语言:txt
复制
option = {

  title: {
          text: '卡拉云新用户激活数据',
          subtext: 'Demo 虚构数据',
          x: 'center'
        },

        legend: { // 图例配置选项
          orient: 'horizontal', //图例布局方式:水平 'horizontal' 、垂直 'vertical'
          x: 'left', // 横向放置位置,选项:'center'、'left'、'right'、'number'(横向值 px)
          y: 'top',// 纵向放置位置,选项:'top'、'bottom'、'center'、'number'(纵向值 px)
          data: ['猜想','预期','实际']
        },
         grid: {  // 图表距离边框的距离,可用百分比和数字(px)配置
            top: '20%',  
            left: '3%', 
            right: '10%',
            bottom: '5%',
            containLabel: true
        },

        xAxis: {
          name: '月份',
          type: 'category',
          data: ['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月',]
        },

        yAxis: {
          name: '人次',
          type: 'value',
          min:0, // 配置 Y 轴刻度最小值
          max:4000,  // 配置 Y 轴刻度最大值
          splitNumber:7,  // 配置 Y 轴数值间隔
        },

        series: [
          {
            name: '猜想',
            data: [454,226,891,978,901,581,400,543,272,955,1294,1581],
            type: 'line',
            symbolSize: function(value) {  // 点的大小跟随数值增加而变大
              return value / 150;
            },
            symbol:'circle',            
            itemStyle: {
              normal: { 
                label : {
                  show: true  
                },
                lineStyle:{
                  color: 'rgba(0,0,0,0)'// 折线颜色设置为0,即只显示点,不显示折线
                }
              }
            }
          },

          {
            name: '预期',
            data: [2455,2534,2360,2301,2861,2181,1944,2197,1745,1810,2283,2298],
            type: 'line',
            symbolSize:8,  //设置折线上圆点大小
            itemStyle:{
              normal:{
                label : {
                show: true // 在折线拐点上显示数据
                },
                lineStyle:{                 
                  width:3,  // 设置虚线宽度
                  type:'dotted'  // 虚线'dotted' 实线'solid'
                }
              }
            }
          },

          {
            name: '实际',
            data: [1107,1352,1740,1968,1647,1570,1343,1757,2547,2762,3170,3665],
            type: 'line',
            symbol: 'circle', // 实心圆点
            smooth: 0.5, // 设置折线弧度
          }
        ],
        color: ['#3366CC', '#FFCC99','#99CC33'] // 三个折线的颜色
}

扩展阅读:《12 款最棒 Vue 开源 UI 库测评 - 特别针对国内使用场景推荐

Echarts 折线图全局配置指南

04-echarts-line
04-echarts-line
  • 鼠标滑过时,显示数据提示框
  • 鼠标滑过时,显示十字准心指示器
  • 设置 X 轴、Y 轴颜色
  • 设置 X 轴标签 45 度斜着显示
  • 设置图表背景颜色
  • 设置下载图表的功能键

在卡拉云的图表组件中填入代码:

代码语言:txt
复制
option = {

  title: {
          text: '卡拉云新用户激活数据',
          subtext: 'Demo 虚构数据',
          x: 'center'
        },

        legend: { // 图例配置选项
          orient: 'horizontal', //图例布局方式:水平 'horizontal' 、垂直 'vertical'
          x: 'left', // 横向放置位置,选项:'center'、'left'、'right'、'number'(横向值 px)
          y: 'top',// 纵向放置位置,选项:'top'、'bottom'、'center'、'number'(纵向值 px)
          data: ['猜想','预期','实际']
        },
         grid: { // 图表距离边框的距离,可用百分比和数字(px)配置
            top: '20%',  
            left: '3%', 
            right: '10%',
            bottom: '5%',
            containLabel: true
        },

        tooltip: {  // tooltip 用于控制鼠标滑过或点击时的提示框(下一章展开讲)
          trigger: 'axis',  
          axisPointer: { // 坐标轴指示器配置项。  
            type: 'cross', // 'line' 直线指示器  'shadow' 阴影指示器  'none' 无指示器  'cross' 十字准星指示器。 
            axis: 'auto', // 指示器的坐标轴。   
            snap: true, // 坐标轴指示器是否自动吸附到点上  
           }, 
          showContent: true,  
        },  
        toolbox: {   // 右上角的工具框(下一章展开讲)
            feature: {  
                saveAsImage: {} //下载按钮
            } 
        },

        xAxis: {
          name: '月份',
          type: 'category',
          axisLine: { 
            lineStyle: { // X 轴颜色配置
              color: '#3366CC'  
            } 
          },  
          axisLabel: {  
            rotate: 45, // X 轴标签文字旋转角度  
            interval: 0  //设置 X 轴数据间隔几个显示一个,为0表示都显示 
            },  
          boundaryGap: false, //数据从 Y 轴起始
          data: ['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月',]
        },

        yAxis: {
          name: '人次',
          type: 'value',
          min:0, // 配置 Y 轴刻度最小值
          max:4000,  // 配置 Y 轴刻度最大值
          splitNumber:7,  // 配置 Y 轴数值间隔
          axisLine: { 
            lineStyle: {   // Y 轴颜色配置
              color: '#3366CC'  
            } 
          },
        },

        series: [
          {
            name: '猜想',
            data: [454,226,891,978,901,581,400,543,272,955,1294,1581],
            type: 'line',
            symbolSize: function(value) {  // 点的大小跟随数值增加而变大
              return value / 150;
            },
            symbol:'circle',            
            itemStyle: {
              normal: { 
                label : {
                  show: true  
                },
                lineStyle:{
                  color: 'rgba(0,0,0,0)'// 折线颜色设置为0,即只显示点,不显示折线
                }
              }
            }
          },

          {
            name: '预期',
            data: [2455,2534,2360,2301,2861,2181,1944,2197,1745,1810,2283,2298],
            type: 'line',
            symbolSize:8,  //设置折线上圆点大小
            itemStyle:{
              normal:{
                label : {
                show: true // 在折线拐点上显示数据
                },
                lineStyle:{                 
                  width:3,  // 设置虚线宽度
                  type:'dotted'  // 虚线'dotted' 实线'solid'
                }
              }
            }
          },

          {
            name: '实际',
            data: [1107,1352,1740,1968,1647,1570,1343,1757,2547,2762,3170,3665],
            type: 'line',
            symbol: 'circle', // 实心圆点
            smooth: 0.5, // 设置折线弧度
          }
        ],
        color: ['#3366CC', '#FFCC99','#99CC33'] // 三个折线的颜色
}

扩展阅读:《顶级好用的 5 款 Vue table 表格组件测评与推荐

Echarts toolbox 更多属性配置

代码语言:txt
复制
toolbox={
    show : true,        //是否显示工具栏组件
    orient:"horizontal",        //工具栏 icon 的布局朝向'horizontal' 'vertical'
    itemSize:15,              //工具栏 icon 的大小
    itemGap:10,             //工具栏 icon 每项之间的间隔
    showTitle:true,         //是否在鼠标 hover 的时候显示每个工具 icon 的标题
    feature : {
        mark : {                                 // '辅助线开关'
            show: true
        },
        dataView : {                            //数据视图工具,可以展现当前图表所用的数据,编辑后可以动态更新
            show: true,                         //是否显示该工具。
            title:"数据视图",
            readOnly: false,                    //是否不可编辑(只读)
            lang: ['数据视图', '关闭', '刷新'],  //数据视图上有三个话术,默认是['数据视图', '关闭', '刷新']
            backgroundColor:"#fff",             //数据视图浮层背景色。
            textareaColor:"#fff",               //数据视图浮层文本输入区背景色
            textareaBorderColor:"#333",         //数据视图浮层文本输入区边框颜色
            textColor:"#000",                    //文本颜色。
            buttonColor:"#c23531",              //按钮颜色。
            buttonTextColor:"#fff",             //按钮文本颜色。
        },
        magicType: {                       //动态类型切换
            show: true,
            title:"切换",                   //各个类型的标题文本,可以分别配置。
            type: ['line', 'bar'],          //启用的动态类型,包括'line'(切换为折线图), 'bar'(切换为柱状图), 'stack'(切换为堆叠模式), 'tiled'(切换为平铺模式)
        },
        restore : {                         //配置项还原。
            show: true,                     //是否显示该工具。
            title:"还原",
        },
        saveAsImage : {                      //保存为图片。
            show: true,                      //是否显示该工具。
            type:"png",                     //保存的图片格式。支持 'png' 和 'jpeg'。
            name:"pic1",                    //保存的文件名称,默认使用 title.text 作为名称
            backgroundColor:"#ffffff",      //保存的图片背景色,默认使用 backgroundColor,如果backgroundColor不存在的话会取白色
            title:"保存为图片",
            pixelRatio:1                 //保存图片的分辨率比例,默认跟容器相同大小,如果需要保存更高分辨率的,可以设置为大于 1 的值,例如 2
        },
        dataZoom :{                      //数据区域缩放。目前只支持直角坐标系的缩放
            show: true,                  //是否显示该工具。
            title:"缩放",                //缩放和还原的标题文本
            xAxisIndex:0,               //指定哪些 xAxis 被控制。如果缺省则控制所有的x轴。如果设置为 false 则不控制任何x轴。如果设置成 3 则控制 axisIndex 为 3 的x轴。如果设置为 [0, 3] 则控制 axisIndex 为 0 和 3 的x轴
            yAxisIndex:false,           //指定哪些 yAxis 被控制。如果缺省则控制所有的y轴。如果设置为 false 则不控制任何y轴。如果设置成 3 则控制 axisIndex 为 3 的y轴。如果设置为 [0, 3] 则控制 axisIndex 为 0 和 3 的y轴
        },
    },
    zlevel:0,            //所属图形的Canvas分层,zlevel 大的 Canvas 会放在 zlevel 小的 Canvas 的上面
    z:2,                 //所属组件的z分层,z值小的图形会被z值大的图形覆盖
    left:"center",      //组件离容器左侧的距离,'left', 'center', 'right','20%'
    top:"top",          //组件离容器上侧的距离,'top', 'middle', 'bottom','20%'
    right:"auto",      //组件离容器右侧的距离,'20%'
    bottom:"auto",    //组件离容器下侧的距离,'20%'
    width:"auto",    //图例宽度
    height:"auto",   //图例高度
};

扩展阅读:《最好用的 7 款 Vue admin 后台管理框架测评

Echarts tooltip 更多属性配置

代码语言:txt
复制
    tooltip: {
                show: true, // 是否显示
                trigger: 'axis', // 触发类型  'item'图形触发:散点图,饼图等无类目轴的图表中使用; 'axis'坐标轴触发;'none':什么都不触发。

                axisPointer: { // 坐标轴指示器配置项。
                    type: 'shadow', // 'line' 直线指示器  'shadow' 阴影指示器  'none' 无指示器  'cross' 十字准星指示器。
                    axis: 'auto', // 指示器的坐标轴。 
                    snap: true, // 坐标轴指示器是否自动吸附到点上
                },

                // showContent: true, //是否显示提示框浮层,默认显示。
                // triggerOn: 'mouseover', // 触发时机  'mouseover'鼠标移动时触发。     'click'鼠标点击时触发。  'mousemove|click'同时鼠标移动和点击时触发。
                // enterable: false, // 鼠标是否可进入提示框浮层中,默认为false,如需详情内交互,如添加链接,按钮,可设置为 true。
                renderMode: 'html', // 浮层的渲染模式,默认以 'html 即额外的 DOM 节点展示 tooltip;
                backgroundColor: 'rgba(50,50,50,0.7)', // 提示框浮层的背景颜色。
                borderColor: '#333', // 提示框浮层的边框颜色。
                borderWidth: 0, // 提示框浮层的边框宽。
                padding: 5, // 提示框浮层内边距,
                textStyle: { // 提示框浮层的文本样式。
                    color: '#fff',
                    fontStyle: 'normal',
                    fontWeight: 'normal',
                    fontFamily: 'sans-serif',
                    fontSize: 14,
                },
                extraCssText: 'box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);', // 额外附加到浮层的 css 样式
                confine: false, // 是否将 tooltip 框限制在图表的区域内。
                // formatter: '{b} 的成绩是 {c}'
                formatter: function(arg) {
                    return arg[0].name + '的分数是:' + arg[0].data
                }
            },

扩展阅读:《最好用的 6 款 Vue 拖拽组件库推荐

使用「卡拉云」直接生成折线图、柱状图、饼状图

本文介绍了 Echarts 折线图各种配置细节,从简到难,循序渐进。虽然 Echarts 的教程很多,但配置前端的工作总是有太多重复劳动,那么有没有一种完全不用会前端,一行代码也不用写的方法,生成图表呢?这里推荐你使用卡拉云,卡拉云内置多种样式的图表,仅需鼠标拖拽即可生成,完全不用懂任何前端。

03-kalacloud-charts
03-kalacloud-charts

卡拉云是新一代低代码开发工具,免安装部署,可一键接入包括 MySQL 在内的常见数据库及 API。可根据自己的工作流,定制开发。无需繁琐的前端开发,只需要简单拖拽,即可快速搭建企业内部工具。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Echarts 折线图基础配置
  • Echarts 折线图的多种展示形式配置指南
  • Echarts 折线图全局配置指南
  • Echarts toolbox 更多属性配置
  • Echarts tooltip 更多属性配置
  • 使用「卡拉云」直接生成折线图、柱状图、饼状图
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档