javascript - 如何通过onClick()函数保留highchart折线图 - php mysql

标签 javascript php mysql highcharts

我有两个文件 1. 分析.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 事件按照点击的方式工作,如果用户点击另一个日记,那么第一个日记图表点就会消失。怎么做。请帮忙。

最佳答案

如果您已经创建了图表,则在用户第二次选择时,可以使用 addSeries这会将系列添加到图表中,而不是创建新图表。

关于javascript - 如何通过onClick()函数保留highchart折线图 - php mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19018846/

相关文章:

JavaScript 正则表达式下划线不起作用

javascript - 在 JavaScript 中访问 Perl 数组

javascript - 使用 JavaScript 禁用鼠标选择

php - 如何在每次迭代中以从上到下的方式旋转数组元素

javascript - 从 Node promise 返回数据

php - 具有挑战性的 SQL 查询

php - 如何从 cakePHP 可包含行为查找中构建单个结果数组?

java - MySQL使用Java从文件中插入大数据集

php - 我可以在没有bind_param的情况下通过PDO Prepared语句完全防止SQL注入(inject)吗?

PHP - MySQL - Foreach 循环瓶颈