2013-07-30 3 views
0

다음과 같은 차트가 있습니다.하이 차트 포맷

Chart

나는 두 개의 별도 qusetions이 있습니다. ""내가이 가질 수있는 방법

  1. 을 시리즈의 수천 명의 분리 자 (데이터 위로 마우스를 가져 가면 툴팁에 하나씩 있음)로 따라갑니다. 나는 plotoptions와 numberformat을 조사해 보았지만 이것을 해결하지 못했습니다.

  2. 데이터가 너무 작아지고 숫자를 작성하는 것이 어렵다는 점에 접근하는 방법.

나는 2 번 질문이 훨씬 더 자유롭지 만 어떤 아이디어라도 크게 높이 평가할 수 있음을 알고 있습니다.

미리 감사드립니다.

그래프 : '.'

  <script type="text/javascript"> 
       $(document).ready(function() { 
        Highcharts.setOptions({ 
         lang: { 
          thousandsSep: '.' 
         } 
        }); 

         var tapegraph = { 
          colors: [ 
            '#525051' 
          ], 
          exporting: { enabled: false }, 
         chart: { 
          renderTo: 'tapecontainer', 
          type: 'column' 
         }, 
         credits: { 
          enabled: false 
         }, 
         title: { 
          text: 'Tapeforbrug' 
         }, 
         xAxis: { 
          categories: [] 
         }, 
         yAxis: { 
          min: 0, 
          title: { 
           text: 'Gigabyte' 
          }, 
          stackLabels: { 
           enabled: true, 
           style: { 
            fontWeight: 'bold', 
            color: (Highcharts.theme && Highcharts.theme.textColor) || 'gray' 
           } 
          } 
         }, 
         legend: { 
          align: 'right', 
          x: -100, 
          verticalAlign: 'top', 
          y: 5, 
          floating: true, 
          backgroundColor: (Highcharts.theme && Highcharts.theme.legendBackgroundColorSolid) || 'white', 
          borderColor: '#CCC', 
          borderWidth: 1, 
          shadow: false 
         }, 
         plotOptions: { 
          column: { 
           stacking: 'normal', 
           dataLabels: { 
            enabled: true, 
            color: (Highcharts.theme && Highcharts.theme.dataLabelsColor) || 'white' 
           } 
          } 
         }, 
         series: [] 
        }; 

         $.get("../classic_3270/KMDprod1/INFO.CPU.REPORT.MFTAPE" + kunde + ".txt", function (data) { 
          var lines = data.split('\n'); 
          lines = data.trim().split('\n'); 
         $.each(lines, function (lineNo, line) { 
          var items = line.split(','); 

          if (lineNo == 0) { 
           $.each(items, function (itemNo, item) { 
            if (itemNo > 0) tapegraph.xAxis.categories.push(item); 
           }) 
           ; 
          } 

          else { 
           var series = { 
            pointWidth: 42, 
            data: [] 

           }; 
           $.each(items, function (itemNo, item) { 
            if (itemNo == 0) { 
             series.name = item; 
            } else { 
             series.data.push(parseFloat(item)); 
            } 
           }); 

           tapegraph.series.push(series); 
          } 

         }); 

         var chart = new Highcharts.Chart(tapegraph); 

답변

0

1) 설정 thousandSep에 및 작동을 참조하십시오 http://jsfiddle.net/3bQne/310/

Highcharts.setOptions({ 
    lang: { 
     thousandsSep: '.' 
    } 
}); 

2) 글쎄, 당신은 단지 라벨 것을 숨길 수 있습니다 - 같은 건에 대한이 나 dataLabels.formatter를 사용하고 값이 전체의 5 % 같은 아래에 있는지 확인하고 표시하기로 결정 그 dataLabel이 아닙니다.

+0

답변 해 주셔서 감사합니다. 실제로 thsi는 제가 이미 시도한 정확한 것입니다. 그러나 결과가 없습니다. 내 원본에 내 그래프 원본을 포함 시켰습니다. 이 문제를 일으킬 수있는 어떤 생각이 있습니까? 내가 찾은 예제는 이것이 정확해야한다고 제안합니다. –

+0

코드를 jsFiddle에 저장하면 오류가 표시됩니다. 나는 AJAX에서 AJAX의 응답을 단일 문자열 (CSV일까요?)로 설정 했으므로 jsfiddle에서도 작동 할 것입니다. –

+1

이것으로 주변을 둘러 보니 대답이 나 자신을 찾았습니다. 이전 버전의 Highcharts를 사용하고 있었던 것처럼 보입니다. –