2016-04-14 16 views
1

私は全く新しいHighchartsになりました。私はsplinepieの2種類を作っています。 enter image description hereパイハイチャートで問題を表示

そして、この:私はすぐに見ることができているenter image description here

問題彼らは今、このように見えます。 enter image description here

私はそうのようなチャートタイプを更新するために、成功する:私は彼が彼のチャートが表示されるように望んでいる方法を決定することができ、ユーザーの2つのボタンがあるので

$('#pie').click(function(){ 
      if($('#pie').hasClass('active')!=true){ 
       $('#spline').removeClass('active'); 
       $('#pie').addClass('active'); 
       $('#curve_chart').highcharts().series[0].update({ 
        type: "pie" 
       }); 
      } 
     }); 

をしかし、私はこのpieチャートを望んでいませんこのように表示されます。値が毎日表すsplineタイプではなく、Notiflow:35などでこれはチャートの責任のコードであるように私は、欲しい:

var type=''; 
     $('#spline').click(function(){ 
      if($('#spline').hasClass('active')!=true){ 
       $('#pie').removeClass('active'); 
       $('#spline').addClass('active'); 
       $('#curve_chart').highcharts().series[0].update({ 
        type: "spline" 
       }); 
      } 
     }); 

     $('#pie').click(function(){ 
      if($('#pie').hasClass('active')!=true){ 
       $('#spline').removeClass('active'); 
       $('#pie').addClass('active'); 
       $('#curve_chart').highcharts().series[0].update({ 
        type: "pie" 
       }); 
      } 
     }); 

     $(function() { 
      if($('#spline').hasClass('active')){ 
      type='spline'; 
      }else{ 
      type='pie'; 
     } 
     $('#curve_chart').highcharts({ 
      chart: { 
       type: type 
        }, 
      title: { 
       text: 'Click through rate:' 
       }, 
      xAxis: { 
      categories: [<?php foreach ($percentagePerDay as $key => $value) { 
      if ($value != $last) { 
      echo substr($key, -2); 
      echo ','; 
      } else { 
      echo substr($key, -2); 
      } 
      }?>]//key 
      }, 
     yAxis: { 
      title: { 
      text: 'Percentage' 
      } 
      }, 
     series: [{ 
     name: '<?= $name ?>', 
     data: [<?php foreach ($percentagePerDay as $key => $value) { 
     if ($value != $last) { 
     echo $value; 
     echo ','; 
     } else { 
     echo $value; 
     } 
     }?>]//value 
     }] 
     }); 

     }); 

私はそうのようなハードコードされた値を表すためにpieチャートを作ってみました:

$('#pie').click(function(){ 
     if($('#pie').hasClass('active')!=true){ 
      $('#spline').removeClass('active'); 
      $('#pie').addClass('active'); 
      $('#curve_chart').highcharts().series[0].update({ 
       type: "pie" 
       series:[{ 
       data:[['11',35],['12',15],['13',30],['14',20]] 
       }] 
      }); 
     } 
    }); 
      } 
     }); 

しかし、pieハイチャートは変更されていません。何より、私は(typeのを除いて)この行に追加する必要があります:

$('#curve_chart').highcharts().series[0].update({}); 

ために、私のpieため、それらの「スライス」の瞬間を削除するんsplineなどの範囲内のそれぞれの日の値を表すために?

UPDATE: だから、これは私が私のパイを見てみたい方法です: enter image description here

+2

あなたはフィドルを作成できますか? –

+0

おそらく、名前付きプロパティを持つオブジェクトとしてキーを使うか、データポイントを設定する必要があります。私はまだ円グラフのように見えるべきではありません - おそらくあなたは必要なチャートの画像を投稿することができますか? –

+0

@Kacper Madej私の質問が更新されましたので、私のパイがどのように見えるか確認できます – Ognj3n

答えて

0

オブジェクトに直列に合格していないOシリーズを更新 - のみシリーズのプロパティを、などの名前、タイプ、データ、のような画像にdataLabelsのようにすると、ポイントの名前を設定するだけでよいので、Highchartsはそれを動作させます。

例:http://jsfiddle.net/tvd6faf9/