【问题标题】:Find lowest and highest values from Google Charts DataTable从 Google Charts DataTable 中查找最低和最高值
【发布时间】:2012-06-13 01:24:52
【问题描述】:

我正在使用此 DataTable 绘制图表 (Google Charts API):

chart_data = new google.visualization.DataTable();
chart_data.addColumn('string','date');
chart_data.addColumn('number','value');

chart_data.addRows([
    ["10 May",0.23],
    ["11 May",0.26],
    ["12 May",0.29],
    ["13 May",0.23],
    ["14 May",0.21],
    ["15 May",0.25],
    ["16 May",0.28]
]);

我需要找出 DataTable 中 value 列的最低值和最高值。有一些名为 google.visualization.data.max 的函数,但没有任何关于如何实现它的实际代码示例。有人用过这个功能吗?或者,有人对此问题有其他解决方案吗?谢谢!

【问题讨论】:

    标签: jquery google-visualization google-datatable


    【解决方案1】:
    //If your fetching data from Mysql 
    
    <script type="text/javascript">
     google.load("visualization", "1", {packages:["corechart"]});
     google.setOnLoadCallback(drawChart);
     function drawChart() {
     var data = google.visualization.arrayToDataTable([
    
     ['LIFESTYLE','TECHNOLOGY LEVELS',{ role: 'style' }],
     <?php 
                $query = "SELECT question,useranswer from quiz";
    
                 $exec = mysqli_query($con,$query);
                 while($row = mysqli_fetch_array($exec)){
    
                 echo "['".$row['question']."',".$row['useranswer'].",'gold'],";
                 }
                 ?> 
     
     ]);
     data.getColumnRange(1).max;
    //alert("Min: " + data.getColumnRange(1).min);
    
     var options = {
     title: 'LIFESTYLE CHART',
      // pieHole: 0.5,
      //         pieSliceTextStyle: {
      //           color: 'black',
      //         },
      //         legend: 'none'
     };
     var chart = new google.visualization.ColumnChart(document.getElementById("columnchart12"));
     chart.draw(data,options);
     }
        
    
        
        </script>
    

    【讨论】:

    • 您好,有谁知道如何为 getColumnRange(1).max 设置颜色
    【解决方案2】:

    函数getColumnRange 将返回最大值和最小值。看起来您还需要为数字值声明列类型和名称。

    chart_data = new google.visualization.DataTable();
    chart_data.addColumn('string','date');
    chart_data.addColumn('number','some number');
    
    chart_data.addRows([
        ["10 May",0.23],
    ...
        ["16 May",0.28]
    ]);
    
    alert("Max: " + chart_data.getColumnRange(1).max);
    alert("Min: " + chart_data.getColumnRange(1).min);
    

    【讨论】:

    • 哇,错过了那个方法,我觉得真的很愚蠢,呵呵。感谢您的示例,它运行良好!
    • 不客气!来到 Stack Overflow 是明智之举 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-04
    • 2017-07-20
    • 1970-01-01
    • 2021-07-02
    • 1970-01-01
    相关资源
    最近更新 更多