6

編集:これで、すべてのデータが右に押し出されたグラフができましたが、表示したいセットのラベルが異なる色になっていますが、データはありませんか?? コードを更新しました

元の投稿: http://opensourcesurf.com/chart.htmlで動作するハイチャートがあります。問題は、個々のデータ セットの色を変更しようとすると、すべてが変更されることです。コードを指定してこれらの設定を変更するにはどうすればよいですか? 前もって感謝します!

コード:

    var options1 = {
    chart: {
        renderTo: 'container1',
        type: 'area'

        },
    xAxis: {
                type: 'datetime'

    },

    series: [{
        name: 'Swell Period',
        color: '#0066FF',
        data: 'newSeriesData',
    },
    {   name: ' Maximum Breaking Wave Height',
        color: '#ffffff',
        data: 'newSeriesData',
    },
    {   name: 'Swell Height',
        color: '#123456',
        data: 'newSeriesData',
    }],
};

var drawChart = function(data, name, color) {



 var newSeriesData = {
    name: name,
    data: data
 };

    // Add the new data to the series array
    options1.series.push(newSeriesData);

    // If you want to remove old series data, you can do that here too

    // Render the chart
    var chart = new Highcharts.Chart(options1);



};
$.getJSON('decode.php', function(data){
    drawChart(data, 'Swell Height');
}); 

$.getJSON('decode2.php', function(data){
    drawChart(data, ' Maximum Breaking Wave Height');
});

$.getJSON('decode3.php', function(data){
    drawChart(data, 'Swell Period');
});
4

3 に答える 3

12

これを試して:

// 'series' is an array of objects with keys: 
//     - 'name' (string)
//     - 'data' (array)
//     - 'color' (HTML color code)
var newSeriesData = {
    name: name,
    data: data,
    color: color

};
于 2013-11-08T18:17:49.197 に答える
5

特定のシリーズの色を指定する方法は、シリーズを定義するときに色を定義することです。例えば:

series: [{
        name: 'John',
        color: '#0066FF',
        dashStyle: 'ShortDash',
        data: [
            [Date.UTC(2010, 0, 1), 29.9],
            [Date.UTC(2010, 2, 1), 71.5],
            [Date.UTC(2010, 3, 1), 106.4]
        ]
    },

基本的に、ドローチャート関数でシリーズを作成するときは、名前を確認し、適切に色を割り当てます。

var color;
 if(name=="Swell Height"){
     color="#0066FF";
 }else if(name=="Maximum Breaking Wave Height"){
     color="#0066EE";
 }else if(name=="Swell Period"){
     color="#0066HH";
 }

 var newSeriesData = {
    name: name,
    data: data,
    color: color
 };
于 2013-11-08T18:22:49.357 に答える
1

データの配列をループしていないように見えます。および/または にデータのセットが 1 つしかありませんdata

于 2013-11-08T18:18:27.297 に答える