在使用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. 【bzoj2730】 HNOI2012—矿场搭建

    http://www.lydsy.com/JudgeOnline/problem.php?id=2730 (题目链接) 题意 给出一张图,问如果删掉其中一个点,使得其他每个节点都有一个安全撤离的出口, ...

  2. TortoiseGit与GitHub项目关联设置

    一.常规克隆GitHub上的项目: 1.在本地硬盘上放置项目的地方上[右键]->[Git 克隆]->在[url地址]上输入https的GitHub的链接,然后就是等待完成,之后即可完成拉取 ...

  3. linux查看某个进程的线程id(spid)

    鉴于linux下线程的广泛使用 我们怎么查看某个进程拥有的线程id了 现在很多服务的设计 主进程->子进程->线程(比如mysql,varnish) 主进程负责侦听网络上的连接 并把连接发 ...

  4. 事务块TransactionScope使用

    TransactionScope 可以让代码块成为事务性代码块. 当发生异常时,会自动回滚.后期手动提交事务. 简单的例子: using (TransactionScope ts = new Tran ...

  5. POJ #2448 A New Operating System

    Time Limit: 20000MS   Memory Limit: 65536K Total Submissions: 1165   Accepted: 110 Case Time Limit: ...

  6. centos安装CODEBLOCKS

    装了好多次系统,每次装的时候都有要在网上各种查,太麻烦了.所以决定记录一下,以后用到的时候会方便一些.当然,本文来源于网络,取百家之长,最重要的是本人已验证过,说明对本系统是可行的. 在CentOS7 ...

  7. .bash_profile for mac‘ envionment variables

    A typical install of OS X won't create a .bash_profile for you. When you want to run functions from ...

  8. C#保存图片设置图片质量的方法

    主要用到System.Drawing.Imaging命名空间下的ImageCodecInfo.Encoder.EncoderParameter.EncoderParameters四个类 实现代码 代码 ...

  9. various Sequence to Sequence Model

    1. A basic LSTM  encoder-decoder. Encoder: X 是 input sentence. C 是encoder 产生的最后一次的hidden state, 记作 C ...

  10. 软件工程个人作业-Week2

    第一部分  调研, 评测 必应词典客户端版本:安卓版5.2.2 bug描述一:在学习页面点击“单词挑战”或“我爱说英语”会弹出“加载失败,请稍后重试”,无论点击多少次都加载不出来. bug描述二:在未 ...