2016-11-23 2 views
0

Я пытаюсь добавить вторичную ось y на штабелированную гистограмму. Я хочу, чтобы ось y соответствовала предоставленным категориям.Сложенная гистограмма с несколькими yAxis

jsfiddle - http://jsfiddle.net/akshayasharma/qf3escqn/2/

$(function() { 
    Highcharts.chart('container', { 
     chart: { 
      zoomType: 'xy' 
     }, 
     title: { 
      text: 'Average temperature and rainfall of first quarter' 
     }, 
     subtitle: { 
      text: 'Source: WorldClimate.com' 
     }, 
     xAxis: [{ 
      categories: ['Rainfall', 'Temperature'], 
      crosshair: true 
     }], 
     yAxis: [{ // Primary yAxis 
      labels: { 
       format: '{value}°C', 
       style: { 
        color: Highcharts.getOptions().colors[1] 
       } 
      }, 
      title: { 
       text: 'Temperature', 
       style: { 
        color: Highcharts.getOptions().colors[1] 
       } 
      } 
     }, { // Secondary yAxis 
      title: { 
       text: 'Rainfall', 
       style: { 
        color: Highcharts.getOptions().colors[0] 
       } 
      }, 
      labels: { 
       format: '{value} mm', 
       style: { 
        color: Highcharts.getOptions().colors[0] 
       } 
      }, 
      opposite: true 
     }], 
     tooltip: { 
      shared: true 
     }, 
     legend: { 
      align: 'center', 
      verticalAlign: 'bottom', 
      backgroundColor: (Highcharts.theme && Highcharts.theme.legendBackgroundColor) || '#FFFFFF' 
     }, 
     plotOptions: { 
      column: { 
       stacking: 'normal' 
      } 
     }, 
     series: [{ 
      name: 'Jan', 
      type: 'column', 
      data: [49.9, 7] 
     }, { 
      name: 'Feb', 
      type: 'column', 
      data: [71.5, 6.9] 
     }, { 
      name: 'Mar', 
      type: 'column', 
      data: [106.4, 9.5] 
     }] 
    }); 
}); 

В моем примере выше, я хочу только два сложены Столбики показывающего количество осадков и другую температура показывает и эти столбчатую должен связанные с различной осью у. Температура должна относиться к первичной оси Y (обозначена для степени C), а осадок должен учитывать вторичную ось y (обозначен для мм).

Каждый стек отображает значение, соответствующее осадку/температуре соответствующего месяца.

Может кто-нибудь скажет мне, как назначить yAxis для осадков и температуры. Поскольку у меня есть данные серии в виде массива серийных данных месяцев (январь, февраль и март), в то время как я хочу, чтобы мой yaxis был специфичным для категории, которая является осадкой и температурой.

ответ

0

Это возможно, но вы можете назначить серию к оси - так что вы должны разделить ваш ряд, как показано ниже:

series: [{ 
    name: 'Jan', 
    id: 'j', 
    data: [ 
    [0, 49.9] 
    ], 
    colorIndex: 0 
}, { 
    linkedTo: 'Jan', 
    data: [ 
    [1, 7] 
    ], 
    colorIndex: 0, 
    yAxis: 1 
}, { 
    id: 'f', 
    name: 'Feb', 
    data: [ 
    [0, 71.5] 
    ], 
    colorIndex: 1, 
}, { 
    linkedTo: 'f', 
    data: [ 
    [1, 6.9] 
    ], 
    colorIndex: 1, 
    yAxis: 1 
}, { 
    id: 'm', 
    name: 'Mar', 
    data: [ 
    [0, 106.4] 
    ], 
    colorIndex: 2 
}, { 
    linkedTo: 'm', 
    data: [ 
    [1, 9.5] 
    ], 
    colorIndex: 2, 
    yAxis: 1 
}] 

пример: http://jsfiddle.net/qf3escqn/4/

+0

благодарственное morganfree. Это помогло мне. –

+0

Если он решает вашу проблему, тогда примите мой ответ, поэтому вопрос не останется открытым. – morganfree

 Смежные вопросы

  • Нет связанных вопросов^_^