1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Splunk: 散布図・バブルチャート

Posted at
実施環境: Splunk Free 8.2.2

0. 概要

Splunk においてデフォルトで使用できるグラフはいくつかありますが、その中に散布図というグラフと、バブルチャートというグラフが存在します。
この2つのグラフは、項目と項目の関係性を分析するのに用いられます。
このグラフを正しく活用するにはある程度統計に関する知識や経験が必要ですが、今回はそのあたりには触れず、 Splunk におけるグラフの作成方法に絞って説明します。

WS000001.JPG

1. SPL 文の組み方

例として、以下の SPL 文を使用します。

Splunk(散布図)
| makeresults count=10000
| eval ITEM = random() % 50
| eval NUM_X = random() % 1000
| eval NUM_Y = random() % 1000
| stats avg(NUM_X), avg(NUM_Y) BY ITEM

WS000001.JPG

Splunk(バブルチャート)
| makeresults count=10000
| eval ITEM = random() % 50
| eval NUM_X = random() % 1000
| eval NUM_Y = random() % 1000
| eval NUM_SIZE = random() % 100
| stats avg(NUM_X), avg(NUM_Y), avg(NUM_SIZE) BY ITEM

WS000003.JPG

表としては一番上のヘッダ行に軸の名前が入り、2行目以降は一番左の列から点の名前、横の値、縦の値が入ります。
バブルチャートの場合は一番右の列に点のサイズも追加されます。
stats コマンドで関数フィールドを2つか3つ指定し、 BY 句を1つ指定したものがよく使用されます。

- 横軸名 縦軸名
点名 横の値 縦の値
点名 横の値 縦の値
... ... ...
- 横軸名 縦軸名 -
点名 横の値 縦の値 点のサイズ
点名 横の値 縦の値 点のサイズ
... ... ... ...

2. 使用方法

散布図は、 Splunk 視覚エフェクトの「 Scatter Chart 」を選択することで使用できます。

WS000004.JPG

バブルチャートは、 Splunk 視覚エフェクトの「 Bubble Chart 」を選択することで使用できます。

WS000005.JPG

3. マークのサイズ

「 Bubble Chart 」を使用した際のフォーマットのマークタブには、「最小サイズ」「最大サイズ」という項目があります。
この設定を変更することで、点のサイズを変更できます。
この設定で変更できるのは純粋に点のサイズのみであり、ここで指定した値より小さいデータや大きいデータが除外されるといったことはありません。

WS000006.JPG

例えば、最小サイズ1/最大サイズ2の場合は以下のようになります。

WS000007.JPG

最小サイズ10/最大サイズ100の場合は以下のようになります。

WS000008.JPG

最小サイズと最大サイズの差が大きいほど点のサイズの違いは見やすくなりますが、あまりに小さいサイズや大きいサイズの点は逆にグラフをわかりにくくします。
データの内容などに合わせて適宜変更してください。

4. 複数グループでの比較

上記の SPL において stats コマンドの BY 句にもう1つ項目を追加すると、色で点をグループ分けすることができます。

Splunk(散布図)
| makeresults count=10000
| eval ITEM1 = random() % 10
| eval ITEM2 = 10 + random() % 10
| eval NUM_X = random() % 1000
| eval NUM_Y = random() % 1000
| stats avg(NUM_X), avg(NUM_Y) BY ITEM1, ITEM2

WS000010.JPG

Splunk(バブルチャート)
| makeresults count=10000
| eval ITEM1 = random() % 10
| eval ITEM2 = 10 + random() % 10
| eval NUM_X = random() % 1000
| eval NUM_Y = random() % 1000
| eval NUM_SIZE = random() % 100
| stats avg(NUM_X), avg(NUM_Y), avg(NUM_SIZE) BY ITEM1, ITEM2

WS000011.JPG

表としては一番上のヘッダ行に軸の名前が入り、2行目以降は一番左の列から点の名前、グループの名前、横の値、縦の値が入ります。
バブルチャートの場合は一番右の列に点のサイズも追加されます。

- - 横軸名 縦軸名
点名 グループ名 横の値 縦の値
点名 グループ名 横の値 縦の値
... ... ... ...
- - 横軸名 縦軸名 -
点名 グループ名 横の値 縦の値 点のサイズ
点名 グループ名 横の値 縦の値 点のサイズ
... ... ... ... ...

あまり細かくグループ分けしてもわかりにくいので、グループ分けは最小限にすることをおすすめします。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?