1

https://developers.google.com/chart/interactive/docs/gallery/controls#overviewの例のように、カテゴリセレクターを備えたGoogle円グラフがあります。

このグラフの目的は、複数のWebサイト(Google Analyticsプロファイル)からのメディアごとのトラフィックソースを表示することです。そのため、データソースには、「GAプロファイル」、「中」、「訪問」の3つの列があります。

ドロップダウンカテゴリフィルターを使用して、「GAプロファイル」に基づいてフィルター処理しています。つまり、ユーザーがさまざまなGAプロファイルのトラフィックメディアの表示を切り替えることができるようにするためです。円グラフ自体の場合、スライスラベルは「中」であり、スライスのサイズは「訪問」に基づいています。したがって、データ配列は次のようになります。

var data = google.visualization.arrayToDataTable([
['Brand', 'Medium', 'Visits'],
['SiteA', 'Banner', 819527],
['SiteA', 'Direct', 489598],
['SiteA', 'Organic Search', 249444],
['SiteA', 'Paid Search', 248824],
['SiteB', 'Banner', 24858],
['SiteB', 'Direct', 24744],
['SiteB', 'Organic Search', 23751],
['SiteB', 'Paid Search', 22751]
]);

(「GAプロファイル」が選択されていない場合、サイトごとに各メディアが個別に一覧表示されるため、グラフは意味がありません。ただし、そのように表示することを意図したものではありません。カテゴリフィルターのデフォルトは1です。 GAプロファイルの1つであり、そのうちの1つを常にアクティブにすることを目的としています。)

とにかく、これは1つのことを除いて、すべて正常に機能します。GAプロファイルを切り替えるときに、メディアの色が一貫していません。たとえば、「サイトA」を選択すると、「直接」は青で「有機検索」は赤になり、「サイトB」では「直接」は赤になり、「有機検索」はオレンジになります。データを表示しているGAプロファイルに関係なく、各メディアのスライスは常に同じ色である必要があります。これをどのように達成できるかについてのアイデアはありますか?ドキュメントを調べましたが、スライスの色を指定する方法が見つかりませんでした。全体として配色を設定する唯一の方法です。Google Chartオプション内でこれを行う方法、または最初のdraw()の後に色を設定する方法はありますか?

4

1 に答える 1

1

APIを使用すると、各セグメントに表示される色を指定できます。これを使用して、次のように使用する色のローリングセットを定義できます。

var options = {
    colors: ['blue', 'red', 'orange', 'purple']
}

これにより、4つの色が4つのセグメントに適用され、5番目のセグメント(この場合は次のサイトの開始)に到達すると、割り当てた色のリストから再開されます。

アップデート

データセットがサイト間で異なる場合は、すべてのセグメントの色を指定する必要があります。すべての値を通過するループを作成し、すべてのセグメントに正しい色を割り当てて、次のような色のリストを作成することができます。

colors: ['blue', 'red', 'orange', 'purple', 'blue', 'red', 'orange', 'purple', 'blue', 'red', 'orange', 'blue', 'purple'...]

もちろん、これは非常に長い色のセットになる可能性がありますが、それを行う唯一の方法です。

于 2012-08-03T11:01:47.960 に答える