HighCharts动态更改标题

时间:2015-08-03 07:34:26

标签: javascript android highcharts

这是我的highcharts javascript代码

$(function () {
var chart = $('#container').highcharts({
    chart: {            
        type: 'line'
     },
    title: {
        text: 'Monthly Average Temperature',
        x: -20 //center
    },
   ....
   ....

  // Here i need to change the title based on the if condition, I dont how to do


   if(boolean value){
       chart.title.text :'Some Positive Title';
   }else{
       chart.title.text :'Some Negative Title';
   }

  // Writing the above way shows me error


   });

我从android代码发送布尔变量。并且基于布尔值,我必须更改标题

请帮帮我。

1 个答案:

答案 0 :(得分:2)

使用setTitle

if(boolean value){
       chart.setTitle('Some Positive Title');
   }else{
       chart.setTitle('Some Negative Title');
   }

<强>更新: 由于您希望在加载时更新标题,因此简单的解决方案是使用变量作为图表标题。 http://jsfiddle.net/g7rjcrv9/

$(function () {
    var someFlag = true;
    var chartTitle =  'Some Positive Title';

    if(!someFlag){
      chartTitle = 'Some Negative Title';
    }

    var chart = $('#container').highcharts({
        chart: {            
            type: 'line'
         },
        title: {
            text: chartTitle,
            x: -20 //center
        },
        subtitle: {
            text: 'Source: WorldClimate.com',
            x: -20
        },
        xAxis: {
            categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
                'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
        },
        yAxis: {
            title: {
                text: 'Temperature (°C)'
            },
            plotLines: [{
                value: 0,
                width: 1,
                color: '#808080'
            }]
        },
        tooltip: {
            valueSuffix: '°C'
        },legend: {
                        layout: 'vertical',
                        align: 'right',
                        verticalAlign: 'middle',
                        useHTML: true,
                        itemMarginBottom: 10,
                        borderWidth: 0,
                          y: 0,


                    },
        series: [{
            name: 'Tokyo',
            data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6]
        }, {
            name: 'New York',
            data: [-0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8, 24.1, 20.1, 14.1, 8.6, 2.5]
        }, {
            name: 'Berlin',
            data: [-0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9, 1.0]
        }, {
            name: 'London',
            data: [3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8]
        }]
    });


});