2014-04-23 5 views
0

일부 D3 rect 요소에 몇 가지 툴팁을 추가하려고하지만 요소의 속성에 액세스하여 툴팁 값을 채우는 데 문제가 있습니다.속성/눈금을 사용하여 d3의 툴팁 값 채우기

다음 바이올린은이 문제를 보여줍니다

, http://jsfiddle.net/7Df2r/3/

내 생각에 그러나, 적절한 값을 백업 할 내 시도를 객체의 x 속성과 D3의 역 규모의 일종을 사용하는 것입니다 :

.text(d.attr("x")); 

또는 마우스 오버 기능에

.text(d.properties.x); 

는 정의오고있다, 게다가 나는이 될 것으로 예상 x 좌표는 실제로 사용자가 차트에서 볼 수있는 것과 일치하도록 해당 속성의 x 스케일 인버스를 원할 때 사용합니다.

가장 좋은 방법은 무엇입니까?

감사 대신 d

+0

일반적인 패턴은 함수를 사용하는 것입니다. '.text (function (d) {return d.x;})'그러나, 당신의 jsfiddle에서는 어떤 데이터도 요소에 바인딩되어 있지 않으므로 작동하지 않습니다. –

+0

'd' 대신'this'를 사용해보십시오. – falsarella

답변

0

사용 this : 30는 X 축 1의 값에 대응하는 픽셀의 높이가

.text(this.getAttribute("height")/30);

참고있다.

프로그래밍 방식으로 해당 값을 얻을 수 있다면 훨씬 좋습니다.

제발, see a working fiddle whith this solution here.