2012-09-05 5 views
4

이 그래픽의 라벨이 있습니다 : http://jsfiddle.net/gh/get/jquery/1.7.2/highslide-software/highcharts.com/tree/master/samples/highcharts/demo/combo/ 레이블은 "전체 과일 소비"만든 차트 후하이 차트 동적으로 라벨을 변경 하시겠습니까?

입니다, 나는 동적으로 문장을 변경하는 방법?

PS : 나는 레이블을 설정하고 그래픽 다시 그리기를 시도했지만 작동하지 않았다 : http://jsfiddle.net/UXDqL/

어떤 아이디어?

답변

2

플롯을 그린 후에 변경하려면 요소 자체에 작용하십시오.

// find me the tspan containing the specified text and change it to... 
$("tspan:contains('Total fruit consumption')").text("Something New") 
+0

highchart가 또는 SVG –

1

Highchart 동적 Highcharts 3.0로 라벨 헤더를 업데이트 할 수있는 방법을 제공하지 않습니다 :로 JQuery와 선택기를 사용하여는 간단합니다. 시리즈를 동적으로 업데이트하는 방법을 제공합니다. http://api.highcharts.com/highstock#Series.update()

레이블 헤더를 업데이트하려면 무차별 방식 즉 차트 옵션을 업데이트 한 후 다시 차트를 렌더링해야합니다.

var mychart = $('#container').highcharts(); 
    mychart.options.labels.items[0].html= "Changed label header"; 
    mychart = new Highcharts.Chart(mychart.options); 
    mychart.render(); 

JsFiddle : 다음 코드는 트릭을 할해야 http://jsfiddle.net/msjaiswal/ZD4N5/2/

비슷한 스레드 : 당신은 객체를 유지하는 변수를 사용하여 다음 렌더러의 텍스트를 (사용) 할 수 있습니다 레이블을 사용 here

9

Insted . 이 텍스트를 동적으로 업데이트해야하는 경우, 사용하려는 attr() 함수와 업데이트 만 필요합니다.

http://jsfiddle.net/6GKCJ/2/

var title = chart.renderer.text('Total fruits consumption', 100, 90) 
     .css({ 
      fontSize: '12px' 
     }) 
     .add(); 

     $('#btn').click(function(){ 

      title.attr({ 
       text:'newText' 
      }); 
     }); 
+0

를이 내가 검색 한 무엇인가 뱉어하지 않을 수도 있습니다 esp는 자사의 SVG 렌더링 할 것이라는 가정에 따라 때문에, 브라우저에서 작동하지만, 브라우저를 기반으로하지 않을 수 있습니다 감사합니다. –

관련 문제