5

ここに質問用のサンプルコードがあります:http://jsfiddle.net/pzamora/ztxPr/1/

私のシリーズにはさまざまな色がありますが、凡例に表示するにはそれらが必要です

series: [{ name: 'V Genes',
        data: 
        [
            { 
                count: 18320.0, 
                y: 0.92, 
                color: '#3D96AE' 
            }, 
            { 
                count: 1337.0, 
                y: 0.17, 
                color: '#3D96AE' 
            }, 
            { 
                count: 33970.0, 
                y: 1.71, 
                color: '#4572A7' 
            }, 
            { 
                count: 1221.0, 
                y: 1.06, 
                color: '#3D96AE' 
            }, 
            { 
                count: 22073.0, 
                y: 1.11, 
                color: '#4572A7' 
            }, 
            { 
                count: 8331.0, 
                y: 0.42, 
                color: '#3D96AE' 
            }, 
            { 
                count: 64974.0, 
                y: 3.27, 
                color: '#4572A7' 
            },
            { 
                count: 9532.0, 
                y: 0.48, 
                color: '#3D96AE' 
            }, 
            { 
                count: 18106.0, 
                y: 0.91, 
                color: '#4572A7' 
            }
        ]
    }]

.. x値をカテゴリの位置と一致させましたが、すべてのデータがグラフに表示されていません

@jsfiddle: http: //jsfiddle.net/pzamora/phrP7/4/

4

4 に答える 4

2

次のことができます。

  1. データを2つのシリーズに分割
  2. color各シリーズの凡例を追加
  3. 各値にパラメータを追加xして、重複しないようにします

    series: [{ name: 'X Genes', color: '#3D96AE',
        data:
        [ 
            {
                count: 18320.0,
                y: 0.92,
                color: '#3D96AE',
                x: 0
            },
            {
                count: 1337.0,
                y: 0.17,
                color: '#3D96AE',
                x: 1
            },
            {
                count: 1221.0,
                y: 1.06,
                color: '#3D96AE',
                x: 3
            },
            {
                count: 8331.0,
                y: 0.42,
                color: '#3D96AE',
                x: 5
            },
            {
                count: 9532.0,
                y: 0.48,
                color: '#3D96AE',
                x: 7
            }
        ]
    },
    { name: 'V Genes', color: '#4572A7',
        data:
        [
            {
                count: 33970.0,
                y: 1.71,
                color: '#4572A7',
                x: 2
            },
            {
                count: 22073.0,
                y: 1.11,
                color: '#4572A7',
                x: 4
            },
            {
                count: 64974.0,
                y: 3.27,
                color: '#4572A7',
                x: 6
            },
            {
                count: 18106.0,
                y: 0.91,
                color: '#4572A7',
                x: 8
            }
        ]
    }]
    
  4. 値が各列の中央にくるようにに追加stacking: 'normalします。plotOptions

    plotOptions: {
            column: {
                cursor: 'pointer',
                stacking: 'normal'
            }
    },
    
于 2012-12-19T22:05:03.977 に答える
1

凡例要素ごとに、シリーズを作成する必要があります。
したがって、2つの要素が必要な場合は、2つのシリーズを作成する必要があります。
次にx、各ポイントの値を設定して、カテゴリに列スタックを作成する必要があります。

デモ

したがって、次のカテゴリがある場合:

['first', 'second', 'third']

私のシリーズには次のデータが必要です:
serie1:[{count: 400, y: 10, x: 1}]
serie2:[{count: 300, y: 5, x: 0}, {count: 500, y: 15, x: 2}]

この場合、シリーズ1はに表示されsecond、シリーズ2はに表示さfirstthirdます。

デモ

参照

更新

彼女はカテゴリの問題であるため、更新されました。これは、x値がintegerでなくてはならないために発生しますstring

{
    y: 40,
    x: 2,
    count: 300
}

デモ

于 2012-12-19T23:37:01.813 に答える
1
series: [{ name: 'X Genes', color: '#3D96AE',
        data:
        [
            {
                count: 18320.0,
                y: 0.92,
                x: 0
            },
            {
                count: 1337.0,
                y: 0.17,
                x: 1
            },
            {
                count: 1221.0,
                y: 1.06,
                x: 3
            },
            {
                count: 8331.0,
                y: 0.42,
                x: 5
            },
            {
                count: 9532.0,
                y: 0.48,
                x: 7
            }
        ]
    },
    { name: 'V Genes', color: '#4572A7',
        data:
        [
            {
                count: 33970.0,
                y: 1.71,
                x: 2
            },
            {
                count: 22073.0,
                y: 1.11,
                x: 4
            },
            {
                count: 64974.0,
                y: 3.27,
                x: 6
            },
            {
                count: 18106.0,
                y: 0.91,
                x: 8
            }
        ]
    }]

シリーズに指定する場合は、各ポイントの色属性を指定する必要はありません。

JsFiddleデモ

于 2012-12-20T09:30:13.730 に答える
0

凡例のシリーズは1つの色しか持てませんが、シリーズの各ポイントはこの色を上書きできます(コードで行ったように)。凡例にさらに多くのデータが必要な場合は、必要なコードを使用して単一のシリーズを複数に分割できます。この質問に対して期待される結果が何であるかは完全には明らかではありません。

于 2012-12-19T20:58:14.837 に答える