今回のテーマはPanel Chartです。
むかし自分で作ったパネルチャートVizがあったのですが、Workout Wednesday WEEK 41: TOP & BOTTOM HIGHLIGHTSにインスパイアされて、パネルチャート解説記事&背景ハイライトの方法を書こう、と思い立った次第です。
以下のリンクから、今回使ったワークブックをダウンロードできます。
https://public.tableau.com/profile/yoshitaka6076#!/vizhome/PanelChart_5/sheet0?publish=yes
【そもそもパネルチャートとは?どういうときに使うもの?】
(ちなみにパネルチャートはスモールマルチプルチャートとも呼ばれますが、ここでは呼びやすい前者で。)
まず最初に、おなじみSuper Storeのデータで「サブカテゴリー別の売上を時系列で見たい」という可視化ニーズがあるとします。
まず思いつくのは、以下のようなものではないでしょうか。

このLine Chartの羅列、いかがでしょうか。僕は結構つらいんじゃないかな、と思います。
なぜなら
・グラフがつぶれていて見にくい。これでは一番見たい「売上の時系列変化:上昇傾向なのか、季節性はあるのか、etc...」が伝わらない。
・同じグラフが縦並びになると、サブカテゴリーとグラフを対応させるのが辛い(特にグラフ後半)。
このようなときに、パネルチャートは強力です。

「サブカテゴリーごとの売上の時系列変化」が一目瞭然ではないでしょうか。
元々のVizの問題は「画面の使い方」でした。
パネルチャートのパワーは「画面を最大限活用できる」ということにある、と思います。
【パネルチャートの作り方】
まずは「どうパネル」を作るかを解説します。今回のような、1つのディメンションでパネルを作る場合は、以下の数式を使用します。
Row Divider
INT((INDEX()-1)/(ROUND(SQRT(SIZE()))))
Column Divider
INT((INDEX()-1)%(ROUND(SQRT(SIZE()))))
RowとColumnの違いは、Rowが割り算の「商」を求めているのに対し、Columnが割り算の「余り」を求めている点です。
今回の場合、これをサブカテゴリーを使用して計算させ、下図のように配置すれば完成です。

しかしながら、Row DividerとColumn Dividerの計算式は、ちょっと直感的にわかりにくいのでは、と思います。これを解説した(厳密にはしようとしたが、分かりやすいのか不安)スライドを以下にご用意しました。
(正直なところ、パネルチャートは計算式コピペで十分なほど簡単なので、興味のある方はどうぞ、くらいです。)
https://www.slideshare.net/YoshitakaArakawa/panel-chart
【バックグラウンドをハイライトする方法】
最後に背景ハイライトの方法です。
(実は最近まで、ColumnとRow両方にメジャーが入っているとき、背景ハイライト系の手法が使えないと思っていました)
やること自体は以前の記事「グループによる色付けと、数字による色付けを両立させた棒グラフ」と同様に、MIN(1.0)を使います。

ポイントはMIN(1.0)を「エリアチャート」で使うことです。縦軸の範囲を調整することにより、背景のように使うことができます。
例えばこれを「全体Profitが1位と最下位をハイライトしたい」という場合、左図のようにできます。
それぞれの総Profitで色付けして、SalesとProfitの様子を見てみたいという場合は右図でしょうか。
サブカテゴリーは全体Salesでソートされています。ProfitとSalesをセットで見やすいですね。
左図のProfitトップor最下位をハイライトする計算式は、ぜひワークブックをダウンロードして確かめてみてください。LOD計算のいい練習だと思います。
【ちなみに】
最新版のSuperstoreデータは欠損値もあるようで、その場合にパネルチャートでLine Chartを使ったときに、下図みたいになるようです。
直し方は調査します。とりあえずはBar Chartで何とかなる感じです。

【11/3 追記】
治りました。Tableau Publicのファイルもアップデートしましたので、詳細はそちらに。
簡潔に言えば
・SUM(Sales)の代わりにZN(SUM(Sales)) + INDEX() - INDEX()で、欠損値に0を当てはめる
・日付の「欠損値を表示する」オプションをチェックする
この2点で大丈夫でした。

【2020/12/10 追記】
欠損値のある場合について、以下の記事で詳しく取り上げました。
今回はパネルチャートをご紹介しました。いかがだったでしょうか。
コメント、フィードバック等をTwitter, Linkedinでいただければありがたいです。
お題のリクエストも歓迎します。