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. 透过F5获取服务器真实内网IP

    渗透测试过程中,经常会遇到目标服务器使用F5 LTM做负载均衡. 如果能获取到目标服务器的真实IP地址,会给后续渗透带来一定便利. 本文既是最近渗透遇到的一点点经验分享. F5修改cookie机制 F ...

  2. 微软要冷落windows是天方夜谭还是势在必行

    自从90年代开始,微软就统治着PC桌面市场,真正意义上地改变了世界,在很长一段时间内,Windows就和阳光.空气.水.电能一样,成为生活必需品,无处不在,又让人感觉不到其存在,正因如此,微软的市值于 ...

  3. 漫谈2014年人机交互(CHI)大会

    编者按:2014年度以人机交互为主题的顶级会议ACM SIGCHI已经落下帷幕.微软研究院在此次会议的入选论文总数仅次于卡耐基•梅隆大学,位列第二.此次会议中,有哪些创新想法或技术让人眼前一亮?听微软 ...

  4. CF-1144F-Graph Without Long Directed Paths

    题意: 给出一个无向联通图,要求你给出每条边的方向,使得无论从哪个点出发最多只能走一条边: 思路: 对于每个点,要么出度为0,要么入度为0即可.所以这就是一个判断二分图. 二分图 #include & ...

  5. SVN 常用资源

    常用命令 将文档checkout到本地目录 svn checkout path(path是服务器上的目录) svn checkout svn://192.168.1.1/pro/domain svn ...

  6. row_number over( partition by xx)

    在原始表中 新加一个临时列 去重, 排序 比多次join性能提高很多 http://www.mysqltutorial.org/mysql-window-functions/mysql-row_num ...

  7. 使用mybatis的动态sql解析能力生成sql

    需求: 计算平台,有很多表,打算提供一个基于sql的服务接口, sql不能完全在配置页面写死, 要能根据参数不同执行不同的语义,防止sql个数爆炸 把mybatis原码down下来, 改造一下测试用例 ...

  8. [LC] 392. Is Subsequence

    Given a string s and a string t, check if s is subsequence of t. You may assume that there is only l ...

  9. HTML5图片预览 放大

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

  10. 使用Commons Logging

    Commons Logging 和Java标准库提供的日志不同,Commons Logging是一个第三方日志库,它是由Apache创建的日志模块,需要导入commons-logging-1.2.ja ...