jQuery Highcharts:使用下拉列表更改图表类型


jQuery Highcharts: change chart type using dropdown list

我正试图将图表的值更改为以下

<!doctype html>
<head>
<script>
var chart1; // globally available
$(document).ready(function() {
    var chart = 'pie'
    $("select").change(function(){
        chart = $('#chart').val();
        alert(chart);
    });
   chart1 = new Highcharts.Chart({
       chart: {
          renderTo: 'container',
          type: chart 
        },
        yAxis: {
           title: {
              text: 'Temprature'
           }
        },
        series: [{
           name: 'mach_1',
            data: [<?php 
            foreach($chart as $`row) {
            echo  $row['temp'].",";
            }
           ?>]
          }]
      });
});
</script>
</head>
<body>
  <div id="form">
    <label>Select a chart : </label>
    <select id="chart">
      <option>pie</option>
      <option>column</option>
    </select>
  </div>
  <div id="container"></div>
</body>
</html>

我知道这会改变选择时图表的值,但它不会改变图表本身。有什么想法吗?

  1. 你最初的问题很难理解;stackoverflow的一些代码编辑器标记与您试图发布的代码交织在一起。将来,在jsfiddle上放一个代码示例可能会有所帮助。

  2. 如果我正确理解了这个问题,那么您希望更改显示的图表类型。显示数据的饼图;现在显示数据的条形图;现在显示折线图等

  3. 当你有一个Highcharts问题时,很有可能其他人以前在Highcharts论坛上问过这个问题。在你的情况下,我认为这是真的:"动态更改图表类型?"-http://highslide.com/forum/viewtopic.php?f=9&t=5501&p=26274&hilit=开关+图表+类型#p26274

  4. 在上面链接的Highcharts论坛问题中,Highcharts作者Torstein Honsi回答了这个问题,并附上了一把小提琴,你可能会发现这是一个有用的起点,因为他正在改变其中的图表类型。http://jsfiddle.net/tccpT/稍后,Highcharts的支持团队成员包括一把小提琴,在那里我们看到了另一个更改图表类型的例子。http://jsfiddle.net/2hLr5/

  5. 当饼图包含两个以上的数据时,通常建议不要使用饼图作为可视化数据的手段。饼图的值越多,就越难感知这些数据之间的关系。