2013-07-25 116 views
1

我參加了一個樣品的jsfiddle和修改在這裏只是爲了證明什麼,我經歷了一個樣本: http://jsfiddle.net/pMwuv/Highcharts - 數據標籤切斷

這裏是我的實際datalabel代碼如下所示:

dataLabels: { 
enabled: true, 
align: 'left', 
verticalAlign: 'top', 
style: { 
    color: 'black' 
}, 
formatter: function() { 
    if (this.x == 19) { 
     return this.y + '<br>units left'; 
    }; 
} 
}  

我的面積圖上有最後一個數據標籤被切斷。有沒有辦法增加容器的寬度或添加某種類型的填充以便完整的標籤顯示?

僅更改標籤的x和y位置將不適用於我的面積圖。我定製了自己的圖表,以便只有圖表的最後一點纔有數據標籤,而且我希望它與最後一點的右側對齊,而不是在圖表內。

但是,如果我們可以得到上面的示例小提琴工作,那麼相同的解決方案應該爲我工作。

回答

3

您可以將marginRight添加到chart這個樣子:

chart: { 
      renderTo: container, 
      width: 550, 
      marginRight: 35 
} 

jsFiddle

+0

marginRight和spacingRight都可以工作!有沒有一種情況可以更好地使用這個或另一個? – Gabriel

+1

是的,有些情況'spacingRight'更好。例如,當你有右邊的傳說。 'spacingRight'是圖表右邊緣與整個_content_(包括圖例)之間的空格。 'marginRight'是圖表的右邊緣和_plot area_之間的餘量。因此,如果您將marginRight應用於右側圖例的圖表,您將在圖例和繪圖區域之間留出空間。但在你的情況下,這並不重要。 –

+0

感謝您的解釋! – Gabriel

0

這不是一個直接解決方案,但我建議你把標籤在Y軸:

yAxis: { 
     title: { 
      text: 'Units left' 
     } 
    }, 

,並刪除其他屬性,只留下enabled: true

plotOptions: { 
     series: { 
      dataLabels: { 
       enabled: true 
      } 
     } 
    }, 

See the fiddle