2

次のように定義された積み上げグループ棒グラフがあります。

各グループは個々のエンティティを指します。各スタックは、そのエンティティのデータのサブセットを参照します。各スタックには 4 つのバーがあります。

問題はこれです: 各スタックは、グループとバー全体で本質的に同じです。グループに 5 つのスタックがある場合でも、技術的には合計バーは 4 つしかありません。ただし、Highcharts では、シリーズの名前は、グループ化の方法に関しては無関係です。「Bar 1」という名前のシリーズが 50 ある場合、それらのスタックが異なっていても、凡例に 50 の「Bar 1」エントリが表示されることになります。

私が欲しいのは、バーごとに単一の凡例/データ エントリ (例: "バー 1"、"バー 2") であり、バーごとにスタックごとに 1 つのエントリ (例: "バー 1 - スタック 1"、"バー 1 - スタック) ではありません。 2」、「バー 1 - スタック 3」、「バー 2 - スタック 1」、嫌悪感を覚える)。

これは可能ですか?

(混乱している方のために: ハイチャートは、グループ化/積み重ねに関しては奇妙なものです。「バー」は積み重ねられたバーのセットですが、

4

2 に答える 2

3

これは、探している最終結果を得るのに実際には役立ちませんが、これは私がしなければならなかったことです.

チャートに色を設定し、毎回繰り返します。

colors: [
                '#3d3d3d' ,
                '#3d3d3d' ,
                '#008000' ,
                '#008000' ,
                '#86B201' ,
                '#86B201' ,
                '#97cb00' ,
                '#97cb00' ,
                '#f79646' ,
                '#f79646' 
    ] 

必要な順序でチャートを出力している限り、出力は同じように見えます。

2 番目のステップは、シリーズの半分 (繰り返されるもの) の凡例を無効にすることです。

たとえば、シリーズは次のようになります。

{
    name: 'Locked',
    data: [1, 2, 3],
    stack: 'Subitem 1',
    showInLegend: false
}

これにより、繰り返されるアイテムの半分が凡例に表示されなくなります。ただし、これはまた、凡例のアイテムをクリックしてアイテムを表示/非表示にすることができないことを意味します (その機能を無効にしても、ユーザーを混乱させることはありません)。

それが役立つことを願っています。

于 2012-08-08T00:58:02.703 に答える
2

解決策 1

スタックを実行する代わりにデータを結合し、フォーマッターを使用してロック済み、ロック解除済み、および潜在的なカテゴリを一覧表示できます。これは、追加のデータをデータ ポイントに追加し、たとえば次の方法でアクセスすることによって行わthis.point.lockedれます。データを使用した例については、更新された jsfiddleを参照してください。

解決策 2

ドーナツ グラフを使用してデータを表示します。内側の部分はシリーズの識別子で、外側のリングはロック、ロック解除、および可能性のカウントになります。

解決策 3

シリーズではなくグラフの凡例が有効または無効になっています。したがって、凡例を無効にすることができます。スタック内の各シリーズを特定の色に設定し、ポイントのクリックイベントを使用してシリーズ ID を取得し、シリーズのオン/オフhide()を切り替えることができる関数を呼び出します。サブタイトルには、 Click on Series to Hideのようなものを入れます。次に、非表示のシリーズをリセット/再表示する別のボタンも追加する必要があります。

于 2012-05-21T21:24:58.863 に答える