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. mysql不常用查询

    --查看数据库版本 SELECT VERSION(); --查看字符编码与安装路径 SHOW VARIABLES LIKE '%char%';

  2. D. Colored Boots(STL)

    There are nn left boots and nn right boots. Each boot has a color which is denoted as a lowercase La ...

  3. git 学习系列(一)

    目录 git 简介 git的升级 建立仓库 克隆仓库 查看主机名 查看仓库初始状态 将文件提交到暂存区 查看修改详情 提交修改 查看修改记录 查看个人配置信息(在 .gitconfig 文件中) 查看 ...

  4. jQuery性能优化与技巧

    1.使用最新版本的jQuery类库 jQuery的每一个新的版本都会较上一版进行Bug修复和一些优化,同时也会包含一些创新,所以建议使用最新版本的jQuery来提高性能,需要注意的是在更换版本之后,要 ...

  5. [LC] 47. Permutations II

    Given a collection of numbers that might contain duplicates, return all possible unique permutations ...

  6. 吴裕雄--天生自然 JAVASCRIPT开发学习:对象 实例(3)

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  7. DSU On Tree——Codeforces 600E(E. Lomsat gelral)

    有这么一类问题,要求统计一棵树上与子树相关的某些信息,比如:在一棵所有节点被染色的树上,统计每棵子树上出现次数最多的颜色编号之和. 很自然的可以想到用DFS序+主席树去求解,但是编码复杂度很高: 然后 ...

  8. 网页中常见返回HTTP状态码含义

    在日常网页浏览的过程中大家经常会碰到400,403,404,500,502等HTTP状态码,这些状态码对于一般用户来说出现什么都是一样的,反正就是页面打不开了,但是作为网站开发人员或者从事相关工作者认 ...

  9. MyBatis学习总结之一对一映射

    知识点:JavaType和ofType都是用来指定对象类型的,但是JavaType是用来指定pojo中属性的类型,而ofType指定的是映射到list集合属性中pojo的类型. 本次mybatis的练 ...

  10. Tortoises SVN 教程

    1.  TortoiseSVN 简介 版本控制是管理信息修改的艺术,它一直是程序员最重要的工具,程序员经常会花时间作出小的修改,然后又在某一天取消了这些修改,想象一下一个开发者并行工作的团队 - 或许 ...