【原创】说好的暴雨呢,搁哪呢?还能不能 雨~露~均~沾?

December 17, 2023
测试
测试
测试
测试
8 分钟阅读

不是说下大雨吗?玩儿呐?搁哪呢?大雨搁哪呢?下丢啦?哗啦到海里去啦?让五娃给吞啦?南方整的那老大,看不起副中心咋的?还能不能 雨~露~均~沾~?你说我小船儿都买好了,搁哪划,搁哪划!!给我一个完美的解释!

北京气象局通知: 原约定于昨天和今早来的暴雨,因办进京证,耽误了点儿时间,或许今天夜间赶到。这场雨如果下大了肯定不小,如果下小了也肯定不会大,请市民再耐心等待!具体情况等下完后气象台会报给市民。气象台温馨提醒:今天如果不下雨,明天不下雨的话,这两天就没有雨了,就看后天的了。 气象台郑重劝告美女们最近几天不要穿裙子,容易被撩,雨是好雨,但风不正经!

今天早上,这两条段子又在朋友圈以及各大评论网站火了一把,原定于昨天傍晚到今天的暴雨,迟迟未到,朋友们都“re hu qi”(方言哦)了,今早北京气象部门这样说,请看图

好了,技术出身的你,可能已经明白了,小编不讲天气,不讲情怀,不讲段子,讲的是技术、技术.........那么问题来了,类型这样的图表,折线图、热点图、柱状图、饼图...等等,是怎么实现的,怎么画出来的呢?告诉你,可用“highcharts”(https://www.hcharts.cn)

今天,我们来讲一下Highcharts的几个基础知识,为了方便说明,先贴出Highcharts主要组成部分说明图:

图1:highcharts主要组成部分

图中名字解释:

  • Title & SubTitle 图表标题及副标题
  • exporting 图表导出功能按钮
  • tooltip 数据提示框
  • xAxis、yAxis x、y轴
  • Series 数据序列
  • legend 图例
  • credits 版权标签

1、图表中的 highcharts.com 怎么去掉?

答:通过设置 credits.enabled= false 即可,即

credits: {

enabled:false

}

另外,该文字及连接都是可以自定义的, 详见 API

2、如何增加导出功能(或显示导出按钮)?

答:通过引入 exporting.js 即可给图表增加导出功能,即添加如下代码

同理,如果不想要导出功能,不引入exporting.js 即可,另外,禁用导出功能还可以通过设置 exporting.enabled = false,详见API

3、如何去掉图例(legend)?

答:设置 legend.enable = false 即可,即

legend: {

enabled:false

}

饼图需要设置 plotOptions.pie.showInLegend = true 才可显示图例。

4、如何设置图表颜色

1)最基本的图表线条(或柱形等),是通过 colors 来设置的,即

colors: ['#7cb5ec', '#434348', '#90ed7d', '#f7a35c', '#8085e9','#f15c80', '#e4d354', '#8085e8', '#8d4653', '#91e8e1']

其中颜色值及个数完全可以自定义

2)定义某个点的颜色

通过设置 series.data.color 实现对某个点进行自定义颜色,实例效果如下

3)对于柱状图单个序列不同柱形颜色自定义,除了设置 colors外,还需要额外设置 plotOptions.column.colorByPoint = true ,其他类型图表类似的也有

5、如何将图表中的英文汉化(显示成中文)?

即设置 lang 属性,改属于用于图表中文字的显示,也就是说,图表中所有文字的修改都可以通过该属性下来设置。

实例代码:

Highcharts.setOptions({

lang:{

contextButtonTitle:"图表导出菜单",

decimalPoint:".",

downloadJPEG:"下载JPEG图片",

downloadPDF:"下载PDF文件",

downloadPNG:"下载PNG文件",

downloadSVG:"下载SVG文件",

drillUpText:"返回 {series.name}",

loading:"加载中",

months:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],

noData:"没有数据",

numericSymbols: [ "千" , "兆" , "G" , "T" , "P" , "E"],

printChart:"打印图表",

resetZoom:"恢复缩放",

resetZoomTitle:"恢复图表",

shortMonths: [ "Jan" , "Feb" , "Mar" , "Apr" , "May" , "Jun" , "Jul" , "Aug" , "Sep" , "Oct" , "Nov" , "Dec"].,

thousandsSep:",",

weekdays: ["星期一", "星期二", "星期三", "星期三", "星期四", "星期五", "星期六","星期天"].

}

});

$("#container").highcharts({

// Highcharts 代码

});

注意:Highcharts.setOptions({}) 属于全局配置,代码是放在$("#container").highcharts({}) 外面。

6、如何去掉图例单击事件? 即如何使点击图例(Legend)不隐藏对应的序列

(Series),设置代码是:

plotOptions: {

series: {

events: {

legendItemClick: function(event) {

return false; //return false 即可禁用LegendIteml,防止通过点击item显示隐藏系列

}

}

}

} 参考实例:http://www.hcharts.cn/demo/index.php?p=92

7、怎么去掉曲线图的默认点击效果

设置states中的状态

plotOptions: {

series: {

states: {

hover: {

enabled: false

}

}

}

}

8、跨图表类型下钻?(例:饼图下钻后以柱形图显示)

addSeries() 的时候设置下钻图表类型

chart.addSeries({

name: name,

data: data,

type: 'spline' // 设置数据列类型

color: color || 'white',

}, false);

9、highcharts下钻后,显示返回按钮?

drilldown组件自带的。其中按钮文字通过lang的drillUpText: String设置。

10、从左到右的动画效果;

设置 plotOptions.series.animation= false 即可,即

// 省略代码

xAxis: {

categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',

'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'

]

},

plotOptions: {

series: {

animation: false

}

},

yAxis: {

title: {

text: 'Temperature (°C)'

},

plotLines: [{

value: 0,

width: 1,

color: '#808080'

}]

},

// ...

总结:

Highcharts官网API:https://api.hcharts.cn/

Highcharts官网示例:https://www.highcharts.com/demo

继续阅读

更多来自我们博客的帖子

如何安装 BuddyPress
由 测试 December 17, 2023
经过差不多一年的开发,BuddyPress 这个基于 WordPress Mu 的 SNS 插件正式版终于发布了。BuddyPress...
阅读更多
Filter如何工作
由 测试 December 17, 2023
在 web.xml...
阅读更多
如何理解CGAffineTransform
由 测试 December 17, 2023
CGAffineTransform A structure for holding an affine transformation matrix. ...
阅读更多