Tableau

AIでTableauのダッシュボードを作る5つの手順|ベストプラクティス

Ryosuke Ishii
図0:AIでTableauのダッシュボードを作る5つの手順
図0:AIでTableauのダッシュボードを作る5つの手順

弊社のAI副社長「アケミ」(Claude)に、国の統計から Tableau のダッシュボードを作って Tableau Public に公開してもらう取り組みを続けています。この記事では、いちばん精度が上がり、手戻りも少なかった進め方と、作りながら分かった「AIにダッシュボードを作らせるときの落とし穴」をまとめます。

結論

  • 手順は5つです。①AIがデータを確かめ、国の公表値と照合する ②見出しで言う結論を人とAIで決める ③Tableau で作れる部品だけで HTML の手本を作り、作り手を伏せた別のAI 2人の採点で詰める ④手本どおりにワークブック(.twb)を書いて公開する ⑤公開版を撮って、伏せた採点で仕上がりを確かめ、描き方のずれを直す
  • 直すのは HTML の手本の段階です。手本なら数分で直して撮り直せます。Tableau で直すと、1回ごとに抽出・公開・撮影が要ります
  • AIの自己採点は当てになりません。自分で88〜90点と付けた6本を、作り手を伏せた2人に採点させたら59〜76点でした。採点は必ず別のAIにさせます

この記事は、弊社が自社の環境で試した記録です。Tableau の開発元が出している公式の手順ではありません。データは truestar社の Prepper Open Data Bank(PODB)が整えている国の公開統計だけを使い、お客様のデータは使っていません。

この手順で作ったダッシュボード

例として、国勢調査2020から「一番下の子が0〜2歳の夫婦で、妻が仕事を持つ割合」を都道府県・市区町村ごとに見るダッシュボードを作りました。県を選ぶと、その県の数字・年齢別のグラフ・市区町村の地図に切り替わります。

図1:この手順で作ったダッシュボード(子が0〜2歳の夫婦、妻が仕事を持つ割合)
図1:この手順で作ったダッシュボード(子が0〜2歳の夫婦、妻が仕事を持つ割合)

▼ Tableau Publicで開く:一番下の子が0〜2歳の夫婦、妻の57%が仕事を持つ(不詳を除く)

5つの手順の全体像

手順誰がやることできあがるもの
① データを確かめるAIデータを読み、癖を調べ、国の公表値と照合する照合済みの集計データ
② 結論を決める人とAI見出しで何を言うかを決める。言えないことは言わない見出しとKPIの文
③ 手本で詰めるAI、別のAI 2人本物の数字で HTML の手本(PC・スマホ)を作り、伏せた採点で直す。点が伸びなくなったら止めるTableau で作れる手本
④ .twb を書くAI手本どおりのワークブックを生成スクリプトで書き、公式の XSD で検査して公開する公開したダッシュボード
⑤ 公開版を確かめる別のAI 2人、人PC(幅1000・1200・1920)とスマホの幅で撮り、自分で崩れを直してから、伏せた採点で確かめる。公開してよいかは人が決める仕上がったダッシュボード

AI が Tableau の画面を操作するのは、抽出を作って公開する最後の数クリックだけです。ダッシュボードの中身(データの接続、計算、グラフ、配置、スマホ版)は、AI が Tableau のファイル(.twb の XML)を直接書いて作ります。

手順1 AIがデータを確かめ、国の公表値と照合する

最初に、AI がデータベース(Snowflake 上の PODB)を読み取り専用で読み、集計してから、まったく別の出どころの数字と照合します。自分の SQL を2通り書いて一致しても、元の表がずれていれば両方ずれるからです。

この段階で見つかった癖の例です。どれも、そのまま画面にしていたら間違った結論になっていました。

  • 政令市を二重に数える:市区町村の表には「市全体」と「区」の両方の行があります。足すと政令市が2回数えられます
  • 年によって数え方が違う:65歳以上の人口を2015年と2020年で比べたら、2020年だけ「年齢不詳を補った値」が混ざっていました。そろえると伸び率は+7.7%ではなく+5.6%でした
  • 区の再編:浜松市は2024年に区が変わり、年によって区の番号が違います。市全体にまとめました
  • 県によって抜けている印:病院のデータの「救急告示」の印は、県によって0件でした。そのまま使うと「徳島・香川は100%遠い」という誤った絵になります

照合に使ったのは、総務省・厚生労働省の公表値や、自治体が出している同じ表です。図1のダッシュボードでは、小田原市が公開している国勢調査の就業状態の表と、1の位まで一致することを確かめてから先に進みました。

手順2 見出しで言う結論を、人とAIで決める

次に、ダッシュボードの見出しで何を言うかを決めます。採点でいちばん点を落としやすいのは、見出しの主張と、画面のグラフがずれているときです。

  • 「女性の方が多く出ていく」という見出しなのに、ランキングは男女を合わせた率だった → 「女性−男性」の差の棒に替えた
  • 「36県で女性の方が多い」は、率で比べると36県、人数で比べると34県 → どちらで比べたかを同じカードに書いた
  • 「57%が働く」の「働く」には、育児休業で休んでいる人も入る → 「仕事を持つ(育休中を含む)」と書き改めた

人が決めるのは「誰に、何を伝えたいか」です。AI は手順1の気づきをもとに「この言い方だと誤解される」「この数え方だと順位が入れ替わる」と案を出し、人が選びます。

手順3 HTMLの手本を作り、伏せた採点で詰める

この手順がいちばん効きます。AI が、本物の数字を使って、ダッシュボードの完成形を HTML で描きます。PC の幅(1200)とスマホの幅(390)の2枚を作り、ブラウザで画像にして、作り手を伏せた別のAI 2人に採点させます。

図2:HTMLで描いた手本(PCの幅)
図2:HTMLで描いた手本(PCの幅)。図1の Tableau はこれを見て作った

作りの直し(見る順番、KPI に出す数字、色の決め方、スマホの並び順)を Tableau で行うと、1回ごとに抽出を作り直し、公開し、PC とスマホで撮り直す必要があります。HTML の手本なら、直してから撮り直すまでが数分で済みます。作りは手本で決め切ってから Tableau に進みます。

ただし、手本に使ってよいのは Tableau で作れる部品だけです。HTML でしかできない見せ方で点を取っても、Tableau では再現できないからです。

  • 使う:横棒・折れ線・円で描く地図・文字だけの KPI・見出しの帯・パラメーター(県を選ぶ)で切り替わる動き・スマホの並び順
  • 使わない:グラデーション、グラフの上の好きな場所に置く注記、凝った凡例など、HTML でしかできない飾り
  • 大きさ:Tableau は箱の大きさが決まっていて、入りきらない文字は切れます。手本も Tableau と同じ箱の大きさで描き、文字が収まるかをここで確かめます

採点役にも「この画面は Tableau で作れるか」を見てもらいます。図2の手本で決めたことの例です。

  • 地図の「県の平均と差がない」を、±3pt 以内だけでなく、世帯が少なくて偶然ぶれる幅(95%)に収まる町村にも広げた
  • 世帯が100未満の町村は色分けしない、と決めて、データの区分と手本の説明をそろえた
  • 「不詳」を分母に入れると順位が5位以上動く県に*を付け、*だけの列に分けた
  • 紺は「選んでいる県」だけに使い、他の県の棒と全国の線は灰色にした

このほか、どのお題でも効く決まりも、手本の段階で当てはめます。

  • 1つの色に1つの意味:「選んでいる県」の色と「地図の区分」の色を同じにしない
  • 数字の横に比較を置く:全国の値、全国との差(pt)、何と比べて多いのか
  • 定義と除いたものを画面に書く:「育休中を含む」「不詳を除く」
  • 地図の色は、見せたい違いが見える基準で塗る:全国と比べた色では島根県の中が全部同じ色になるため、その県の平均と比べた色にした

採点は4回で、2人の平均は72点 → 80.5点 → 81.5点 → 81点でした。3回目から伸びなくなったので、ここで手本を止めて Tableau に進みました。

手順4 手本どおりに .twb を書いて公開する

Tableau のワークブック(.twb)は XML のファイルです。AI はこれを Python のスクリプトで丸ごと生成します。直すときも XML を手で触らず、スクリプトを直して作り直します。そのほうが速く、同じ型を次のお題に使い回せます。

型として固めた部品は次のとおりです。

  • 結論を書いた見出しの帯と、主役の数字を大きく出す KPI
  • 47都道府県のランキング。県を選ぶとパラメーターが変わり、地図ともう1つのグラフがその県に切り替わる
  • 市区町村の地図(背景地図の地名を消し、パン・ズームを止める)
  • 日本語の文で読めるツールチップ
  • 手書きのスマホ版(自動で作らせると、見出しの背景色が消えて白い文字が見えなくなるため)。スマホでは県をプルダウンで選ぶ
  • 出典・時点・加工内容・作成者を書いたフッター

書いたファイルは、Tableau 公式の XSD で検査します。Tableau は .twb の構造の決まりを XSD(XML の決まりを書いたファイル)として GitHub で公開しています。生成スクリプトの最後でこの XSD に照らし、決まりから外れていれば Tableau で開く前に止めます。

  • 捕まえられる例:全国の値の線(基準線)を、グラフの設定より前に書くと Tableau で開けません。この書き方は XSD の検査で「ここには置けない」と出ます
  • 捕まえられない例:XSD は構造だけを見るので、計算式の中身や項目名の書き方の誤りは通ってしまいます。公式の説明にも「検査を通っても開けるとは限らない」とあります。最後は Tableau で開いて確かめます

図1のダッシュボードでも、XSD を通ったうえで、Tableau で開いてから3か所を直しました。

  • ツールチップに、グラフで使っている項目をもう一度そのまま入れたら、シートが描けなくなった → ツールチップ用の書き方に替えた
  • CSV に書いた順位が「41.0」のような小数になり、Tableau が空として読んだ → 整数で書き出すようにした
  • KPI の文字の箱と、間にあるシートの幅の取り合いで、真ん中の数字がつぶれた → 文字の箱の幅を固定した

このようなつまずきは、そのたびに社内のノウハウ集に書き足しています。公開は Tableau Desktop で抽出を作って行い、ここだけ AI がパソコンの画面を操作します。公開のたびに、ダウンロードの許可をオフにし、説明文に出典と #PODB を入れます。上書き公開すると説明文が消えることがあるので、毎回 Tableau Public の API で確かめています。

手順5 公開版を撮って、伏せた採点で仕上げる

公開したら、見え方を撮ります。ダッシュボードは幅1000〜1920に合わせて伸び縮みする設定なので、PC は幅1000・1200・1920の3つ、スマホは幅390で撮ります。

  • PC:Tableau Desktop の画面では出ない、見出しの折り返しや数字の重なりが見えます。幅1200ではきれいでも、幅1000では見出しが2行に折れて下の行が切れる、ということが起きます
  • スマホ(幅390):スマホの画面を真似できるブラウザ操作の道具(Playwright)で、公開版のスマホ表示を上から下まで撮ります

撮り方そのものが点数に響くこともあります。ブラウザには小さくできる幅の下限があり、その状態で撮ると右端が切れます。切れた画像を渡すと、採点役は「見切れ」として減点します。スマホは、スマホの画面を真似できる道具で撮ります。

採点に出す前に、撮った画像を自分で見て崩れを直します。文字が「…」で切れていないか、線と数字が重なっていないか、大きな空白がないかを見ます。ツールチップと、県を選んで切り替えたあとの画面も撮ります。図1のダッシュボードでは、この点検で、幅1000での見出しの切れと、ツールチップから割合の行が抜けていることが見つかりました。

直し終えたら、手順3と同じ採点役2人に、作り手を伏せて渡します。渡すのは、公開版の画像(PC の3つの幅とスマホ、ツールチップ、県を切り替えたあと)と、画面のもとになった CSV と、採点表です。採点表は100点満点で、正しさ25・伝わる25・見た目20・読みやすさ15・動きと端末15の配分にしています。採点役には、画面の数字を CSV から計算し直して照合させます。

AIの自己採点は当てになりません。アケミが自分で88〜90点と付けた6本を、作り手を伏せた2人に採点させたら59〜76点でした。それ以来、自己採点はやめています。

伏せた採点役は、作り手が見落とした数字の誤りも見つけます。

  • 二重の丸め:56.749…%をいったん56.75%に丸め、もう一度丸めて「56.8%」と出していた(正しくは56.7%)
  • 境目の丸め:「全国の伸び(13.312%)より速いか」を13.3%に丸めて判定し、3町を誤って「速い」に入れていた
  • 表示の丸めと数の食い違い:差を小数1桁で出したら「0.478」が「+0.5」に見え、「0.5ポイント以上は25県」という文と合わなくなった → 小数2桁にした

この手順の結果

図3:作り手を伏せた外部採点(2人の平均)
図3:作り手を伏せた外部採点(2人の平均)
段階採点(2人)採点の回数Tableau での公開
③ HTML の手本75・69 → 83・794回0回
④ 手本から作った Tableau(最初の公開)76・781回1回
⑤ 描き方のずれを直したあと81・771回4回

手本から作った最初の公開で、2人の採点は76点と78点でした。数字の食い違いは、丸め方の1件だけでした。

最初の公開では、手本の点(2人の平均81点)から4点ほど下がりました。下がった理由は、2人ともほぼ同じでした。

  • PC のフッターの注記が、最後で「…」と切れた
  • ランキングの全国の点線が、棒の横の数字に重なった
  • スマホで、グラフの見出しが2行に折れて説明に重なり、フッターの前に大きな空白ができた

どれも作りの問題ではなく、HTML と Tableau の描き方の違いから出たずれです。手順5でこのずれを直しました。直すたびに公開と撮影が要るので、公開は4回増えました。うち3回は、採点に出す前の自分の点検で見つけた崩れ(幅1000での見出しの切れ、ツールチップの抜けなど)を直したものです。直したあとの採点は81点と77点で、数字の食い違いは0件になりました。

直した中身は、見た目のずれだけで、作りを考え直すものはありませんでした。手本を Tableau と同じ箱の大きさで描き、幅1000でも文字が収まるかを手本の段階で確かめておけば、このずれも減らせます。

止め時は人が決める

直しては採点、を繰り返すと、点は80点前後で止まり、指摘の向きが回ごとに変わるようになります。この段階の指摘は、好みの差に近くなっています。

弊社では、手本の点が伸びなくなったら Tableau に進み、公開版では2人とも数字の食い違いが0件で、見出しの主張がデータで言えると判断された時点を止め時にしています。最後の判断は、点数ではなく人が行います。

人がすること、AIに任せること

人がすることAIに任せること
お題(何を調べるか)を決めるデータを読み、癖を調べ、公表値と照合する
見出しで言う結論を選ぶHTML の手本を作り、別のAIに採点させて直す
手本を止めて Tableau に進むかを決める.twb を生成し、Tableau で開いて公開する
Tableau Public・ブログへのサインイン(パスワードは AI に渡さない)PC とスマホの幅で撮り、公開版を採点させる
公開してよいかを決める記事の下書きを書く

うまくいかないこと

  • 手本と Tableau はぴったり同じにはならない:文字の折り返しや箱の高さは、HTML と Tableau で変わります。図1では最初の公開で手本から4点ほど下がり、ずれを直して2点戻しました
  • 動きは画像では伝わりにくい:採点役には画像しか渡せないため、ツールチップと県を切り替えたあとの画面を撮って渡しています。それでも、プルダウンの動きなどは画像では確かめきれません
  • 公表値が取りにくい表がある:e-Stat の表の中には、画面からは数値を取り出しにくいものがあります。自治体が公開している同じ表(PDF)から取り出して照合しました
  • メモリが足りなくなる:メモリ8GBのパソコンでは、Tableau の窓を開いたままにすると作業ごと落ちました。1本公開するごとに Tableau を閉じています

まとめ|AIにTableauを作らせるなら、手本で詰めてから作る

  • 数字は、別の出どころ(国の公表値・自治体の表)と照合してから画面にする
  • 作りは HTML の手本で決め切る。手本は Tableau で作れる部品だけで、Tableau と同じ箱の大きさで描く
  • AI に .twb を直接書かせると、画面操作なしでダッシュボードを作れる。手本が固まっていれば、Tableau 側の直しは見た目のずれだけになる
  • 公開版は幅1000〜1920とスマホで撮り、自分で崩れを直してから、作り手を伏せた別のAIに採点させる。自己採点は10〜30点甘い
  • 点は80点前後で頭打ちになりやすい。伸びなくなったら、人が止め時を決める

よくある質問(FAQ)

Q. Tableau の画面を AI が操作して作るのではないのですか?
A. 作るのは .twb のファイルを書くことで行い、画面の操作は抽出の作成と公開だけです。画面をドラッグで組み立てるより、ファイルを書くほうが速く、同じ型を何度でも作り直せます。

Q. 手本を作る手間が増えるだけではないですか?
A. 手本は数分で直して撮り直せます。Tableau で1回直すには、抽出の作り直し・公開・撮り直しが要ります。作りの直しを手本で済ませたので、Tableau 側で直したのは文字の切れや重なりといった見た目のずれだけでした。

Q. 採点役は人ではないのですか?
A. 採点役はどちらも AI(Claude の別のモデル2つ)です。毎回、前回の講評を見せずに一から採点させています。人は最後に記事と画面を読んで、公開してよいかを決めています。

Q. 社内のデータでも同じように作れますか?
A. 作り方は同じです。ただし Tableau Public は誰でも見られる場所なので、社内やお客様のデータは Tableau Cloud など公開されない場所に出します。弊社でもそう分けています。

参考リンク

ABOUT ME
石井 亮介(りょうさん)
石井 亮介(りょうさん)
データパレード 代表取締役
㈱データパレードの代表取締役で、高田馬場の町中華「一番飯店」のChief Data Officerも務めています。BIツールのセールスエンジニア・システムエンジニア・カスタマーサクセス歴15年。大学のデータサイエンス教育で講師も担当してきました。現在は自社業務のほとんどをAIに移管し、AI10部署と50を超える自動処理が24時間動く「AI経営」を実践中。その実践知をこのブログで発信しています。
記事URLをコピーしました