0

我有两个文件 1. Analytics.php 2. get_data_journ.php

Analytics.php 代码

 function show_journal(jour_id){
   $.post("journal_table/get_data_journ.php", {JOURNID: ""+jour_id+""},  function(data_jour){   

        var options = {
            chart: {
                renderTo: 'container_journal',
                plotBackgroundColor: null,
                plotBorderWidth: null,
                plotShadow: false           
            },

             xAxis: {
                 title: {
                    text: 'Year'
                },
                 categories: []
                },

               yAxis: {
                    title: {
                        text: 'Number of Citations'
                    },
                    plotLines: [{
                        value: 0,
                        width: 1,
                        color: '#808080'
                    }]
                },

            series: [{
                type: 'line',
                name: 'Citations',
                data: []

            }]


        }


        $.getJSON("journal_table/get_data_journ.php", {JOURNID:jour_id}, function(data_jour) {
            options.series[0].data = data_jour;

            chart = new Highcharts.Chart(options);
        });

}); 
}


  echo '<a href="#" style="text-decoration: none; color: #000;" onClick="show_journal('.$jour_id.')">'.$jour_title.'</a>';

get_data_journ.php 代码

 <?php
  include '../connect.php';

  $get_journid = $_REQUEST['JOURNID'];

  $result_journ = mysql_query("SELECT year, citations, jour_id FROM journ_graph WHERE  jour_id = '$get_journid'");

  $rows_journ = array();
   while($r_journ = mysql_fetch_array($result_journ)) {
 $row_journ[0] = $r_journ[0];
 $row_journ[1] = $r_journ[1];
 array_push($rows_journ,$row_journ);
 }

 print json_encode($rows_journ, JSON_NUMERIC_CHECK);

 ?>

所以onclick函数使用while循环,所以如果有10个期刊,就会列出10个期刊,用户可以选择任何期刊,所以根据用户点击会显示折线图。在这里,我使用的是 highcharts。这工作得很好。当用户点击时,图表会相应改变。但是现在的问题是当用户想要比较 2 个或更多的期刊时,olp 点值应该保留在图表中而不是消失。这个 onclick 事件按照点击的方式工作,如果用户点击另一个日志,那么第一个日志图点就会消失。怎么做。请帮忙。

4

1 回答 1

0

如果您创建了图表,在用户选择的第二个选项中,您可以使用addSeries将系列添加到图表中,而不是创建新图表。

于 2013-09-26T11:46:39.050 回答