2013-03-18 33 views
1

傳奇的風格我有一個highchart兩種類型的圖表,一個類型之一,另一個型的(他們有自己的系列)。所以我希望兩個不同的圖表(線和列)的圖例有兩個不同的位置,一個在左下角,另一個在右下角。這可能嗎?兩兩種堆積圖樣式highchart

回答

1

它看起來不像highcharts使用圖例屬性支持兩個圖例。但是,它支持標籤,您可以將其放置在圖表的任何位置。它更復雜,但您可以使用它們在任何地方渲染自己的標籤。

一個基本的例子是:

 labels: { 
     items: [{ 
      html: "Legend 1", 
      style: { 
       top: '10px', 
       left: '20px', 
       height: '30px' 
      } 
     }, { 
      html: "Legend 2", 
      style: { 
       top: '10px', 
       left: '120px', 
       height: '30px' 
      } 
     }] 
    }, 

http://jsfiddle.net/7PRKr/

你將不得不做一些數學運用到你的繪圖區域內計算出它們的位置,你將不得不做一些工作,使它們看起來很好(使用標準的html和css屬性)。

1

不幸的是,該選項不受支持,但您可以使用append將div的數量添加爲系列,並捕獲單擊事件。

http://jsfiddle.net/8JB6h/

$.each(chart.series, function (i, serie) { 

      $('body').append('<div class="legend" id="serie' + i + '">' + serie.name + '</div>'); 


     }); 

     $('.legend').click(function() { 
      var tmpserie = chart.get($(this).attr('id')); 
      if (tmpserie.visible) tmpserie.hide(); 
      else tmpserie.show(); 

     });