在使用highcharts图表的过程中,总会碰到这样一个很是棘手的问题,横坐标刻度值太长,在不换行显示的情况下显得格外拥挤。虽然针对这一问题是可以对其刻度值进行旋转以此来避开显示拥挤问题【如何让highcharts图表组件的X轴坐标刻度旋转属性值rotation的透明分析】,可是还是想对过长的刻度值进行一定长度的截取多行显示。

针对上面这样一个问题,对于highcharts图表而言显得不是那么的困难,我们需要将这个问题首先进行定位到xAxis的labels属性节点上去,通过查找API,我们不难发现label内有一个formatter方法可以对其刻度值进行格式化然后return返回,一般性的写法如:

01.xAxis: {
02.categories: ['Foo', 'Bar', 'Foobar'],           
03.labels: {
04.//对横坐标刻度值进行格式化
05.formatter: function() {
06.return '<a href="'+ categoryLinks[this.value] +'">'+
07.this.value +'</a>';
08.}
09.}
10.},

我们知道了formatter这样一个格式化方法,也很容易地通过this.value获取到刻度值,那么我们就不难将其进行一定规则性的截取然后以HTML格式返回。这里提供一个符合需求的完整Demo示例代码:

01.$(function () {
02.var categoryLinks = {
06.};
07. 
08.$('#container').highcharts({
09.chart: {
10.},
11. 
12.xAxis: {
13.categories: ['测试横坐标过程问题', 'Bar', 'Foobar'],
14. 
15.labels: {
16.formatter: function() {
17.//获取到刻度值
18.var labelVal = this.value;
19.//实际返回的刻度值
20.var reallyVal = labelVal;
21.//判断刻度值的长度
22.if(labelVal.length > 3)
23.{
24.//截取刻度值
25.reallyVal = labelVal.substr(0,3)+"<br/>"+labelVal.substring(3,labelVal.length-1);
26.}
27.return reallyVal;
28.}
29.}
30.},
31. 
32.series: [{
33.data: [29.9, 71.5, 106.4]       
34.}]
35.});
36.});

这样第一个刻度就会分两行显示了的,这里就不贴上效果查看地址了的,朋友们可以自己copy下来测试一下就可以了的。

highcharts图表中级入门之xAxis label:X(横)坐标刻度值过长截断多行(换行)显示问题说明的更多相关文章

  1. highcharts图表中级入门:非histock图表的highcharts图表如何让图表产生滚动条

    最近highcharts图表讨论群里面很多朋友都在问如何让highcharts图表在X轴数据多的情况下产生滚动条的问题,其实之前有一个解决办法是将装载图表的div容器用css样式表弄一个滚动条出来.这 ...

  2. highcharts图表组件入门教程:如何监听柱状图柱子点击事件动态更新当前数据点数值和所对应X轴刻度

    highcharts图表组件入门教程:如何监听柱状图柱子点击事件动态更新当前数据点数值和所对应X轴刻度 作者:highcharts | 时间:2014-6-11 14:07:05 | [小  大] | ...

  3. ECharts图表中级入门之formatter:夜谈关于ECharts图表内的数据格式化方法

    来源于:http://www.ithao123.cn/content-3751220.html 格式化之所以存在,主要是因为我们想把一些不够人性化的内容通过某种处理让其变得人性化,便于用户更好地理解内 ...

  4. highCharts图表入门实例

    本文通过讲解Highcharts生成一个简单的3D柱状图实例来学习Highcharts的使用. JSP 页面 1.需要引入的js文件 <script src="<%=basePa ...

  5. highCharts图表入门简介

    一.Highcharts简介 Highcharts:功能强大.开源.美观.图表丰富.兼容绝大多数浏览器的纯js图表库 Highcharts是一款纯javascript编写的图表库,能够很简单便捷的在W ...

  6. 转:Highcharts图表控件的使用

    摘要 Highcharts图表控件是目前使用最为广泛的图表控件.本文将从零开始逐步为你介绍Highcharts图表控件.通过本文,你将学会如何配置Highcharts以及动态生成Highchart图表 ...

  7. 关于Highcharts图表组件动态修改属性的方法(API)总结之Series

    Highcharts图表组件内的Series很重要,如果说Categries是其大脑,那么Series就是其心脏.这两者才是Highcharts图表组件的重中之重啊.接下来就为大家介绍关于设置Seri ...

  8. highCharts图表应用-实现多种图表的显示

    在数据统计和分析业务中,有时需要在一个图表中将柱状图.饼状图.曲线图的都体现出来,即可以从柱状图中看出具体数据.又能从曲线图中看出变化趋势,还能从饼状图中看出各部分数据比重.highCharts可以轻 ...

  9. HighCharts 图表高度动态调整

    HighCharts 图表高度动态调整 前言 在使用HighCharts控件过程中,发现图表可以自适应div的高度,无法根据图表x.y轴的数量动态调整div高度,否则图标挤在一起,看起来非常不美观,也 ...

随机推荐

  1. BZOJ 1064 假面舞会(NOI2008) DFS判环

    此题,回想Sunshinezff学长给我们出的模拟题,原题啊有木有!!此处吐槽Sunshinezff爷出题不人道!! 不过也感谢Sunshinezff学长的帮助,我才能做出来.. 1064: [Noi ...

  2. HDU1150 Machine Schedule

    匈牙利算法 目前为止还是半懂不懂的状态 #include<iostream> #include<cstdio> #include<cstring> using na ...

  3. roundup配置

    原因:我需要一个简单的issue tracker why roundup: python,简单 找了半天的文档,找不到文档,只能自己慢慢试,试到现在,可以打开tracker页面,用户注册的时候可以发邮 ...

  4. JDBC连接简介

    package jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; ...

  5. Windows8远程桌面CentOS 6.5

    概述: 在CentOS上安装vncserver和Windows8上安装VNC Viewer,从而可以在Windows8远程桌面到CentOS 6.5 1. 在CentOS上安装vncserver 1. ...

  6. C#12种顺序排序

    这篇主要写关于顺序排序的十二种算法,也是我有关算法的第一帖.主要是写,对每种算法的理解与测试. 速度测试,主要根据一千.一万.五万.百万这 四种.速度纪录还是用Stopwatch 这个类.使用随机数R ...

  7. UOJ #149 [NOIP 2015] 子串

    传送门 Solution DP+滚动数组. DP状态 \(dp[i][j][k]\): \(A\)的第\(i\)个字符和\(B\)的第\(j\)个字符匹配且该字符在第\(k\)个子串中的方案数. 转移 ...

  8. python字符编码(二)

    一.什么是字符编码 计算机要想工作必须通电,也就是说‘电’驱使计算机干活,而‘电’的特性,就是高低电压(高低压即二进制数1,低电压即二进制数0),也就是说计算机只认识数字 编程的目的是让计算机干活,而 ...

  9. zabbix监控系列(4)之zabbix报警邮件无法发送

    情况介绍 首先确保邮箱规则没有把报警邮件作为垃圾邮件拉黑了. 服务器断电重启后,发现zabbix报警邮件无法发送,断电之前是好好的,但是重启后不行了,于是查看maillog日志,发现这个错误: Hos ...

  10. zabbix监控系列(2)之zabbix-agent安装

    zabbix-agent的安装不用LAMP的支持,所以直接源码安装,make两下,改下配置文件即可,改完后可以把源码包直接压缩打包就可以给其他agent用了,可谓,一次编译,多台使用. NO1.解包压 ...