javascript - 类别和系列有条件

标签 javascript highcharts

图表代码:

        <script type="text/javascript">
$(function () {
$("#formulario").submit(function() {
    var cidade = $("#cidade").val();
    var cidade_nome = $( "#cidade option:selected" ).text();
    var mans_00 = $('#mans_00:checked').val();
    var mans_05 = $('#mans_05:checked').val();
    var mans_10 = $('#mans_10:checked').val();
    var registro;
    var param_1;
    console.log(cidade);
    $.post('envia.php', {cidade: cidade}, function(resposta) {
    resposta = JSON.parse(resposta);

      for(var i=0; i<resposta.length; i++) {
             registro = resposta[i];
            console.log(registro.man_ins_prod_05);
        }   
    $('#container2').highcharts({
        chart: {
            type: 'column'
        },
        title: {
            text: 'Monthly Average Rainfall'
        },
        subtitle: {
            text: 'Source: WorldClimate.com'
        },
        xAxis: {
            categories: [

                if(mans_00==mans_ins_area_00)
                {'2000',}
                '2005',
                '2010'
            ]
        },
        yAxis: {
            min: 0,
            title: {
                text: 'Mandioca (ton)'
            }
        },
        tooltip: {
            headerFormat: '<span style="font-size:10px">{point.key}</span><table>',
            pointFormat: '<tr><td style="color:{series.color};padding:0">{series.name}: </td>' +
                '<td style="padding:0"><b>{point.y:.1f} ton</b></td></tr>',
            footerFormat: '</table>',
            shared: true,
            useHTML: true
        },
        plotOptions: {
            column: {
                pointPadding: 0.2,
                borderWidth: 0
            }
        },
        series: [{
            name: cidade_nome,
            data: [Number(registro.man_ins_prod_00), Number(registro.man_ins_prod_05), Number(registro.man_ins_prod_10)]

        }]
        });
});
    });
});
        </script>

我的问题是:如果选中了 mans_00 复选框,则将“2000”放入类别中。我尝试过这种形式: PS:mans_00包含mans_ins_area_00

如果(mans_00==mans_ins_area_00) {'2000',} '2005', '2010'

此代码不起作用

最佳答案

我认为这就是您所需要的。
http://jsfiddle.net/jzkvzo3z/3/

您将需要一个处理程序$('#myform :checkbox').click(function(){。每次选中/取消选中复选框时都会调用此函数。此处理程序内部包含所有需要的逻辑。您可以像这样更改类别以及与这些类别关联的所有数据。

chart.xAxis[0].setCategories(categories);
chart.series[0].setData(john_data);

编辑

哈,我忘了解释你做错了什么。要构建图表,请调用函数:$('#container2').highcharts({。该函数采用一个参数,该参数是一种数据结构。该数据结构描述了您要构建的图表。数据结构如下所示。

var data_structure = {
     descriptor1 : value, //Value may be Integer, String ....
     descriptor2 : value, 
     descriptor3 : function () {....code.......},  //A descriptors value can be a function too.
     descriptor4 : [2,4,5,6],  //Array
     ..............................
}

您不能将代码放置在结构内。

关于javascript - 类别和系列有条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28408664/

相关文章:

JavaScript 选择前 n 个 boolean 值

javascript - Highcharts 重复显示相同的数据

node.js - mocha 单元测试中 Highchart 导入时出错

javascript - 如何使用 jquery ajax 和 Php 在单击按钮时加载页面?

javascript - 了解 React.js 中数组子项的唯一键

javascript - 这两个JS函数有什么区别?

javascript - 无法获取在弹出文本框中输入的值

javascript - 如何通过嵌套 Gridview 中的按钮单击获取 TextBox 值

javascript - highcharts 缩放折线图无法正常工作

node.js - 使用(moSTLy)一个代码库构建动态 HighCharts 和图像 Highcharts?