博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
highcharts 常用配置
阅读量:6800 次
发布时间:2019-06-26

本文共 5104 字,大约阅读时间需要 17 分钟。

hot3.png

highcharts官方api文档写得不是很详细,如果使用的时候看哪个api文档,感觉理解起来还是蛮难的 ,尤其对于新手来说,等于没啥用, 不过官方的demo还是很有用的, 如果觉得难,就把demo多看一些,一边看一边修改一些属性,这样能更方便理解;

  下面根据例子一行一行注释,这样理解起来应该更容易;

new Highcharts.Chart({                chart: {                    renderTo:'container',  //这是页面id,是将这个图标插入到这个id容器中                    zoomType: 'xy'     //图形放大(操作方法是鼠标点击图中拖动鼠标,选中的区域会被放大),写x就放大x轴数据,y就放大y轴数据,xy就是全部放大;                },                exporting:{                    enabled:false     //导出按钮是否显示                },                title: {                    text: '标题',     //标题名称            style: {       //标题样式,这个里面可以设置标题颜色,字体大小,位置等               fontSize: '12px'            }                },                legend:{                    itemStyle:{                        fontWeight:'normal'//这个就是不要加粗                    },                    margin:5                },                xAxis: {                //x轴数据,可以自定义,也可以为时间                   //categories: [1,2,3,4,5,6],    //这里这行是写死的,也可以自己定义一个数组;            type: 'datetime',         //定义x轴为时间,需要注意的是时间一定要是升序,如果不是会报#15的错误            //reversed: true, 倒序显示            labels: {               formatter: function() {                 return Highcharts.dateFormat('%Y-%m', this.value);   //将时间戳转换成年-月              }            }                },                yAxis: [{               //定义y轴                    labels:{                        valueDecimals: 2,      //当你的数据很大,比如10000000时,这里会自动显示成10M,10000显示为10K                        style: {                            color: '#6B6B6B'                        }                    },                    //tickInterval:2,                        tickPixelInterval:40,      //y轴的行高                    min:0,               //设置最小值            max:10               //设置最大值                    title: {               //y轴防线标题及样式                        text: '',                        style:{                            color: '#6B6B6B',                            width:'10em'                        },                        //align:'high',                        offset:50,                           //rotation:0                    },                    plotLines: [{                        value: 0,                        width: 1,                        color: '#6B6B6B'                    }]                },{ //                    //tickInterval:m_max,      //如果有两条线,而且两条线的单位不一样,这样就需要设置两个y轴,来显示不同的数据                    tickPixelInterval:30,                    //min:2,                    title: {                        text: ''                    },                    labels: {                        //format: '{value} 元',                        valueDecimals: 2,                        style: {                            color: '#6B6B6B'                        }                    },                    plotLines: [{                        value: 0,                        width: 1,                        color: '#6B6B6B'                    }],                    opposite: true                }],                tooltip: {      //设置弹出提示框,这里是重点,也是难点,因为弹出提示框里面的内容可能有自定义的;                    snap: 0,       //设置显示数据标签的敏感区域值 单位为px,为0表示距离数据点为0px的时候显示标签,默认情况下为10px,移动设备最好设置为25px                    hideDelay:0,   //设置隐藏标签延迟时间值,单位为毫秒,默认为500毫秒;当设置为0时,只要鼠标离开数据点就隐藏标签                    shared: true,  //如果一个图表中有多个图形,提示数据在一个框中弹出            useHTML: true,  //使用html代码            formatter: function() { //格式化鼠标滑向图表数据点时显示的提示框                          return ''+this.x+'
'+ //这里返回的内容就是提示框弹出的内容, this.series.name+': '+this.y+'' } }, /*        legend: { //图例的显示位置 layout: 'vertical', align: 'left', x: 80, verticalAlign: 'top', y: 20, floating: true, backgroundColor: '#FFFFFF' }, */ credits: { enabled: false      //去除highcharts的链接 }, series: [{ name: 'name1', color: '#95CEFF', type: 'column', data: yAxis_c, },{ name: 'name2', color: '#FCF12E', //type: 'spline', data: yAxis_s, marker: { enabled: false, //数据点是否显示*/ radius: 2, //数据点大小 }, }] });

如果出现错误, 只需根据错误号去查找就行;

  还有需要注意的是绘图的数据不能是字符串,只能是数字;如果是字串图就不显示了;

  还有一种显示弹出框信息的方式

pointFormat: '{series.name}: {point.y:.2f}%',

这里的pointFormat里面的内容就是弹出框显示的内容,{series.color}表示series中的color,{point.y:.2f}表示y轴的值,并保留两位小数;

限制某些图例名称是否显示

showInLegend: true // 默认值

showInLegend: false // 设置为 false 即为不显示在图例中

设置数据点大小

marker: { enabled: true, //数据点是否显示 radius: 4, //数据点大小 states: {   hover: {     radius: 5, //数据点大小   } }},

设置Y轴刻度间距,值越大,刻度间距越大;

tickPixelInterval:100;

控制标题文字样式

title: {   text: '变动数量',  rotation : 360, //文字旋转角度  style: {    writingMode:'tb-rl' //文字竖排样式 }

 

转载于:https://my.oschina.net/u/2391658/blog/1518161

你可能感兴趣的文章
Python笔记 开发环境搭建
查看>>
ios logo 启动页大小
查看>>
(四)构建dubbo分布式平台-maven代码结构
查看>>
Vue插件从封装到发布
查看>>
扒一扒我们生活中常见的品牌小程序
查看>>
使用注解干掉大量if else和switch
查看>>
【本人秃顶程序员】实战并发-使用分布式缓存和有限状态机
查看>>
[MySQL光速入门]019 分别使用loop, while, repeat 来计算 从0加到100 答案
查看>>
浅析libuv源码-node事件轮询解析(2)
查看>>
区块链软件公司:区块链技术去中心化
查看>>
Python爬虫的基本概念、分类、学习路线以及爬取数据思路
查看>>
BCH或许才是真正的未来
查看>>
python编程:从入门到实践学习笔记-函数
查看>>
SpringBoot使用Nacos配置中心
查看>>
Java四种线程池的使用
查看>>
Go学习系列——第一个 Go程序
查看>>
关于ntp时间同步理论及配置参数-20170804
查看>>
loadrunner 脚本开发-int型变量和字符串的相互转换
查看>>
为什么运行NOVA命令总要报一个DEBUG,没找到原因,路过的大侠一起看看啊
查看>>
北电ERS1600,8300,8600交换机的基本技术-第十章接口高级特征
查看>>