このページでは、dashboard.lkml
ファイルに LookML ダッシュボード パラメータを使用して、type: looker_donut_multiples
の LookML ダッシュボード要素を追加してカスタマイズする方法について説明します。
Looker UI でドーナツ倍数グラフを作成する方法については、ドーナツ倍数グラフのオプション ドキュメント ページをご覧ください。
使用例
## BASIC PARAMETERS
name: element_name
title: 'Element Title'
type: looker_donut_multiples
height: N
width: N
top: N
left: N
row: N
col: N
refresh: N (seconds | minutes | hours | days)
note:
text: 'note text'
state: collapsed | expanded
display: above | below | hover
## QUERY PARAMETERS
model: model_name
explore: explore_name
dimensions: [view_name.field_name, view_name.field_name, …]
measures: [view_name.field_name, view_name.field_name, …]
sorts: [view_name.field_name asc | desc, view_name.field_name, …]
pivots: [view_name.field_name, view_name.field_name, …]
limit: N
column_limit: N
filters:
view_name.field_name: 'Looker filter expression' | 'filter value'
listen:
dashboard_filter_name: dimension_or_measure_name
query_timezone: 'specific timezone' | user_timezone
merged_queries:
- 'primary query definition'
- 'next source query definition'
join_fields:
- field_name: view_name.field_name
source_field_name: view_name.field_name
## PLOT PARAMETERS
show_value_labels: true | false
font_size: N
charts_across: N
hide_legend: true | false
hidden_fields: [view_name.field_name, view_name.field_name, …]
## SERIES PARAMETERS
colors: [css_color, css_color, …]
series_colors:
series_name: css_color
# Possibly more series color assignments
series_labels:
'Series Name': desired series label
# Possibly more series label assignments
パラメーター定義
パラメーター名 | 説明 | |
---|---|---|
基本パラメータ | ||
name (要素の場合) |
要素を作成する | |
title (要素の場合) |
要素名のユーザーへの表示方法を変更します | |
type (要素の場合) |
要素で使用するビジュアリゼーションのタイプを決定します。 | |
height (要素の場合) |
layout: tile および layout: static ダッシュボードの要素の高さを tile_size の単位で定義します |
|
width (要素の場合) |
layout: tile および layout: static ダッシュボードの要素の幅を tile_size の単位で定義します |
|
top |
layout: static ダッシュボードで、要素の上から下への位置を tile_size の単位で定義します。 |
|
left |
layout: static ダッシュボードの要素の左から右への位置を tile_size の単位で定義します |
|
row |
layout: newspaper ダッシュボードの要素の上から下の位置を、行単位で定義します。 |
|
col |
layout: newspaper ダッシュボードの要素の左から右への位置を列単位で定義します |
|
refresh (要素の場合) |
要素が自動的に更新される間隔を設定します | |
note |
LookML のセクションを開始して、要素のメモを定義します。このパラメータには、text 、state 、display のサブパラメータがあります。 |
|
クエリ パラメータ | ||
model |
要素のクエリに使用するモデルを定義します。 | |
explore (要素の場合) |
要素のクエリに使用する Explore を定義します。 | |
dimensions |
要素のクエリに使用するディメンションを定義します。 | |
measures |
要素のクエリに使用するメジャーを定義します。 | |
sorts |
要素のクエリに使用する並べ替えを定義します | |
pivots |
要素のクエリに使用するためにピボットする必要があるディメンションを定義する | |
limit |
要素のクエリに使用する行数制限を定義します。 | |
filters (要素の場合) |
要素のクエリで変更できないフィルタを定義します。 | |
listen |
filters (ダッシュボード用)が作成された場合に、要素のクエリで変更できるフィルタを定義します。 |
|
query_timezone |
クエリの実行時に使用するタイムゾーンを定義します | |
merged_queries |
マージされた結果クエリを定義 | |
プロット パラメータ | ||
show_value_labels |
データポイントの横にラベルを表示 | |
font_size |
シリーズラベルのフォントサイズを変更します | |
charts_across |
行ごとのドーナツグラフの数を指定します | |
hide_legend |
グラフの凡例を非表示にします | |
hidden_fields |
クエリで使用する(グラフには表示しない)フィールドを指定します。 | |
時系列パラメータ | ||
colors |
グラフの系列の表示順序に基づいて、グラフの系列の色を設定します | |
series_colors |
シリーズの名前に基づいてグラフの系列の色を設定します | |
series_labels |
ユーザーにシリーズ名の表示方法を変更する |
基本パラメータ
LookML ダッシュボード要素を定義する場合は、少なくとも name
と type
の基本パラメータの値を指定する必要があります。その他の基本パラメータ(title
、height
、width
など)は、ダッシュボード上の要素の外観と位置に影響します。
name
このセクションでは、ダッシュボード要素の一部である
name
パラメータについて説明します。
name
はダッシュボード フィルタの一部として使用することもできます。詳しくは、ダッシュボード パラメータに関するドキュメント ページをご覧ください。
name
の宣言ごとに新しいダッシュボード要素が作成され、名前が割り当てられます。要素名は一意である必要があります。layout: grid
ダッシュボードを使用している場合、名前が elements
パラメータで参照されることがあります。
- name: orders_by_date
title
このセクションでは、ダッシュボード要素の一部である
title
パラメータについて説明します。
title
はダッシュボードの一部として使用することもできます。詳しくは、ダッシュボード パラメータに関するドキュメント ページをご覧ください。
title
はダッシュボード フィルタの一部として使用することもできます。詳しくは、ダッシュボード パラメータに関するドキュメント ページをご覧ください。
title
パラメータを使用すると、要素名のユーザーへの表示方法を変更できます。指定しない場合、タイトルはデフォルトで要素 name
に設定されます。
次の例を考えてみましょう。
- name: sales_overview
title: '1) Sales Overview'
この形式を使用すると、要素は [販売の概要] ではなく [1)販売の概要] と表示されます。
type
このセクションでは、ダッシュボード要素の一部である
type
パラメータについて説明します。
type
はダッシュボード フィルタの一部として使用することもできます。詳しくは、ダッシュボード パラメータに関するドキュメント ページをご覧ください。また、
type
(結合用)パラメータのドキュメント ページに記載されているように、type
を結合の一部として使用することもできます。
type
は、ディメンションの一部として使用することもできます。詳しくは、ディメンション、フィルタ、パラメータの種類に関するドキュメント ページをご覧ください。
type
は、メジャーの一部として使用することもできます。詳しくは、メジャーのタイプに関するドキュメント ページをご覧ください。
type
パラメータは、要素で使用するビジュアリゼーションのタイプを決定します。
- name: element_name
type: text | looker_grid | table | single_value | looker_single_record |
looker_column | looker_bar | looker_scatter | looker_line | looker_area |
looker_pie | looker_donut_multiples | looker_funnel | looker_timeline |
looker_map | looker_google_map | looker_geo_coordinates | looker_geo_choropleth | looker_waterfall | looker_wordcloud | looker_boxplot
さまざまなタイプの LookML ダッシュボード要素の概要については、type
(LookML ダッシュボード用)のドキュメントをご覧ください。
height
このセクションでは、ダッシュボード要素の一部である
height
パラメータについて説明します。
height
は、ダッシュボードの行の一部として使用することもできます。詳しくは、ダッシュボード パラメータのドキュメントをご覧ください。
tile
または static
レイアウトのダッシュボードの場合
height
パラメータは、layout: tile
ダッシュボードと layout: static
ダッシュボードの要素の高さを tile_size
(ピクセル単位で定義)単位で定義します。
たとえば、次のコードでは tile_size: 100
と height: 4
を指定して、orders_by_date
要素の高さを 400 ピクセルにしています。
- dashboard: sales_overview
tile_size: 100
...
elements:
- name: orders_by_date
height: 4
...
newspaper
レイアウトのダッシュボードの場合
height
パラメータは、layout: newspaper
ダッシュボードの要素の高さを行単位で定義します。
新聞レイアウトのダッシュボードのデフォルトは、6 行(およそ 300 ピクセル)の要素の高さです。preferred viewer
パラメータが dashboards-next
に設定されたダッシュボードの最小高さは 1 行です。ダッシュボードの高さの最小値は 2 行で、preferred viewer
パラメータを dashboards
に設定します。
たとえば、次のコードは、要素の高さを 12 行、またはデフォルトに設定されている他の要素の高さの 2 倍に設定します。
- dashboard: sales_overview
layout: newspaper
...
elements:
- name: orders_by_date
height: 12
...
width
このセクションでは、ダッシュボード要素の一部である
width
パラメータについて説明します。
width
はダッシュボードの一部として使用することもできます。詳しくは、ダッシュボード パラメータに関するドキュメント ページをご覧ください。
width
パラメータは、layout: tile
ダッシュボードと layout: static
ダッシュボードの要素の幅を tile_size
の単位で定義します。
たとえば、次のコードは tile_size: 100
と width: 4
を指定して、orders_by_date
要素の幅を 400 ピクセルにしています。
- dashboard: sales_overview
tile_size: 100
...
elements:
- name: orders_by_date
width: 4
...
width
パラメータは、layout: newspaper
ダッシュボードの要素の幅を列単位で定義します。
新聞レイアウトのダッシュボードのデフォルト幅は 24 列です。
次のコードは、要素をダッシュボードの幅の半分に設定します。
- dashboard: sales_overview
layout: newspaper
...
elements:
- name: orders_by_date
width: 12
...
top
top
パラメータは、layout: static
ダッシュボードの要素の上から下の位置を tile_size
の単位で定義します。
たとえば、次のコードでは、tile_size: 100
と top: 4
を指定して、orders_by_date
要素の上端をダッシュボードの上から 400 ピクセルの位置に配置しています。
- dashboard: sales_overview
tile_size: 100
...
elements:
- name: orders_by_date
top: 4
...
left
left
パラメータは、layout: static
ダッシュボードの要素の左から右への位置を tile_size
の単位で定義します。
たとえば、次のコードは tile_size: 100
と left: 4
を指定し、orders_by_date
要素の左端をダッシュボードの左端から 400 ピクセルの位置に配置します。
- dashboard: sales_overview
tile_size: 100
...
elements:
- name: orders_by_date
left: 4
...
row
layout: newspaper
ダッシュボードの場合、row
パラメータは、要素の上端を配置する行を定義します。
ダッシュボードの先頭は行 0 です。新聞レイアウトのダッシュボードでは、要素の高さはデフォルトで 6 行になっています。つまり、ダッシュボードの上部にあるダッシュボード要素(row: 0
)では、デフォルトで 0 ~ 5 の行が使用されます。
各行の高さは 50 ピクセルです。つまり、デフォルトの要素の高さは 6 で、300 ピクセルです。
たとえば次のコードは、要素がデフォルトの高さに設定されていると仮定して、要素を要素の 2 行目に設定します。
- dashboard: sales_overview
layout: newspaper
...
elements:
- name: orders_by_date
row: 6
...
col
layout: newspaper
ダッシュボードの場合、col
パラメータは、要素の左端を配置する列を定義します。
ダッシュボードは 24 列に分かれています。ダッシュボードの左側 0 から始まるダッシュボード。新聞レイアウトのダッシュボードの要素幅は、デフォルトで 8 列になります。つまり、ダッシュボードの左側にある col: 0
要素では列 0 ~ 7 がデフォルトで表示されます。
たとえば、次のコードでは、ダッシュボードの要素の 3 列目に設定する要素を設定します。
- dashboard: sales_overview
layout: newspaper
...
elements:
- name: orders_by_date
col: 16
...
refresh
このセクションでは、ダッシュボード要素の一部である
refresh
パラメータについて説明します。
refresh
はダッシュボードの一部として使用することもできます。詳しくは、ダッシュボード パラメータに関するドキュメント ページをご覧ください。
refresh
パラメータを使用すると、要素を定期的に再読み込みすることで、最新のデータを取得できます。これは、オフィスのテレビなど、常にダッシュボードが表示される設定で役立ちます。このパラメータを有効にするには、ダッシュボードをブラウザ ウィンドウで開く必要があります。この設定は、ダッシュボードのキャッシュを「ウォームアップ」するためにバックグラウンドで実行されることはありません。
リフレッシュ レートは、秒、分、時間、日の任意の数値(小数点なし)にできます。例:
- name: orders_by_date
refresh: 2 hours
更新間隔を短く設定する場合は注意が必要です。この要素の背後にあるクエリがリソースを大量に消費する場合、特定の要素が原因でデータベースに過大な負荷がかかる可能性があります。
note
次のように、要素に説明的なメモを追加できます。
- name: element_name
note:
text: 'note text'
state: collapsed | expanded
display: above | below | hover
note
には、サブパラメータ text
、state
、display
があります。
text
text
サブパラメータは、メモに表示されるテキストを指定します。テキストはローカライズできます。
state
state
サブパラメータは、要素の幅内の 1 行に収まらないほど大きいメモを collapsed
と expanded
のどちらにするかを決定します。collapsed
を選択してメモが長すぎる場合は、メモの最後に表示される省略記号(...
)が表示されます。これを使用してメモの全文を読むことができます。
display
display
サブパラメータは、要素にメモが表示される場所を決定します。above
はメモを要素の上部に配置し、below
はメモを要素の下に配置します。hover
では、ユーザーが要素にカーソルを合わせるとメモが表示されます。
クエリ パラメータ
type: looker_donut_multiples
の LookML ダッシュボード要素を定義する場合、少なくとも model
および explore
クエリ パラメータの値を指定する必要があります。また、dimensions
、measures
、pivots
のパラメータには、それぞれ少なくとも 1 つの値を含める必要があります。以下で説明するその他のクエリ パラメータを使用して、ダッシュボード要素でのデータの表示方法を制御することもできます。
model
model
パラメータは、要素クエリに使用するモデルを定義します。指定しない場合は、デフォルトでダッシュボードが存在するモデルになります。
- name: orders_by_date
model: ecommerce
model
パラメータは、LookML 定数を受け入れます。プロジェクトのマニフェスト ファイルで定数を定義してから、構文 "@{constant_name}"
を使用して定数を model
の値として設定できます。定数を使用すると、1 つのモデル名を 1 か所で定義できます。これは、複数のダッシュボード要素で使用されるモデルの名前を更新する場合に特に便利です。
LookML ダッシュボードで定数の詳細と使用例については、constant
パラメータのドキュメント ページをご覧ください。
explore
このセクションでは、ダッシュボード要素の一部である
explore
パラメータについて説明します。
explore
は、モデルの一部として使用することもできます。詳しくは、explore
パラメータのドキュメントをご覧ください。
explore
はダッシュボード フィルタの一部として使用することもできます。詳しくは、ダッシュボード パラメータに関するドキュメント ページをご覧ください。
explore
パラメータは、要素クエリに使用する Explore を定義します。
- name: orders_by_date
explore: order
explore
パラメータは、LookML 定数を受け入れます。プロジェクトのマニフェスト ファイルで定数を定義してから、構文 "@{constant_name}"
を使用して定数を explore
の値として設定できます。定数を使用すると、1 つの場所で Explore の名前を定義できます。これは、複数のダッシュボード要素で使用される Explore の名前を更新する場合に特に便利です。
LookML ダッシュボードで定数の詳細と使用例については、constant
パラメータのドキュメント ページをご覧ください。
dimensions
dimensions
パラメータは、要素クエリに使用するディメンションを定義します。ディメンションを指定するには、構文 view_name.dimension_name
を使用します。クエリに dimensions
を含めない場合は、含めないでください。
## single dimension example
- name: orders_by_date
dimensions: order.order_date
## multiple dimension example
- name: orders_by_date
dimensions: [order.order_date, customer.name]
measures
measures
パラメータは、要素クエリに使用するメジャーを定義します。構文は view_name.measure_name
を使用してメジャーを指定します。クエリに measures
を含めない場合は、含めないでください。
## single measure example
- name: orders_by_date
measures: order.count
## multiple measure example
- name: orders_by_date
measures: [order.count, order_item.count]
sorts
sorts
パラメータは、要素クエリに使用する並べ替えを定義します。1 番目、2 番目、3 と順に表示されます。構文 view_name.field_name
は、ディメンションまたはメジャーを指定するときに使用します。Looker のデフォルトの並べ替え順を使用する場合は、sorts
を含めないでください。降順にする場合、末尾には desc
を付けます。昇順で並べ替える場合は、接尾辞は不要です。
## single sort example
- name: orders_by_date
sorts: order.order_date desc
## multiple sort example
- name: orders_by_date
sorts: [order.order_date desc, customer.name]
pivots
pivots
パラメータは、要素クエリ用にピボットするディメンションを定義します。ディメンションを指定するには、構文 view_name.dimension_name
を使用します。クエリに pivots
を含めない場合は、含めないでください。
## single pivot example
- name: orders_by_date
pivots: customer.gender
## multiple pivot example
- name: orders_by_date
pivots: [customer.gender, customer.age_tier]
limit
limit
パラメータでは、要素クエリに使用する行数制限を定義します。この制限は、ピボットが適用される前の行数に適用されます。
- name: orders_by_date
limit: 100
filters
このセクションでは、ダッシュボード要素の一部である
filters
パラメータについて説明します。
filters
はダッシュボードの一部として使用することもできます。詳しくは、ダッシュボード パラメータに関するドキュメント ページをご覧ください。
filters
は、メジャーの一部として使用することもできます。詳しくは、filters
パラメータのドキュメントをご覧ください。
filters
パラメータは、要素のクエリに使用する変更できないフィルタを定義します。ユーザーがダッシュボードで変更できるフィルタが必要な場合は、ダッシュボードの filters
を使用してフィルタを設定し、listen
を使用して要素に適用する必要があります。
filters
の構文は次のとおりです。
- name: element_name
filters:
orders.created_date: 2020/01/10 for 3 days
orders.status: Shipped
# You can create multiple filter statements
各フィルタは、Looker のフィルタ式または値定数を受け入れることができます。フィルタ式で _localization
または _user_attributes
Liquid 変数を使用して柔軟なフィルタ値を指定することもできます。
listen
ダッシュボードには、ユーザーがダッシュボード要素の背後にあるデータを変更できるフィルタを含めることができます。これらは、ダッシュボードの filters
パラメータを使用して設定します。フィルタが要素に影響するには、listen
パラメータを使用して、フィルタの要素が「リッスン」に設定する必要があります。
listen
の構文は次のとおりです。
- name: element_name
listen:
filter_name_goes_here: dimension or measure on which to apply
the filter using view_name.field_name syntax
# You can add more than one listen statement
たとえば、[日付] というフィルタを作成し、ユーザーが UI のフィルタ フィールドに日付を入力する必要があるとします。その後、ユーザーが入力した値を次のように orders_by_date
要素に適用できます。
- dashboard: sales_overview
...
filters:
- name: date
type: date_filter
elements:
- name: orders_by_date
listen:
date: order.order_date
...
このコンセプトの詳細については、LookML ダッシュボードの構築のドキュメントをご覧ください。
query_timezone
query_timezone
パラメータでは、クエリを実行するタイムゾーンを指定します。タイムゾーン オプションは、timezone
の値のドキュメント ページに表示されます。閲覧者のタイムゾーンを使用してクエリを実行する場合は、値を user_timezone
として割り当てます。
- name: orders_by_date
query_timezone: America/Los Angeles
- name: orders_by_customer
query_timezone: user_timezone
merged_queries
merged_queries
パラメータでは、複数のクエリから結果を結合する方法を定義します。コンポーネント クエリを merged_queries
パラメータの下に定義し、join_fields
サブパラメータを使用してマージルールを定義します。
merged_queries
の構文は次のとおりです。
merged_queries:
- 'primary query definition'
- 'next source query definition'
join_fields:
- field_name: 'field from the source query using the view_name.field_name syntax'
source_field_name: 'joined field from the primary query using the
view_name.field_name syntax'
# more join_fields definitions as needed
- 'next source query definition'
join_fields:
- field_name: view_name.field_name
source_field_name: view_name.field_name
# more join_fields definitions as needed
# additional source queries and join_fields definitions as needed
merged_results
で定義された最初のクエリがプライマリ クエリであり、他のクエリはそのクエリと統合されます。
たとえば、銘柄コード、会社名、Twitter ユーザー名で結合すると、2 つのクエリを統合して、会社名、会社の Twitter ユーザー名、IPO の年、銘柄コード、従業員数、求人数の結果を返すことができます。
- name: merged_results_element
title: Merged Results Tile
merged_queries:
- model: market_research
explore: company_info
fields: [company.name, company.twitter_username, ipo.public_year, ipo.stock_symbol]
filters:
company.twitter_username: "-NULL"
ipo.valuation_amount: NOT NULL
sorts: [ipo.public_year desc]
- model: crunchbase
explore: companies
fields: [companies.name, ipo.stock_symbol, companies.twitter_username,
companies.number_of_employees, jobs.job_count]
filters:
companies.number_of_employees: NOT NULL
ipo.stock_symbol: "-NULL"
companies.twitter_username: "-NULL"
sorts: [jobs.job_count desc]
join_fields:
- field_name: ipo.stock_symbol
source_field_name: ipo.stock_symbol
- field_name: companies.name
source_field_name: company.name
- field_name: companies.twitter_username
source_field_name: company.twitter_username
データの結果は次のようになります。
次に、要素パラメータを適用して、お好みでビジュアリゼーションのスタイルを設定できます。
プロット パラメータ
このセクションで説明するパラメータのほとんどは、ドーナツ倍数グラフのビジュアリゼーション エディタの [Plot] セクション内のオプションに対応しています。
show_value_labels
データポイントの横に棒、線、点の値を表示します。
show_value_labels: true | false
## default value: false
font_size
10px
や 12px
などの有効な CSS サイズを使用して、値ラベルのフォントサイズを設定します。
font_size: 14px
charts_across
charts_across
パラメータは、type: looker_donut_multiples
ビジュアリゼーションにおける行ごとの小さなドーナツグラフの数を指定します。
charts_across: 2
## default value: 3
hide_legend
この宣言により、ビジュアリゼーションの凡例が表示されなくなります。
hide_legend: true | false
## default value: false
hidden_fields
hidden_fields
パラメータは、クエリで使用されているがグラフには表示されていないフィールドを指定します(存在する場合)。非表示になっているフィールドは、Explore のデータテーブル セクションに表示されます。
hidden_fields: [inventory_items.count, distribution_centers.id]
時系列パラメータ
このセクションで説明するパラメータは、ドーナツ倍数グラフのビジュアリゼーション エディタの Series セクションにあるオプションに対応しています。
colors
colors
パラメータで、系列の色のリストを指定します。リストの最初の色は、最初のデータ系列に対応しています。複数の色がリストに含まれている場合、色は最初からやり直します。
colors: [blue, orange, yellow, red, purple]
色を指定するすべてのグラフ属性の場合、色の値は 16 進文字列(#2ca6cd
など)または CSS 名前付き色文字列(mediumblue
など)を取ることができます。
series_colors
name: value
ペアを使用して、シリーズ名に基づいてシリーズの色を設定します。
ピボット グラフの場合、シリーズ名はピボット名です。
series_colors:
'Yes': skyblue
'No': '#000000'
複数のメジャーを含むグラフの場合、シリーズ名はメジャーのフィールド名です。
series_colors:
inventory_items.count: crimson
orders.count: green
シリーズ名が series_colors
にない場合は、グラフにデフォルトで colors
で指定された色のリストが表示されます。colors
が設定されていない場合、グラフはデフォルトのカラーパターンに戻ります。
series_labels
name: label
ペアを使用して、シリーズ名に基づいて 1 つ以上のシリーズのラベルを設定します。
ピボット グラフの場合、シリーズ名はピボット名です。
series_labels:
'Yes': iOS Users
'No': Android Users
複数のメジャーを含むグラフの場合、シリーズ名はメジャーのフィールド名です。
series_labels:
inventory_items.count: Inventory
orders.count: Orders