
Exploratoryはデフォルトでバーチャートやラインチャートをはじめ、多くのチャートタイプをサポートしていますが、業務やレポートのニーズによっては、デフォルトでは対応していないチャートのタイプを使いたい場面があります。

これまでは、Rのコードでカスタムチャートを作りたい場合、ノートやダッシュボードのコードブロック内に直接Rスクリプトを記述する必要がありました。

この方法では、同じチャートを複数のレポートで使い回したいとき、都度コードをコピー&ペーストしなければならず、管理が煩雑になりがちでした。
また、コードブロックで作ったチャートは、通常のチャートのようにパブリッシュしたり、コメントを付けたりすることもできませんでした。
Exploratory バージョン15では、カスタム (R)が新たにチャートのタイプとして追加されました。

これにより、Rのコードで作成したチャートを他のチャートと同じようにチャート・ビューで管理し、ダッシュボードやノートに簡単に挿入・再利用できるようになります。
チャート・ビューでカスタム (R)を選択すると、Rコードを入力するためのエディターが表示されます。

ここにRのコードを記述することで、任意のチャートを作成できます。
データフレームを参照する際は、通常のRスクリプトと異なり、${DATA}
という書き方で、現在、開いているアクティブなデータフレームを指定します。

なお、他のデータフレームを参照することはできない点に注意してください。
作成したカスタムRチャートは、通常のチャートと同様に以下のことが可能です:
それでは、具体的な2つのチャートタイプの作成例を見ていきましょう。
カスタムRチャートでは、任意のRパッケージを利用できますが、Exploratoryにプリインストールされていないパッケージを使う場合は、事前に自分でインストールする必要があります。
例えば、この後紹介するツリーマップで使用するtreemapパッケージは、Exploratoryにはプリインストールされていないため、インストールが必要です。
インストールするには、プロジェクトメニューから「Rパッケージの管理」を選択します。

インストールのためのダイアログが開いたら、パッケージ名を入力してインストールします。
インストールが完了すると、エディタタ内で
library(treemap)
のように、パッケージを読み込んで使用できるようになります。
ツリーマップは、階層構造を持つデータを四角形の面積で表現するチャートです。親カテゴリーを同系色でグループ化することで、全体に占める各カテゴリーの割合を一目で把握できます。

製品カテゴリー別の売上構成、予算の内訳、Webサイトのトラフィック内訳など、「大きい順に何がどれくらいを占めているか」を見たい場面に適しています。
ツリーマップには、親カテゴリー・子カテゴリーと、それぞれに対応する数値(売上など)を集計したデータフレームが必要です。

データの準備方法については、以下のノートを参考にしてください。
前述したようなデータが手元にある場合、ツリーマップtreemapパッケージを使用し、以下のようなコードを記述します。
library(treemap)
treemap(${DATA}, index=c("製品カテゴリー", "製品サブカテゴリー"),
vSize= "売上", # 値を指定
type="index", # ツリーの色分けの方法を指定
palette = "Set1", # カラーパレットの選択
title="My Treemap", # チャートタイトルを設定
fontsize.labels=c(15,12), # ラベルサイズの指定
fontcolor.labels=c("white","orange"), # ラベルの色の指定
bg.labels=c("transparent"), # ラベルの背景色の指定
align.labels=list(
c("center", "center"),
c("right", "bottom")
), # ラベルの表示位置の指定
fontfamily.labels = "HiraKakuProN-W3", # 日本語をラベルに利用したい時に指定
fontfamily.title = "HiraKakuProN-W3", # 日本語をラベルに利用したい時に指定
fontfamily.legend = "HiraKakuProN-W3", # 日本語をラベルに利用したい時に指定
)

ビューボタンをクリックすると、以下のようにツリーマップが表示されます。

円形コードダイアグラムは、複数のカテゴリー間の関係性や流れを円形レイアウトで表現するチャートです。

弧の太さで関連性の強度を示し、すべてのカテゴリー間の相互関係を一つの図で把握でき、地域間の人口移動、取引先間の資金フロー、チーム間のコミュニケーション量など、「多数のカテゴリーが互いにどれくらい関係しているか」を俯瞰したい場面に適しています。
円形コードダイアグラムでは、移動元と移動先の2列を含むデータが必要です。

前述したようなデータが手元にある場合、circlizeパッケージを使用し、以下のようなコードを記述します。
library(showtext)
library(circlize)
showtext_auto() # これを実行するだけで日本語が通るようになります
chordDiagram(${DATA}[, c("移動元の列", "移動先の列")], transparency = 0.5)
# 方向の情報は持たないため、移動元の列と移動先の列は逆でも問題ありません。

ビューボタンをクリックすると、以下のように円形コードダイアグラムが表示されます。

円形コードダイアグラムの詳細につきましては、以下のノートを参考にしてください。
カスタムRチャートを使うことで、Exploratoryがデフォルトでサポートしていないチャートタイプも、チャート・ビューで管理してダッシュボードやノートで再利用できます。
まだExploratoryをお使いでない方は、30日間の無料トライアルをぜひお試しください!