Tableauダッシュボード、サイズ変更時のお悩み解消!

Tableau Resizer

こんにちは。truestar工房の、ひらいです。

12月は弊社で「アドベントカレンダー」企画が進行中。
平日毎日、弊社メンバーから様々な情報をお届けしております。
ということで本日は、truestar工房で開発した便利ツールを紹介します。

なお、アドベントカレンダーの過去記事と予定記事は、「TRUESTAR advent calendar 2020」をご覧ください!

Tableauダッシュボードでサイズを変更する時の悩み

Tableauのダッシュボードは、「サイズ」で全体の大きさを自由に変更することができます。

最初はデフォルトの1000×800で作り始めて、後からやっぱり小さめの800×600に変更したい、あるいはスペースが足りなくてサイズをもっと広げたい、といったことはよくあると思います。

ダッシュボードのサイズを変更すると、中に配置されている各パーツも、それにともなって位置やサイズが調整されます。非常に便利ですね。

……と言いたいところですが、実際には全てのパーツが単純に拡大・縮小されるだけなので、場合によってはレイアウトが崩れてしまうこともあります。

タイルで配置したパーツは幅や高さを固定すれば位置やサイズが固定になりますが、浮動で置いたパーツは一様に拡大・縮小されてしまうので、レイアウト崩れの原因となります。

凝ったレイアウトほど浮動を多用すると思いますし、修正の手間は想像を絶するものがあります。

また、スペースが足りなくてダッシュボードサイズを広げた場合は、自動で拡大されるのは大きなお世話です。

そこでTableau Resizer!!

というわけで、パーツの位置・サイズを変更せずに、ダッシュボードのサイズのみを変更できるExcelツールを作成しました。
その名も「Tableau Resizer」!

ネーミングが安易なら使い方も安易。
まずは「Open File」ボタンをクリックして、対象となるTableauワークブックファイル(.twb)を読み込みます。

今のところ、.twbファイルのみ対応で、.twbxファイルは未対応です。

読み込むと下のように、ファイルに存在するダッシュボードと、その中に含まれている各パーツのレイアウト情報が、一覧として表示されます。

背景色の赤い行がダッシュボードで、その下の各行がパーツです。
レイアウト情報は、左上隅のXY座標(パーツのみ)と、幅(W)および高さ(H)がピクセル数で表示されており、左側の「Original Size」が元の(現在の)位置・サイズ、右側の「New Size」が変更後の位置・サイズとなっています。

ダッシュボードの「New Size」の幅(W)と高さ(H)を、変更したいサイズに書き換えます。
変更された箇所は赤字になるので、どこが変わったかひと目で分かるようになっています。

サイズを変更したら、「Save File」ボタンを押して、Tableauファイルに変更を反映させます。
なおその際、「File Path」欄は変更しないようにお願いします。

Tableauファイルを開いて、変更が反映されていることを確認しましょう。

なお、サイズを小さくした場合は、ダッシュボードの枠内からパーツがはみ出している場合があるので、それは手動で調整が必要です。

ダウンロード方法

下記のGitHubに公開しました。
https://github.com/atelier-truestar/TableauResizer/

ファイル一覧の右上にある「↓Code」をクリックし、「Download ZIP」をクリックすると、必要なファイルがダウンロードされます。
ダウンロードされたZipファイルを展開し、中身の TableauResizer.xltm をダブルクリックすれば起動します。

使い方と注意

仕組みとしては、「tableauのtwbファイルを直接編集」で解説されているように、.twbファイルの本体であるXMLを直接読み書きしています。

利用する場合は必ずバックアップを取るとともに、
これを使って変更したファイルは、Tableauのサポート対象外になることも念頭に置いてください。

また、変更した直後のファイルはデータの整合性がとれていない可能性があるため、Tableauでファイルを開いて変更が反映されていることを確認した際に、Tableauでファイルを上書き保存することをお勧めします。
一度Tableau上で保存をすれば、データの不具合も解消されます。

またこのツールは、ダッシュボードのサイズを変更するだけでなく、各パーツの位置調整も可能です。

ダッシュボードのサイズを変更するのに合わせて、一部のパーツは位置やサイズが変わってほしい場合もあると思います。

そのような時は、対象となるパーツの位置とサイズを「New Size」の欄で指定すればOKです。

この通り、ちゃんと反映されました。

さいごに

この「Tableau Resizer」はベータ版での無償共有ですので、動作保証や利用によって生じた不具合等の責任は一切負いかねます。ご了承ください。

導入支援やカスタマイズなどのサポートは、有償にて承っております。
下記のお問い合わせページから、ぜひお問い合わせください!
https://www.truestar.co.jp/contact/

また、truestarでは、新しい仲間を募集しています。詳細は以下をご覧ください。
株式会社truestar採用サイト https://en-gage.net/truestar