データの可視化シリーズ 第12弾 - 「繰り返し」を使ってヒートマップを複数表示する

# データの可視化シリーズ 第12弾 - 「繰り返し」を使ってヒートマップを複数表示する


こんにちは

Exploratoryの[白戸](https://exploratory.io/author/GMq1Qom5tS/notes)です。

[前回](https://qiita.com/takatoshiroto/items/dfe6fb9009a2a9134996)は、ヒートマップを使用してカテゴリー間の組み合わせごとに集計した数値を色で表示していきました。


今回はヒートマップに繰り返しをすることで、下記のようにOSごとにヒートマップを可視化していきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/192148/8fd98308-0853-cdd2-ded0-4b17da6148d6.png)


# データの可視化の目的

**目的**

* OSごとに何曜日の何時にユーザー数が多い傾向にあるのか知りたい

**使用機能**

* ヒートマップ
* 繰り返し

# 使用データ

前回も使用した、activitiesというアクセスログのデータを使用します。このデータの取得とインポートは[こちら](https://qiita.com/takatoshiroto/items/281f777ebc9945ecb0c6)の記事にあります。

また今回は、このデータフレームのラングリングの3番目のステップを使用するので、チャートが正しく3番目のステップに「ピン」されていることを確認してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/192148/13ef8a46-8972-4068-16ee-5b00b5996312.png)


もし、ステップのピンの変更方法がわからない場合は[前回の記事](https://qiita.com/takatoshiroto/items/9e76ca4527509852fd06)を参照してください。


# 可視化

繰り返しまでは、前回の**曜日と時間毎のユーザー数のヒートマップ**と同様ですので、すでにご覧になられた方は繰り返しから読み進めてください。

## ヒートマップ

新しくチャートを作り、「ヒートマップ」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/192148/4edcf4ed-423b-5e7a-b3f3-36adbe1cad93.png)



曜日ごとにデータを見ていきたいので、X軸にtimestampを選び、「曜日 - ショート(月)」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/192148/38ad5dc1-de3a-2a87-d195-4049f0f92149.png)



次に、1日の時間ごとにデータを見ていきたいので、Y軸も同様に、timestampを選び、「時」を選択してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/192148/c314c39e-73b2-99a1-6581-7702f822e119.png)


今回は、ユーザー数の傾向を色を使用して可視化していきます。

そこで、「色で分割」に「userid」を選びます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/192148/973e18fe-05d6-6763-ffc0-83fdaffa0299.png)


曜日と時間毎のユーザーが何人いるかを見たいため、集計関数は「一意な数(UNQ)」を選びましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/192148/b38c56ce-8124-7eab-fcea-422694537ea8.png)


曜日と時間毎のユーザー数を色を使用して可視化することができました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/192148/af4b2d00-addc-ce70-dd45-37bd13c99e16.png)



## 繰り返し

次に、繰り返しを使用してOS別に見ていきます。

繰り返しに**OS**を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/192148/a8e51031-6a7e-07f3-8e29-9fe17180f949.png)


OS別にヒートマップを可視化することができました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/192148/87eeef98-4c16-dd68-8dec-7ecfe4e5f2b3.png)


しかし、Linuxは数が少ないため、全て青で表示されていてみづらいです。

そのため、フィルタ機能を使用してLinuxを非表示にしていきます。

チャート上部にあるフィルタをクリックし、列に**OS**を選び、演算子を**等しくない**にして、値は**Linux**を選択して実行します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/192148/0053d3e6-fb35-a739-7abb-4a1e78b588e8.png)


MacとWindowsのみを表示することができました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/192148/b996e7c2-51d0-c557-01c4-6ffe5a35793e.png)


どちらも土曜日と日曜日はユーザー数が少ないようです。
また、時間によるユーザー数の違いは多少見られますが、どちらも火曜日から木曜日にかけてユーザー数が多いことがわかります。

# まとめ

今回はヒートマップと**繰り返し**を使用して、カテゴリー間の組み合わせをOSごとに集計して、数値を色で可視化していきました。

２つのカテゴリーの組み合わせを見たいときに便利なのが、ヒートマップというチャートです。ヒートマップは細かなデータを見ることはできませんが、規則性の発見などに役立ちます。

次回から、バブルチャートを使用していきます。
バブルチャートは、X軸とY軸に対応する位置に散布図のように点をプロットします。そして、それぞれのデータポイントに対して、大きさを表現することにより、３つの指標をまとめて可視化することができるチャートとなっています。

* [データの可視化シリーズ 第13弾 - 散布図を使って2つの数値データの関係を可視化する](https://qiita.com/takatoshiroto/items/1ec9b623c3f07f488bf4)

-----

# Exploratoryデータ・アカデミー

データの可視化、またはデータ分析に関してもっと知りたい、学びたいという方は、私達が提供しているトレーニングやセミナーに参加してみてください。

[こちら](https://ja.exploratory.io/data-academy-jp?utm_campaign=chart_intro_12&utm_medium=blog&utm_source=qiita)のExploratoryデータ・アカデミーのページに詳細情報があります。

データを使ってより良い意思決定を行っていきたいと言う方は、ぜひこの機会に参加をご検討ください！