On this page |
|
概要 ¶
タイル表示システムは、レンダリング統計情報の様々な種類の情報を表示するために作成されました。 タイルのルックとレイアウトは、JSONテンプレートファイルで定義されています。
タイルシステムは新しく実験的なもの であり、 多くの望ましい機能が欠けています が、なにかしら役立つカスタマイズが可能です。
各タイルには、タイルのルックとコンテンツを制御する プロパティ のセットがあります。 レンダリング統計情報では、プロパティをJSONPathにマッピングできるため、レンダリング統計情報に合わせてプロパティを設定することができます。 こうして、レンダリング画像の統計情報に基づいて、テンプレートに取り込みます。
タイルテンプレートの例 については、$HFS/houdini/config/render_stats_toolbar.json
(レンダリング統計情報サイドバーのテンプレート)および$HFS/houdini/config/render_stats_overlay.json
(レンダリング統計情報オーバーレイユーティリティのテンプレート)を参照してください。
Tip
このドキュメントは、値のリストに“array”(配列)、キーと値のマッピングに“object”(オブジェクト)など、JSON用語を使用します。
構造 ¶
テンプレートのタイルは、JSONオブジェクトで表現されます。
最もシンプルなテンプレートは、単なるデフォルトのタイルです:
{}
オブジェクトにtype
キーがない場合、デフォルトはテキストタイルです。
{ "text": "<i>どうしても</i>タイプを指定したくない場合、指定する必要はありません。 }
type
キーは、タイルタイプを指定します。
{ "type": "number", "value": 123.5 }
共通プロパティとタイルタイプの固有のプロパティを使用して、タイルのルックを変更することができます。
{ "type": "number", "label": "Number", "value": 123.5, "text_size": "xlarge" }
通常は複数のタイルを表示しておきたいので、上位レベルのタイルはコンテナタイルになり、そのサブタイルをレイアウトします。
{ "type": "matrix", "margins": 20, "min_column_width": 80, "row_height": 60, "items": [ { "type": "text", "label": "Text", "value": "Hello", "text_size": "xlarge" }, { "type": "number", "label": "Number", "value": 123.5, "text_size": "xlarge" } ] }
JSONPathを使用してレンダリング統計情報から値を抽出する ¶
レンダリング統計情報をタイルに追加するには、 プロパティ名 を JSONPath にマッピングします。タイルシステムはJSONPathを使用して統計内の情報を見つけ、一致する場合、対応するプロパティを更新します。
Tip
レンダリング統計システムで使用されているJSONデータを表示するには、HoudiniシェルでEXRファイルに対してiinfo -J ‹file›
を実行します。
プロパティをJSONPathにマッピングする ¶
重要
JSONPathは、実際の標準というよりもよく似た構文の集まりです。 現在タイルシステムは、拡張機能が有効になっているjsonpath_ngを使用しています。 構文に関する詳細は、jsonpath_ngドキュメントを参照してください。
JSONPathをプロパティに関連付けるには、タイルのproperties
キーをオブジェクトに設定します。オブジェクトのキーがプロパティ名で、その値はJSONPath文字列です。例えば次のようになります:
{ "type": "duration", "label": "Elapsed", "properties": { "value": "husk.system_time.wallclock" } }
ショートカットとして、タイルにjson_path
キーを設定すると、タイルのvalue
プロパティにJSONPathを指定することができます(単一の情報を表示するタイルには、通常value
プロパティがあります)。これは、上記のJSONと同等です:
{ "type": "duration", "label": "Elapsed", "text_size": "large", "json_path": "husk.system_time.wallclock" }
JSONPathは、文字列ではなくJSONオブジェクトとしても指定できます。ここではいくつかのオプションを設定できます。オブジェクトには以下のキーがあります:
|
string |
JSONPath文字列(必須) |
|
boolean |
技術的には、JSONPathはデータ内の複数の箇所とマッチすることができ、常にマッチの リスト を返します。 しかし、これは通常では望ましいことではなく、その結果の処理が面倒になります。そのためデフォルトで、最初のマッチをJSONPathの“値”として使用します。 本当に すべて のマッチが必要な場合は、これを デフォルトは |
|
any |
JSONPathが一致しない場合、これを値として使用します。 Note
|
Pythonエクスプレッション ¶
JSONPathはJSONから値を抽出するには便利ですが、値を操作したり、データに応じて様々な表示を行ないたい場合、JSONPathはそこまで強力ではありません。 これ以上のことを行ないたい場合、タイルシステムでは、Pythonエクスプレッションを使用してプロパティの値を計算することができます。
常に同じ値に評価されるPythonエクスプレッションは、あまり便利ではありません。Pythonエクスプレッションでデータから入力を取り込んで、それからプロパティ値を計算することをお勧めします。次のように定義します。
Pythonエクスプレッションで使用できる変数をセットアップするには、タイルのvariables
キーをオブジェクトに設定します。オブジェクトのキーが 変数名 で、値はJSONPath文字列です。例えば次のようになります:
{ "type": "number", "variables": { "engine": "husk.render_settings.engine", } }
properties
で、プロパティ名が.py
で終わる場合、JSONPathではなくPythonエクスプレッションとして扱われます。エクスプレッションは、variables
オブジェクトで定義される変数を使用することができます。例えば、これは、タイルのvalue
プロパティをエクスプレッションの評価結果に設定します:
{ "type": "number", "variables": { "engine": "husk.render_settings.engine", "pixelsamples": "husk.render_settings.samplesperpixel", "pathsamples": "husk.render_settings.pathtracedsamples" }, "properties": { "value.py": "pixelsamples if engine == 'cpu' else pathsamples" } }
また、variables
内で‹name›.py
エクスプレッションを使用することもできます。これにより、エクスプレッションから変数の値を計算することができます。
例えば、デフォルトのレンダリング統計情報では、サンプル数について、レンダリングエンジンがXPUの場合 または 収束モードが“Path Traced”の場合、“パスサンプル”設定を表示する必要があります。そして、それに基づいてラベルと値を別々に設定する必要があります。コードを複製してラベルと値の両方のモードを計算するのではなく、Pythonエクスプレッションを使用してuse_path
変数を設定します。
{ "type": "number", "text_size": "large", "variables": { "engine": "husk.render_settings.engine", "mode": "husk.render_settings.convergence_mode", "pixelsamples": "husk.render_settings.samplesperpixel", "pathsamples": "husk.render_settings.pathtracedsamples", "use_path.py": "engine == 'xpu' or mode == 'Path Traced'" }, "properties": { "label.py": "'Path Samples' if use_path else 'Pixel Samples'", "value.py": "pathsamples if use_path else pixelsamples" } }
各タイルについて、システムは以下の順序で値を計算します:
-
JSONPathによって定義された変数を計算します。
-
Pythonエクスプレッションによって定義された変数を計算します。Pythonエクスプレッションは、前のステップからの変数を使用できます。
-
properties
を計算します。properties
内のPythonエクスプレッションは、前のステップからの変数を使用できます。
JSONPathヘルパー ¶
インタラクティブレンダリング時に使用できるJSON統計情報データ(レンダリング統計情報サイドバー)と、EXRファイルからのデータ(レンダリング統計情報オーバーレイ)は形が異なります(インタラクティブレンダリング向けのJSONデータは、EXRデータのaovs[0].metadata.'husk:render_stats'
に相当します)。
統計情報システムでは、データ内にいくつかの上位レベルキーがあり、両方を使用しやすくなっています。
インタラクティブな統計情報(レンダリング統計情報サイドバー)をカスタマイズする場合、husk
で始まるパスのみ使用する必要があります。
|
EXRファイルからの統計情報では、これはAOVデータのリストです。 インタラクティブ統計情報では、このキーは存在しません。 |
|
EXRファイルからの統計情報では、これは最初のAOVの |
|
EXRファイルからの統計情報では、これは最初のAOVのメタデータの |
テンプレートをテストする ¶
タイルテンプレートファイルを表示するシンプルなシェルフツールを作成して、タイルテンプレートファイルの動作や見た目を確認することができます。
-
表示したいテンプレートファイルを作成します。
-
JSONPathをテストしたい場合、統計情報を読み込むレンダリングEXRファイルも必要です。
-
以下のスクリプトを使用して新しいシェルフツールを作成します。以下のスクリプトの
/path/to/template.json
および/path/to/image.exr
を、ファイルの実際のパスに置き換えてください。from PySide2 import QtWidgets import hou from hutil.qt.data import tiles class TestWindow(QtWidgets.QMainWindow): def __init__(self, parent: QtWidgets.QWidget = None): parent = parent or hou.qt.mainWindow() super().__init__(parent) view = tiles.StatsViewer(self) self.setCentralWidget(view) # 読み込んで表示したいテンプレートファイル view.loadTemplate("/path/to/template.json") # これはオプション: テンプレートに画像からデータを入力 view.loadStatsFromImage("/path/to/image.exr") self.resize(640, 480) hou.session.w = TestWindow() hou.session.w.show()
-
テンプレートを変更したり保存するたびに、Houdiniでシェルフツールをクリックすれば、ウィンドウでテンプレートを読み込み直し、表示することができます。
Note
上記のスクリプトは、内部のHoudini Pythonモジュールを使用します。 このスクリプトは、この特定の目的のためにヘルパーとして提供されています。それ以外の目的でこれらの内部モジュールを使用したり、依存することがないようにしてください。 SideFXは、これらをいつでも変更、名前変更、削除する権利を留保します。
Tipsとメモ ¶
-
このドキュメントの中で、数値が“ピクセル単位”で指定されると記されている場合、画面上のアイテムの実際のサイズはグローバルUIスケールによって影響を受け、すべてのビューが拡大/スケールします。
-
デフォルトでは、ほとんどの“コンテナ”タイルにラベルがあり、背景がオフになっているため、コンテナ自体ではなく、含まれるタイルのみが見えます。
コンテナのラベルおよび/または背景をオンにして、サブタイルでそれらをオフにすると、サブタイルが“親”タイルに表示されている情報のように見える、複雑な複合タイルを作成することができます。
この例では、親タイルで背景を表示し、サブタイルの背景を非表示にすることで、単一のタイルが複数のデータを含んでいるように見せています。
{ "type": "grid", "col_width": 60, "bg_visible": true, "label": "Record", "items": [ { "type": "number", "value": 20, "text_size": "xlarge", "label": "Wins", "label_edge": "bottom", "bg_visible": false }, { "type": "number", "value": 5, "text_size": "xlarge", "label": "Losses", "label_edge": "bottom", "bg_visible": false }, { "type": "number", "value": 1, "text_size": "xlarge", "label": "Ties", "label_edge": "bottom", "bg_visible": false } ] }
-
コンテンツシャドウを明るいカラーにして、シャドウオフセットを0,0に設定すると、タイルのコンテンツをわずかに“輝かせる”ことができます。その後、データに基づいて
content_shadow_visible
プロパティを設定でき、例えば、特定の閾値を越えると数値が“輝く”ようにすることなどが可能です。{ "label": "Glowing Value", "text": "100", "text_size": "xlarge", "content_shadow_visible": true, "content_shadow_offset": [0, 0], "content_shadow_color": "#ffff80", "content_shadow_blur": 20.0 }
共通のタイルプロパティ ¶
|
string |
タイルの内部名。これは、主にコメントやデバッグに役立ちます。 |
|
boolean |
このタイルを表示するかどうか。 JSONPathを使用してこれを設定したり、Pythonエクスプレッションを使用して、データに応じて様々なタイルを表示または非表示にできます。 表示されないタイルは、親コンテナのレイアウトから削除されます。 |
|
値のカラー(テキストおよび数値の表示タイル用)。 |
|
|
boolean |
タイルの背景を描画するかどうか。
|
|
タイル背景の塗りつぶしのカラー。
|
|
|
タイルのコンテンツとタイルの境界の間に追加するスペースの量(ピクセル単位)。
|
|
|
number |
左側の余白を設定するためのショートカット。 |
|
number |
上部の余白を設定するためのショートカット。 |
|
number |
右側の余白を設定するためのショートカット。 |
|
number |
下部の余白を設定するためのショートカット。 |
|
string |
タイルのラベルテキスト。 |
|
boolean |
ラベルを表示するかどうか。
|
|
ラベルテキストのフォントサイズ。
|
|
|
ラベルテキストのカラー。
|
|
|
ラベル背景の塗りつぶしのカラー。
|
|
|
boolean |
ラベル背景を描画するかどうか。
|
|
ラベルを配置するタイルのエッジ。
|
|
|
領域内にラベルを配置する方法。
|
|
|
ラベルテキストの周囲に追加するスペースの量(ピクセル単位)。
|
|
|
boolean |
これが
|
|
number |
タイル背景のコーナーを丸める量(ピクセル単位)。これを
|
|
number |
この乗数によってタイルをスケールします。
|
|
number |
タイルの回転(度)。
|
|
number |
タイルをぼかす量(デフォルトは 次の
|
|
number |
|
|
boolean |
タイルの下にシャドウを描画するかどうか。 シャドウはタイルのピクセルに適用されます。
以下の
|
|
タイルシャドウのカラー。デフォルトは黒です。 |
|
|
number |
タイルシャドウのブラー半径。 |
|
2つの数値の配列 |
タイルシャドウの水平および垂直オフセットを設定します。 |
|
number |
タイルシャドウの水平オフセット。 |
|
number |
タイルシャドウの垂直オフセット。 |
|
boolean |
|
|
コンテンツシャドウのカラー。 |
|
|
number |
コンテンツシャドウのブラー半径。 |
|
2つの数値の配列 |
コンテンツシャドウの水平および垂直オフセットを設定します。 |
|
number |
コンテンツシャドウの水平オフセット。 |
|
number |
コンテンツシャドウの垂直オフセット。 |
|
number |
ラベルとコンテンツの間に描画されるラインのペン幅(ピクセル単位)。
これが
|
|
ラベルのラインのカラー。
|
|
|
number |
タイルの最小幅を設定します(ピクセル単位)。 |
|
number |
タイルの高さを固定サイズに設定します(ピクセル単位)。 |
スタイリング ¶
現在のタイルシステムは、共通のスタイル、テンプレートやスタイルの再利用、カスケードスタイル、テーマ、カラースキームを十分にはサポートしていません。今後のバージョンでの改善が期待されています。
現在、タイルシステムは以下のキーをサポートしています:
|
文字列をスタイルプロパティマップにマッピングするオブジェクト |
(コンテナタイルで)名前と“スタイル”オブジェクト(プロパティ名を値にマッピングするオブジェクト)を関連付けます。 これらの“スタイル”は、すべての子タイルで利用可能です。 |
|
string |
名前付きスタイルが親タイルで定義されていると想定し、このタイルにそのスタイルを適用します。 |
|
string |
(コンテナタイルで)独自の |
現在のところ、1つのタイルが同時に持つことができる“スタイル”は1つのみです。
例えば、ルートタイルでstyles
キーを使用して一般的なスタイルをいくつか定義し、それらのスタイルをstyle
キーを使用して個別のタイルに適用することができます:
{ "type": "matrix", "min_column_width": 80, "row_height": 60, "styles": { "simple": { "bg_visible": false, "text_size": "xlarge" }, "ok": { "bg_color": "#405040", "text_size": "xlarge" }, "warn": { "label_bg": "#505030", "label_color": "#ffff00", "text_size": "xlarge" } }, "items": [ { "label": "Warning", "style": "warn", "text": "Not Found" }, { "label": "Generic", "style": "simple", "text": "Hello" }, { "label": "Good News", "style": "ok", "text": "Finished" } ] }
タイルタイプ ¶
テキスト ¶
HTML/テキストを表示します。
{ "type": "text", "label": "Text", "text": "Text Tile", "text_size": "xlarge" }
|
string |
|
|
string |
タイル内に表示するテキスト。 |
|
string |
これは |
|
テキストの配置。 |
|
|
フォントサイズ。 |
|
|
テキストに使用するフォントウェイト。 |
|
|
string |
テキストに使用するフォントファミリー。 |
|
文字列を文字列にマッピングするオブジェクト |
テキストがオブジェクトのキーのいずれかと一致する場合、対応する値に変更されます。
これは、レンダリング統計情報から取得した文字列をより読みやすい表現に変更するなど、文字列の“書き換え”に便利な場合があります。
例えば、 { "name": "source", "type": "text", "json_path": "husk.example.source", "value_map": { "unk": "Unkown" } } |
数値 ¶
設定可能なフォーマッタを使用して、数値をテキストとしてフォーマットします。
数値タイルはtext
のサブクラスであり、同じプロパティをサポートします。
{ "type": "number", "label": "Number", "value": 123456, "brief": true, "text_size": "xlarge" }
|
string |
|
|
number |
表示する数値。この値は、フォーマッタによって表示テキストに変換されます。 |
|
タイルが数値を表示する方法を制御します。フォーマッタを設定する方法を参照してください。 |
|
|
string |
省略した単位で数値を表示するタイミング。
|
|
number |
小数点以下を丸める桁数。 これは、フォーマッタの小数部を設定するためのショートカットです。 |
チャート ¶
1つ以上の数値をチャートとして表示します。
{ "type": "chart", "label": "Chart", "chart": { "type": "stacked_donut" }, "values": [1, 3, 2] }
|
string |
|
|
表示するチャートのタイプ。 |
|
|
boolean |
チャートの |
|
数値または数値の配列 |
チャートに表示する1つ以上の数値。 |
|
数値の配列 |
|
|
number |
チャートの |
|
string |
指定したテキストをチャートにオーバーレイします。 |
|
タイルが数値を表示する方法を制御します( |
|
|
number |
|
|
boolean |
これが |
時間 ¶
秒数(経過時間、残り時間など)を時間、分、秒として表示します。
これはnumber
タイルのサブクラスであり、同じプロパティをサポートします。
{ "type": "duration", "label": "Duration", "value": 58327, "text_size": "xlarge" }
|
string |
|
|
number |
時間の秒数。 |
|
boolean |
これが
|
推定残り時間 ¶
これはduration
タイルのサブクラスであり、同じプロパティをサポートします。
経過時間(秒)および完了率から、推定残り時間を表示します。
完了率(パーセンテージ/割合)が設定されていない、または0
の場合、タイルは?を表示します。
(Pythonエクスプレッションを使用してduration
タイルでも同じことができますが、これは便宜上用意されています)。
|
string |
|
|
number |
パーセンテージ(0.0~100.0)による完了率。 |
|
number |
小数(0.0~1.0)による完了率。 |
|
number |
経過時間(秒)。 |
パス ¶
タイルはtext
のサブクラスであり、同じプロパティをサポートします。
テキストを明確なファイルパスとしてフォーマットします。 現在のところ、このタイルはパス(ファイル名)の最後のコンポーネントのみを太字で表示します。
{ "type": "path", "label": "Path", "value": "/foo/bar/baz", "text_size": "large", "filename_weight": 900 }
|
string |
|
|
string |
フォーマットするパス文字列。 |
|
パスの最後のセグメントに使用するフォントウェイト。 |
サイズ ¶
数値のリストを値として受け取り、それらを寸法としてフォーマットします(1920 x 1080
など)。
タイルはtext
のサブクラスであり、同じプロパティをサポートします。
{ "type": "size", "label": "Size", "value": [100, 200], "text_size": "xlarge" }
|
string |
|
|
数値の配列 |
タイル内に表示する寸法。例えば、値が |
ロゴ ¶
画像を表示します。
{ "type": "logo", "label": "Logo", "image_path": "$HFS/houdini/pic/karma_logo.svg", "image_size": [32, 32], "alignment": "center" }
|
string |
|
|
string |
表示する画像ファイルへのパス。 |
|
boolean |
画像がタイルで使用できるスペースよりも小さい場合、画像を拡大し、タイルを埋めます(アスペクト比は維持します)。 |
|
タイル内に画像を配置する方法。 |
|
|
この幅と高さに画像のサイズを変更します(ピクセル単位)。 |
|
|
指定した色相で画像を色付けします。
{ "type": "logo", "image_path": "$HFS/houdini/pic/karma_logo.svg", "tint": "#ff00ff" } Tip これを黒に設定して、画像の彩度を下げることができます。 |
ロゴテキスト ¶
画像とテキストの文字列を表示します。
画像が 最初に 配置され(image_alignment
を使用)、その後、残りのスペースにテキストが配置されます(text_alignment
を使用)。
{ "type": "logo_text", "label": "Logo Text", "tint_color": "#000000", "tint_amount": 1.0, "top_margin": 5, "text_size": "small", "image_size": [32, 32], "gap": 5, "image_path": "$HFS/houdini/pic/karma_logo.svg", "value": "Karma" }
|
string |
|
|
string |
表示する画像ファイルへのパス。 |
|
string |
画像の横に表示するテキスト。 |
|
string |
|
|
タイル内にテキストを配置する方法。 |
|
|
この幅と高さに画像のサイズを変更します(ピクセル単位)。 |
|
|
タイル内に画像を配置する方法。 |
|
|
number |
画像とテキストの間隔(ピクセル単位)。 |
|
指定した色相で画像を色付けします。これを黒に設定して、画像の彩度を下げることができます。 |
チャートテーブル ¶
スプレッドシートのように、行と列に名前/値をペアにしたチャート および テーブルとして、データを表示します。
|
string |
|
|
各種 |
これは通常、統計データから引き出すようにセットアップします。以下のように、様々な書式のデータを処理することができます。
異なる形式のデータがある場合、Pythonエクスプレッションを使用してサポートされている形式のいずれかに変更することができます。 |
|
boolean |
これが |
|
チャートタイルの |
|
|
number |
チャートタイルの |
|
テーブル内の値のフォーマッタ。 |
|
|
number |
フォーマッタで小数点以下の桁数を設定するのに便利です。 |
|
boolean |
これが |
|
number |
テーブル内のセルの最小幅(ピクセル単位)。 セルが狭くなりすぎるのを防ぎます。 |
|
number |
テーブル内のセルの最大幅(ピクセル単位)。 ラベルと値が離れすぎるのを防ぎます。 |
|
number |
テーブル内のセルの高さ(ピクセル単位)。
これが |
|
number |
列の間の水平方向のスペース(ピクセル単位)。 |
|
boolean |
各アイテムに関連付けたカラーチップまたはアイコンを表示するかどうか。 |
|
string |
JSONPathによって検出された“アイテム”が辞書の場合、このキーを使用してアイテムの値を取得します。 |
|
boolean |
これが
|
|
number |
|
|
boolean |
|
|
文字列を文字列にマッピングするオブジェクト |
このマッピングでアイテムのラベルがキーの場合、対応する値に“書き換え”られます。 これは、統計から引き出したデータに、より“人が解読可能”なラベルを表示したい場合に便利です。 |
|
文字列の配列 |
このリスト内のラベル付きアイテムのみ( |
|
文字列の配列 |
このリスト内のラベル付きアイテムは( |
コンテナタイル ¶
コンテナタイルはサブタイルのリストを受け取り、タイル内のレイアウトに配置します。デフォルトでは、コンテナタイルでは背景とラベルが非表示になっています。
コンテナタイルのタイプは以下の共通オプションをサポートします:
|
タイルオブジェクトの配列 |
このリストの各オブジェクトが、このタイル内で表示するタイルを指定します。 |
|
string |
値はスタイルの名前です。コンテナは、独自の |
ライン ¶
単一の行または列にサブタイルをレイアウトします。
|
string |
|
|
|
マトリックス ¶
均一な行と列にサブタイルをレイアウトします。
このタイルでは、すべてのサブタイルが均一の幅と高さになります。
このレイアウトでは、指定したmin_column_width
にフィットするタイルが各行に並び、次の行に移ります。
これは、同様のサイズのタイルのリスト(単一の数字の統計情報の集まりなど)を素早くレイアウトする際に便利です。
より複雑なグリッドレイアウトには、代わりにgrid
コンテナを使用します。
{ "type": "matrix", "min_column_width": 120, "row_height": 80, "items": [ {"label": "First"}, {"label": "Second"}, {"label": "Third"}, {"label": "Fourth"} ] }
|
number |
列の最小サイズ(ピクセル単位)。デフォルトは128です。 サブタイルが狭すぎて読めなくなるのを防ぎます。 |
|
number |
列の最大サイズ(ピクセル単位)。 |
|
number |
行の高さ(ピクセル単位)。この値は設定する必要があります。 |
|
|
グリッド ¶
ビンパッキングアルゴリズムを使用してタイルをレイアウトし、サブタイルを利用可能な幅に合わせます。
このレイアウトは、含まれるタイルを特定のグリッドサイズの倍数に“スナップ”し、きれいに並べます。
dense
がtrue
の時(デフォルト)、レイアウトはスペースがある場所にタイルを配置するため、タイルがJSONファイルで定義した順序とは異なる順序で表示されることに注意してください。
{ "type": "grid", "cell_size": [80, 60], "items": [ {"label": "First", "grid:cols": 2}, {"label": "Second"}, {"label": "Third"}, {"label": "Fourth"}, {"label": "Fifth", "grid:rows": 2}, {"label": "Sixth"}, {"label": "Seventh"} ] }
グリッドコンテナのプロパティ ¶
|
2つの数値の配列 |
グリッドのセルサイズを設定するのに便利なプロパティ( |
|
number |
グリッド正方形の幅(ピクセル単位)。 |
|
number |
グリッド正方形の高さ(ピクセル単位)。 |
|
number |
タイル間の水平間隔と垂直間隔を同じ数値に設定するのに便利なプロパティ( |
|
number |
タイル間の水平間隔(ピクセル単位)。 |
|
number |
タイル間の垂直間隔(ピクセル単位)。 |
|
boolean |
前のタイルがレイアウト内に残した空きスペースを、後のタイルで埋めるかどうか。
デフォルトは |
|
boolean |
これが |
|
number |
レイアウト内の列の最大数(
|
グリッド内のタイルのプロパティ ¶
grid
タイル内のタイルの以下のプロパティは、タイルのレイアウト方法に影響を与えます。
|
number |
タイルが広がる列の数。デフォルトは |
|
number |
タイルが広がる行の数。デフォルトは |
|
2つの数値の配列 |
タイルがフィットする場所にレイアウトするのではなく、特定のグリッド座標にタイルを“ピン留め”します。 その他のタイルが、“ピン留めされた”タイルの周囲のスペースを埋めます。 水平座標が負の場合、使用できるスペースの右端から逆方向に数えます。例えば、 |
Tip
cols
およびrows
を使用してグリッド単位でサイズを指定するのではなく、width
およびheight
を使用してサブタイルの正確なサイズを指定することも可能ですが、その場合はタイルがきれいに並びません。
特殊なプロパティのタイプ ¶
通常のJSONデータタイプ(string、number、boolean、null、object、array)に加えて、値の解釈が特殊なプロパティもあります:
Color
これは次のいずれかになります:
-
"#rrggbb"
や"#rrggbbaa"
形式のWebスタイルの“HEXカラー”("#808080"
など)、または"white"
、"black"
、"transparent"
といった名前を含む文字列。 -
[r, g, b]
または[r, g, b, a]
のような浮動小数点の配列([1.0, 0.6, 0.0, 0.5]
など)。 -
グレースケール値として解釈される、単一の浮動小数点(
0.7
は[0.7, 0.7, 0.7]
と同じです)。
Text size
フォントサイズを示す数字(ピクセル単位)、またはxsmall
(またはx-small
)、small
、medium
、large
、xlarge
(またはx-large
)、huge
のいずれか。
Font weight
ウェイト値(400
または700
)またはウェイト名("thin"
、"extralight"
、"light"
、"normal"
、"demibold"
、"bold"
、"extrabold"
、"black"
のいずれか)。
フォントファミリーによっては使用できないウェイトもあることに注意してください。
Margins
これは次のいずれかになります:
-
左、上、右、下の余白(ピクセル)を示す4つの数値の配列。
-
水平および垂直の余白(ピクセル)を示す2つの数値の配列。
-
すべての辺の余白(ピクセル)を示す単一の数字。
Brush
現在、これはカラータイプと同じです。
Edge
"top"
、"left"
、"right"
、"bottom"
のいずれかの文字列値。
Alignment
left
、right
またはhcenter
、および/または、top
、bottom
またはvcenter
の組み合わせを含むスペース区切りの文字列。
-
hcenter vcenter
の意味でcenter
を使用することができます。 -
また、
topleft
、topright
、bottomleft
、bottomright
を使用したり、n
、nw
、e
、se
などのコンパス方向も使用できます。
Orientation
"horizontal"
または"vertical"
のいずれか。
数値フォーマッタ ¶
これがオブジェクトの場合、"type"
キーはフォーマッタのタイプを指定する文字列、その他のキーはフォーマッタを設定する引数でなければなりません。
これが文字列の場合、デフォルト設定によりフォーマッタのタイプを指定します。
以下のフォーマッタを使用できます:
number
以下のオプションを持つ、汎用的な数値フォーマッタ:
decimal_places
(number)
小数点以下をこの桁数に丸めます。デフォルトは2
です。
auto_decimal
(number)
decimal_places
が0
で、この数値が0
でない場合、値が1.0
未満であれば、フォーマッタは小数点以下をこの桁数に丸めます。デフォルトは1
です。
通常は整数を表示したいが、0.5
などの数値を単に0
と表示したくない場合に使用します。
whole_weight
(string)
数字の整数部のためのフォントウェイト。
fraction_weight
(string)
数字の小数部のためのフォントウェイト。
brief
(boolean or string)
-
"always"
またはtrue
: フォーマッタは常に数値を省略します。 -
"never"
またはfalse
: フォーマッタは決して数値を省略しません。 -
"auto"
: フォーマッタは、999より大きい数値のみ省略します。
デフォルトは"auto"
です。
brief
これは、brief
がtrue
に設定されたnumber
と同じです。
memory
/bytes
/disk
バイト数専用の単位の接尾辞が付いたbrief
フォーマッタ。
percent
小数値(0.5
など)をパーセンテージ(50%
など)としてフォーマットします。decimal_places
オプションをサポートし、デフォルトは1
です。
duration
秒を、時間、分、秒としてフォーマットします。
long
(boolean)
これがtrue
の場合、フォーマッタは常に時間、分、秒を表示します。
チャートタイプ ¶
chart
やchart_table
など一部のタイルタイプは、“チャート”(数値や複数の数値から成る小さい視覚的表現)を表示します。これらのタイルでは、chart
キーを使用してチャートをセットアップできます。
chart
の値が文字列の場合、チャートタイプを指定します(デフォルト値を使用)。chart
がオブジェクトの場合、type
キーがチャートタイプを指定し、チャートタイプによっては他のキーでオプションを設定できる場合もあります。
親タイルのチャート内に表示される実際の値を設定することができます(chart
タイルタイプのvalue
またはvalues
プロパティを使用するなど)。
便宜上、チャートを表示するタイルタイプには、多くの場合チャートのプロパティに対応する独自のプロパティが含まれています。データからプロパティを設定できるため、 使用できる場合はタイルプロパティを使用 することをお勧めします。
すべてのチャートタイプには、以下の共通キーがあります:
|
string |
チャートタイプを設定します。 |
|
number |
チャート空間の最大値。例えば、ドーナツチャートの
|
|
チャートのアイテムに使用するカラー。チャート内のすべてのアイテムで 同じ カラーを使用するように設定します。 |
|
|
colorの配列 |
チャートのアイテムに使用するカラーのセット。チャート内にカラーよりも多くの値がある場合、カラーがループします。 |
|
boolean |
これが
|
|
boolean |
チャートの値の背後に薄く“トラック”を描画するかどうか。チャートタイプによって“トラック”の描画方法は異なります。
|
|
トラックの描画に使用するカラー。 |
|
|
number |
デフォルトのトラックカラーの不透明度を0.0~1.0で設定します。明示的な |
|
boolean |
これが Note ドーナツチャートや円グラフは、常にスクエア(1:1)のアスペクト比で描画されます。 |
|
|
積み上げドーナツ ¶
円弧を“積み上げ”て値を表示します。
total
を指定しない場合、チャートは値の 合計 を使用します。
|
string |
|
|
number |
円弧の幅。これは チャートサイズの割合 であり、ピクセルではありません(幅はタイルサイズでスケールします)。デフォルトは
|
|
boolean |
両端が丸い円弧を描画します。これがfalseの場合、両端は平らになります。デフォルトは
|
|
boolean |
正の値の円弧は時計回りに進みます。デフォルトは
|
|
number |
チャート範囲の開始と終了の間に、この度数のギャップを挿入します。
|
|
number |
チャート範囲は、視覚的にこの絶対角度で始まります(
|
|
number |
チャート範囲は、視覚的にこの度数の長さになります。デフォルトは
|
|
number |
積み上げる円弧の間にこの度数のスペースを挿入します。デフォルトは
|
円 ¶
これはstacked_donut
と同じですが、円弧ではなくパイの一切れのようなセグメントを表示します。
|
string |
|
同心円のドーナツ ¶
別々の同心円の円弧として、値を表示します。
total
を指定しない場合、チャートは値の 最大値 を使用します。
このチャートタイプは、stacked_donut
と同じプロパティをサポートしますが、以下の違いがあります:
|
string |
|
|
number |
同心円の円弧の間隔を0.0~1.0( チャートサイズの割合 )で指定します。デフォルトは |
セグメント化されたドーナツ ¶
このチャートタイプは合計を使用しません。代わりに、整数のsegment_count
の割合としてvalue
が表示されます。
|
string |
|
|
number |
表示するセグメント数。 |
セグメント化された棒 ¶
このチャートタイプは合計を使用しません。代わりに、整数のsegment_count
の割合としてvalue
が表示されます。
|
string |
|
|
セグメントを |
|
|
number |
表示するセグメント数。 |
|
boolean |
これがtrueで、
|
|
boolean |
trueの場合、左から右でなく、右から左にセグメントを埋めていきます。 |
|
number |
セグメント間のギャップのサイズ(ピクセル単位)。デフォルトは |
選択 ¶
segmented_bar
と似ていますが、value
は いくつの セグメントが描画されるかではなく、 どの セグメントが描画されるかを設定します。最初のセグメントには0
の番号が付けられます。タイル上に複数のvalues
を指定すると、チャートはすべての対応するセグメントを“オンにします”。
|
string |
|
|
string |
セグメントのビジュアルで、
|
棒 ¶
棒グラフとして値を表現します。
total
を指定しない場合、チャートは値の 最大値 を使用します。
|
string |
|
|
棒の方向で、 |
|
|
boolean |
“ゼロ”値がチャート領域の中心にきます。これは、負の値を示すのに便利です。
|
|
number |
棒の間のギャッのサイズ(ピクセル単位)。デフォルトは |
折れ線 ¶
折れ線グラフとして値を表現します。
total
を指定しない場合、チャートは値の 最大値 を使用します。
|
string |
|
|
number |
値のポイントを示すドットの半径(ピクセル単位)。これを |
面 ¶
line
と似ていますが、ポリラインではなく、塗りつぶされたポリゴンで描画されます。
|
string |
|