2013-07-22 13 views
4

這是我的dimple條形圖(搭載D3):在x軸如何在dimple.js中旋轉x軸文本?

var sidechart = new dimple.chart(chart_svg, data); 
      sidechart.setBounds(60, 30, 200, 300) 
      var x = sidechart.addCategoryAxis("x", "Long name"); 
      sidechart.addMeasureAxis("y", "Measure"); 
      sidechart.addSeries(["Short name", "Long name"], dimple.plot.bar); 
      sidechart.draw(); 

文本很長,並且默認凹坑旋轉時,其因此被垂直顯示。我想旋轉它45度。使用D3,這將通過這樣做來完成:

myAxis.attr("transform", "rotate(-45)"); 

不幸的是,我無法找到這樣做的凹穴的類似的方式。任何幫助將不勝感激。

回答

11

你可以得到形狀保持一次抽籤方法被調用並設置變換:

... 
sidechart.draw(); 
x.shapes.selectAll("text").attr("transform", "rotate(-45)"); 

然而酒窩已經使用變換移動刻度之間的標籤並做旋轉,讓你可能要追加變換是這樣的:

... 
sidechart.draw(); 
x.shapes.selectAll("text").attr("transform", 
    function (d) { 
     return d3.select(this).attr("transform") + " rotate(-45)"; 
    }); 

我嘗試這樣做,它抵消了,我期待的標籤,所以你可能需要添加一個翻譯的,但你可能需要找一個合適的抵消你自己的圖表,我在這裏用20作爲例子:

... 
sidechart.draw(); 
x.shapes.selectAll("text").attr("transform", 
    function (d) { 
     return d3.select(this).attr("transform") + " translate(0, 20) rotate(-45)"; 
    }); 
+0

正是我在找的東西!謝謝 –

+0

約翰,這是優秀的!真的幫助我。 – sweaty