echarts 折线图小技巧

echarts 折线图功能丰富且官方文档详细易懂,上手比较容易,这篇文章将分享一些项目中踩过的坑,示例主要以多条曲线为主,对大家完成一些 曲线、tooltip 和 markline 的展示及交互有所帮助

基本使用

echarts文档 写得非常详细、清晰,官方示例也很丰富,gallery 中还有很多功能更强大的示例

tooltip篇

echarts 的 tooltip 是很强大友好的,样式优雅,内容可以自定,还可以通过配置项设定内容格式,结合 API[5] 绑定事件

要在图表中添加 tooltip,只需要增加以下配置项

tooltip: {
trigger: 'axis'
},

我们接下来一起看看 tooltip 的几个简单的配置(具体说明请参考官方文档):

tooltip: {
trigger: 'axis', //坐标轴触发,可设为 item 数据项图形触发
confine: true, //将 tooltip 框限制在图表的区域内,在移动端开发时非常有用
// position 可以自己设定 tooltip 的位置,下面例子是在老版本 echarts 不支持 confine 属性时写的一个当提示左侧超出画布时的限制函数
position: function(point, params, dom, rect, size){
if(dom.contentSize.width+20>point[0]){ //tooltip宽度 + 20 大于鼠标横向位置时,强制避免提示超出左侧画布
return {left: 10, top: point[1]}
}
},
// formatter 设置提示的文字内容(需要改变样式可通过 rich 富文本实现,见文档),要在 tooltip 中显示单位,可通过函数 params 拼字符串加上如下面 % 的单位
formatter: function(params){
return params[0].marker+'<br/>'+params[0].seriesName+': '+params[0].value+'%'
}
},

也可直接设置 formatter: "{b}<br/>{a}: {c}%"

折线单个点不显示处理

echarts 折线的使用大家可以直接参考echarts 折线图,在此不多赘述,下面直接看一下我们项目中遇到的显示问题。
由于 echarts 折线默认标注出与坐标刻度对应的折线的点,在折线上有不与坐标轴对应的散点(前后值为空)时,在数据量较少时可直接设置

series: [{
type: 'line',
showAllSymbol: true //标注所有数据点
}]

但数据量较大时,这种方式就不适合了,仔细阅读文档后找到了以下思路,标注所有数据点后,逐个设置symbolSize的大小,从而实现标注出需要显示的点

series: [{
type: 'line',
showAllSymbol: true //标注所有数据点,
data:[{
value: 12,
symbolSize: 0,
},{
value: 12,
symbolSize: 4,
}]
}]

项目中可以根据实际需求写循环进行设置,对这个问题的说明就到这里,喜欢的话请关注,点赞,收藏~谢谢阅读!

【echarts3】 折线图我踩过的那些坑 (tooltip 设置,line 单个点/散点不显示问题)的更多相关文章

  1. 百度推出的echarts,制表折线图柱状图饼图等的超级工具(转)

    一.简介: 1.绘制数据图表,有了它,想要网页上绘制个折线图.柱状图,从此easy. 2.使用这个百度的echarts.js插件,是通过把图片绘制在canvas上在显示在页面上. 官网对echarts ...

  2. DevExpress使用之ChartControl控件绘制图表(多坐标折线图、柱状图、饼状图)

    最近因为公司项目需要用到WinForm的DecExpress控件,在这里把一些使用方法总结一下. DevExpress中有一个专门用来绘制图表的插件ChartControl,可以绘制折线图.饼状图.柱 ...

  3. Echarts line折线图使用(vue)

    实现 首先引入echarts工具 // vue文件中引入echarts工具 let echarts = require('echarts/lib/echarts') require('echarts/ ...

  4. C# WinForm开发系列之c# 通过.net自带的chart控件绘制饼图,柱形图和折线图的基础使用和扩展

    一.需要实现的目标是: 1.将数据绑定到pie的后台数据中,自动生成饼图. 2.生成的饼图有详细文字的说明. 1.设置chart1的属性Legends中默认的Legend1的Enable为false: ...

  5. jfreechart折线图 demo

    public class ChartUtil { public static ChartUtil chartUtil; private RoomViewsDataService roomViewsDa ...

  6. Android 使用 MPAndroidChart 实现折线图

    Android 使用 MPAndroidChart 实现折线图 做Android项目的时候用到了折线图,不光折线图,还可能遇到很多的图表需要展示渲染,自己手画的话那好玩了,今天使用MPAndroidC ...

  7. ECharts绘制折线图

    首先看实现好的页面 实现 首先引入echarts工具 // vue文件中引入echarts工具 let echarts = require('echarts/lib/echarts') require ...

  8. vue中使用 echarts3.0 或 echarts2.0 (模拟迁徙图,折线图)

    一.echarts3.0(官网: http://echarts.baidu.com/) 首先通过npm安装echarts依赖,安装的为3.0版本 npm install echarts -s 也可以使 ...

  9. 基于SpringMVC框架使用ECharts3.0实现折线图,柱状图,饼状图,的绘制(上篇)

    页面部分 <%@ page language="java" pageEncoding="UTF-8"%> <!DOCTYPE html> ...

随机推荐

  1. 深度优先搜索(DFS)和广度优先搜索(BFS)求解迷宫问题

    用下面这个简单的迷宫图作为例子: OXXXXXXX OOOOOXXX XOXXOOOX XOXXOXXO XOXXXXXX XOXXOOOX XOOOOXOO XXXXXXXO O为通路,X为障碍物. ...

  2. 每天学点linux命令

    用于创建LVM卷组 补充说明 vgcreate命令 用于创建LVM卷组.卷组(Volume Group)将多个物理卷组织成一个整体,屏蔽了底层物理卷细节.在卷组上创建逻辑卷时不用考虑具体的物理卷信息. ...

  3. 吴裕雄--天生自然python机器学习:使用朴素贝叶斯过滤垃圾邮件

    使用朴素贝叶斯解决一些现实生活中 的问题时,需要先从文本内容得到字符串列表,然后生成词向量. 准备数据:切分文本 测试算法:使用朴素贝叶斯进行交叉验证 文件解析及完整的垃圾邮件测试函数 def cre ...

  4. 系统学习Javaweb5----JavaScript1

    注意:java和JavaScript没有半毛钱关系!!! 说明:过年歇着歇着不知不觉就歇了七天,嘿嘿,从今天开始继续学习. 学习笔记: 1.JavaScript概述. 1.1.JavaScript是什 ...

  5. 快手为什么要全资收购Acfun?

    近日据媒体报道,快手已完成对「Acfun」以下简称A站的全资收购.未来A站仍将保持独立品牌和独立运营以及原有团队的独立发展.近年来,A站可谓命途多舛.相比隔壁B站风风光光顺利上市且成为真正的二次元大本 ...

  6. CountingSort(计数排序)原理及C++代码实现

    计数排序是需要假设输入数据的排序之一,它假设输入元素是0到k区间内的一个整数,其中k为某个整数.当k=O(n)时,计数排序的时间复杂度为θ(n). 因为不是通过比较来排序,所以它的时间复杂度可以达到θ ...

  7. F5 BIG-IP之二 LTM实验一

  8. centos 中文乱码解决办法

    缘由:本人在虚拟机中安装centos 5.3,起初安装时选择了english,后来使用的过程中发现打开网页,会出现中文乱码,无法正常显示.当然,本地文件中的中文更是无法显示. 若是将系统语言langu ...

  9. seckill

    京东自动登录 注:本文所做操作皆以京东web为例 包含:xpath,splinter,ocr 遇到的坑: 登录页面通过查看网页元素,能看到账户,密码唯一id,但是执行 12 browser.fill( ...

  10. 【网上转载搜罗】本博客花里胡哨(划掉)效果js代码

    <canvas class="fireworks" style="position:fixed;left:0;top:0;z-index:99999999;poin ...