2013-02-21 6 views
2

zoomable sunburst example을 사용하고 있지만 다이어그램 중앙에 텍스트를 추가하고 확대/축소 할 수있게하는 데 어려움을 겪고 있습니다. 아이디어는 길이를 나타내는 특정 호를 클릭하면 가운데 텍스트가 변경된다는 것입니다. mouseclick 및 mouseover의 속성이 사라지는 것으로 보입니다. 이 내가 시도 것입니다 : D3 햇살 다이어그램 중앙에 텍스트를 추가하는 방법

path.append("svg:text") 
     .on("click",click) 
     .style("font-size","4em") 
     .style("font-weight","bold") 
     .text(function(d) { return count_function(data); }); 

누군가가 나를 클릭 기능을 잃지 않고 차트의 일 중심에있는 텍스트를 표시하는 방법을 이해하는 데 도움이

?

원형 중심을 나타내는 "g"를 선택하고 차트가 표시되면 텍스트를 추가하는 것이 더 쉬운 방법 일 수 있습니다. 나는 이것을 시도했지만 successfylly이 요소를 선택하는 것은 불가능하다. (미안, 나는 D3에 익숙하지 않다.) 다시 사각형으로 돌아 간다.

답변

0

path 요소 안에 text 요소를 삽입하려는 것 같습니다. 다음과 같이 시도해보십시오.

svg.select("g").append("svg:text") 
    .on("click",click) 
    .style("font-size","4em") 
    .style("font-weight","bold") 
    .text(function(d) { return count_function(data); }); 
+1

감사합니다. Richard! 그러나 여전히 작동하지 않습니다. 첫 번째 원의 채우기로 숨겨진 것처럼 잠시 텍스트를 볼 수 있습니다. – user2095356

+0

그냥 추측 하겠지만, 먼저 선언 된 텍스트입니까? SVG에는 z- 인덱스가 없으므로 요소가 추가 된 순서에 따라 영향을받습니다. –

+0

예, 텍스트는 문제가 없습니다. 귀하의 조언을 따르고 "g"요소에 텍스트를 추가하면 svg가 생성 된 후에 그 내용을 볼 수있게되었습니다. 그러나 내가 전환을 할 때 나는 본문을 잃는다. – user2095356

관련 문제