简体   繁体   English

将yAxis标签获取为xAxis类别的10%

[英]get yAxis labels as 10% of the categories of xAxis

How to get the yAxis labels as the 10% of the categories defined in the xAxis of the chart. 如何将yAxis标签作为图表的xAxis中定义的类别的10%获得。 For example, if I have categories like [2010,2011,2012,2013,....] then the yAxis labels should come like 201.0, 201.1, 201.2, ... 例如,如果我有类似[2010,2011,2012,2013,....]的类别,则yAxis标签应类似于201.0、201.1、201.2,...

Here I have basic chart with predefined categories 这里我有带有预定义类别的基本图表

chart: {
        type: 'spline'
    },
    xAxis: {
        categories: [1340,1590,1379,1451,1671]
    },
    yAxis: {
        title: {
            text: '10% of Range'
        }
    },
    series: [{
        name: 'Tokyo',
        data: [7.0, 6.9, 9.5, 14.5, 18.4]
    }]
}

How to get the yAxis plot values as the 10% of the categories of xAxis, is there any method? 如何获得yAxis图值作为xAxis类别的10%,有什么方法吗? Further I will receive the series and the categories from the server so categories will be numeric. 此外,我将从服务器接收系列和类别,因此类别将是数字。

I can't say I understand why you would want to do this, regardless, it is possible. 我不能说我理解您为什么要这样做,无论有没有可能。 You can use the load event to dynamically add 10 % of the xAxis as the yAxis. 您可以使用load事件将xAxis的10%动态添加为yAxis。 Like this: 像这样:

chart: {
  events: {
    load: function() {
      this.yAxis[0].update({type: 'categories', categories: this.xAxis[0].categories.map(function(x) { return x/10; }), tickPositions: this.xAxis[0].categories.map(function(x) { return x/10; })}, true)
    }
  }
},

 Highcharts.chart('container', { chart: { events: { load: function() { this.yAxis[0].update({type: 'categories', categories: this.xAxis[0].categories.map(function(x) { return x/10; }), tickPositions: this.xAxis[0].categories.map(function(x) { return x/10; })}, true) } } }, title: { text: 'Solar Employment Growth by Sector, 2010-2016' }, subtitle: { text: 'Source: thesolarfoundation.com' }, xAxis: { type: 'categories', categories: [43934, 52503, 57177, 69658, 97031, 119931, 137133, 154175] }, yAxis: { title: { text: 'Number of Employees' } }, legend: { layout: 'vertical', align: 'right', verticalAlign: 'middle' }, plotOptions: { series: { label: { connectorAllowed: false } } }, series: [{ name: 'Manufacturing', data: [24916, 24064, 29742, 29851, 32490, 30282, 38121, 40434] }, { name: 'Sales & Distribution', data: [11744, 17722, 16005, 19771, 20185, 24377, 32147, 39387] }, { name: 'Project Development', data: [null, null, 7988, 12169, 15112, 22452, 34400, 34227] }, { name: 'Other', data: [12908, 5948, 8105, 11248, 8989, 11816, 18274, 18111] }], }); 
 #container { min-width: 310px; max-width: 800px; height: 400px; margin: 0 auto } 
 <script src="https://code.highcharts.com/highcharts.js"></script> <script src="https://code.highcharts.com/modules/series-label.js"></script> <script src="https://code.highcharts.com/modules/exporting.js"></script> <script src="https://code.highcharts.com/modules/export-data.js"></script> <div id="container"></div> 

Working fiddle example: https://jsfiddle.net/2jca44dj/ 工作小提琴示例: https //jsfiddle.net/2jca44dj/

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM