Dashboards can be created in one of two ways. User-defined dashboards are created via the Looker UI, and are described on the Creating user-defined dashboards documentation page. Dashboards can also be created using LookML and their overall settings modified as discussed on this page.
A dashboard has several settings that impact the entire dashboard, which are described here. It will also contain a group of data visualizations, which are called elements. The LookML for these elements is described on the documentation pages for each individual element type.
Example usage
Parameter definitions
Parameters with the new dashboard experience only label take effect only when a dashboard is rendered using the new dashboard experience, either by using preferred_viewer: dashboards-next
or by converting a legacy LookML dashboard into a user-defined dashboard and then upgrading the user-defined dashboard.
Parameter Name | Description |
---|---|
dashboard |
Create a dashboard. |
preferred_viewer |
ADDED7.12 Choose to render a dashboard as a dashboard or a legacy dashboard. |
title (for dashboard) |
Change the way a dashboard name appears to users. |
description (for dashboard) |
Add a placeholder description to be used if the dashboard is converted to a user-defined dashboard. |
extends |
Base the LookML dashboard on another LookML dashboard. |
extension |
Require that the dashboard is extended by another dashboard. |
layout |
Define the way that the dashboard will place elements. |
rows |
Start a section of LookML to define the elements that should go into each row of a layout: grid dashboard. |
elements (for rows) |
Define the elements that should go into a row of a layout: grid dashboard. |
height (for rows) |
Define the height of a row for a layout: grid dashboard. |
tile_size |
Define the size of a tile for a layout: tile dashboard. |
width (for dashboard) |
Define the width of the dashboard for a layout: static dashboard. |
refresh (for dashboard) |
Set the interval on which dashboard elements will automatically refresh. |
auto_run |
Determine whether dashboards run automatically when initially opened or reloaded. |
Filter Parameters | |
crossfilter_enabled |
ADDED7.20 new dashboard experience only Enable or disable cross-filtering for a dashboard that also uses preferred_viewer: dashboards-next . |
filters (for dashboard) |
Start a section of LookML to define dashboard filters. |
name (for filters) |
Create a filter. |
title (for filters) |
Change the way a filter name appears to users. |
type (for filters) |
Determine the type of filter to be used. |
default_value |
Set a default value for a filter, if desired. |
allow_multiple_values |
Limit users to a single filter value. |
required |
Require that users enter a filter value to run the dashboard. |
ui_config |
ADDED7.10 new dashboard experience only Configure the filter controls that are available when users view a LookML dashboard rendered in the new dashboard experience, with preferred_viewer set to dashboards-next (not a legacy dashboard, with preferred_viewer set to dashboards ). Has subparameters type , display , and options . |
model (for filters) |
Specify the model that contains the underlying field of a type: field_filter filter. |
explore (for filters) |
Specify the Explore that contains the underlying field of a type: field_filter filter. |
field |
Specify the underlying field of a type: field_filter filter. |
listens_to_filters |
Narrow suggestions for dashboard filters of field_filter based on what the user enters for another dashboard filters of type: field_filter .
|
Embedded Dashboard Parameters | |
embed_style |
Start a section of LookML to define embedded dashboard customizations. |
background_color |
Set a background color of an embedded dashboard. |
show_title |
Specify whether the dashboard title is visible on an embedded dashboard. |
title_color |
Set the color of the title of an embedded dashboard. |
show_filters_bar |
Specify whether the filters bar is visible on an embedded dashboard. |
tile_background_color |
Set the tile background color of an embedded dashboard. |
tile_text_color |
Set the tile text color of an embedded dashboard. |
Element Parameters | |
elements (for dashboard) |
Start a section of LookML to define dashboard elements. |
dashboard
The dashboard
parameter declares a new dashboard and specifies a name for the dashboard. The maximum number of characters is 255; and allowed characters are letters (A-Z), numbers (0-9), dashes (-), and underscores (_). It is typically best practice to place each LookML dashboard in its own LookML file, but it is possible to declare multiple dashboards in a single file.
In order to display anything, a dashboard requires at least one element to be added via the elements
parameter.
If you change the value of a LookML dashboard’s
dashboard
parameter, the LookML dashboard will automatically move back into the LookML dashboards folder from its current folder.
preferred_viewer
LookML dashboards with
preferred_viewer
set todashboards-next
support only thenewspaper
layout.
The preferred_viewer
parameter lets you choose the format for viewing and downloading a dashboard. It accepts the following values:
dashboards
: The classic AngularJS-based renderer for legacy dashboards. This supports the layoutsgrid
,newspaper
,static
, andtile
.dashboards-next
: The React-based renderer for the default dashboard experience. This supports only thenewspaper
layout.
LookML dashboards with preferred_viewer: dashboards
that are converted into user-defined dashboards can be rendered using the new dashboard experience by upgrading the user-defined dashboard.
title
(for dashboard)
This section refers to the
title
parameter that is part of a dashboard.
title
can also be used as part of a dashboard filter, described on thetitle
(for filters) section on this page.
title
can also be used as part of any dashboard element. A representative example of its usage is provided on the column chart elements documentation page.
The title
parameter lets you change how a dashboard name will appear to users in folders and at the top of the dashboard. If not specified, the title defaults to the name of the dashboard. The title text can be localized.
Consider this example:
If you did this, instead of the dashboard appearing as Sales Overview, it would appear as 1) Sales Overview.
description
(for dashboard)
This section refers to the
description
parameter that is part of a dashboard.
description
can also be used as part of an Explore, as described on thedescription
(for Explores) parameter documentation page.
description
can also be used as part of a field, as described on thedescription
(for fields) parameter documentation page.
Starting in Looker 21.20, the contents of the description
parameter will appear in the Description text box of the Dashboard Details panel of a LookML dashboard.
The description
parameter lets you add a description to a LookML dashboard.
The description is displayed under the dashboard title in the lists of dashboards when viewed in a folder. If a description is not specified, the list displays only the dashboard title. The dashboard description will also appear in the Description text box of the Dashboard Details panel.
The description text can be localized.
extends
As described on the Reusing codes with extends documentation page, the extends
parameter lets you base one LookML dashboard on another LookML dashboard, possibly adding or overriding some settings. The extends
parameter accepts the name of another LookML dashboard.
When extending an object, be aware that localization rules apply to your extensions as well. If you are extending an object and then defining new labels or descriptions, you should provide localization definitions in your project’s locale strings files. See the Localizing your LookML model documentation page for more information.
extension
As described on this page, the extension
parameter indicates that the dashboard must be extended by another dashboard. This dashboard is never visible to other users but can be used as a template to create other dashboards that are visible to other users. The extension
parameter only accepts the value required
. If the extension
parameter is not included, extension is not required for the dashboard.
layout
LookML dashboards with
preferred_viewer
set todashboards-next
support only thenewspaper
layout.
The layout
parameter sets the layout method that Looker will use when positioning dashboard elements. It accepts the following values:
newspaper
: Dashboard elements will appear in a 24-column grid. The default size for an element is a width of 8 columns and a height of 6 rows. Elements are configurable along this grid, specified by thewidth
,height
,row
, andcol
element parameters. This is the layout option used when a user-defined dashboard is converted to a LookML dashboard, as well as the default layout when a new LookML dashboard is created through the Looker IDE. In addition, LookML dashboards withpreferred_viewer
set todashboards-next
support only thenewspaper
layout.grid
: Dashboard elements will appear with dynamic widths, based on a set of rows you define with therows
parameter and its subparameterselements
andheight
.static
: Dashboard elements will appear in the order they are listed in the LookML file. Each dashboard element must be positioned manually by using thetop
andleft
parameters. These parameters apply to all element types, and details about their usage appear on the documentation pages for each individual visualization type. For representative examples of howtop
andleft
work, see the Column chart parameters for LookML dashboards documentation page.tile
: Dashboard elements will appear in the order they are listed in the LookML file. The width of the dashboard is dynamic, and is based on the width of the browser. The dashboard elements will dynamically position themselves within the browser to fill the available space.
rows
For layout: grid
dashboards, the rows
parameter starts the section of LookML where you define which elements should go into which rows, as well as the height of each row. Within each row, each element has the same width. If you do not list an element in this section it will not appear on the dashboard.
elements
The elements
parameter takes a list of dashboard element names, separated by commas. Each elements
declaration creates a new row in the dashboard. The elements that are placed into a row will all have the same width. So, if you place 2 elements in a row, they will each take 50% of the available space. If you place 4 elements into a row, they will each take 25% of the available space, and so on.
height
The height
parameter defines the height of a row in pixels. The default value is 300.
tile_size
For layout: tile
and layout: static
dashboards, the unit that is used to size and position elements is tile size. You define tile_size
in pixels, and the default value is 160. For example:
In this situation, a dashboard element with height: 5
and width: 3
will be 500 pixels high, and 300 pixels wide. The height
and width
parameters apply to all element types, and details about their usage appear on the documentation pages for each individual visualization type. For a representative example of how height
and width
work, see the Column chart parameters for LookML dashboards documentation page.
width
This section refers to the
width
parameter that is part of a dashboard.
width
can also be used as part of a dashboard element. A representative example its usage is provided on the documentation page for column chart elements.
For layout: static
dashboards, the width
parameter defines the total dashboard width that you plan to use in pixels. The width
parameter will not restrict the dashboard to a certain size if you define too large of an element, or too many elements in a row. Rather, the width
setting helps to keep the dashboard centered on the screen. If you do not set a width, the default is 1200.
refresh
This section refers to the
refresh
parameter that is part of a dashboard.
refresh
can also be used as part of a dashboard element. A representative example of its usage is provided on the documentation page for column chart elements.
The refresh
parameter allows a dashboard to automatically reload on some periodic basis, thereby retrieving fresh data. This is often helpful in settings where a dashboard is constantly displayed, such as on an office TV. Note that the dashboard must be open in a browser window for this parameter to have an effect. This setting does not run in the background to “pre-warm” the dashboard cache.
The refresh rate can be any number (without decimals) of seconds, minutes, hours or days. For example:
Use caution when setting short refresh intervals. Since dashboards can contain many queries, some of which may be resource intensive, certain dashboards may strain your database more than desired.
auto_run
The auto_run
parameter determines whether or not a dashboard will run when it is initially opened or reloaded. The default value is true. When this parameter is set to false, users will need to press a Run button to load the dashboard. For example, a dashboard like this will automatically run when opened:
Regardless of the auto_run
setting, users must always click a Run button after changing filter values. This helps to prevent unwanted reloads when a user pauses during a filter change or wants to change multiple filters at the same time.
crossfilter_enabled
This parameter applies only to LookML dashboards that are rendered using Looker’s new dashboard experience by setting the
preferred_viewer
parameter todashboards-next
.
The crossfilter_enabled
parameter lets you turn cross-filters on or off for a dashboard that also uses preferred_viewer: dashboards-next
. When this parameter is set to true
, dashboard viewers can create cross-filters on the dashboard by clicking certain data points.
crossfilter_enabled
will not take effect on LookML dashboards using preferred_viewer: dashboards
. However, if a LookML dashboard using crossfilter_enabled
and preferred_viewer: dashboards
was converted into a user-defined dashboard and upgraded, crossfilter_enabled
would take effect on the upgraded dashboard.
filters
This section refers to the
filters
parameter that is part of a dashboard.
filters
can also be used as part of a dashboard element. A representative example of its usage is provided on the documentation page for column chart elements.
filters
can also be used as part of a measure, described on thefilters
parameter documentation page.
The filters
parameter starts the section of LookML where you define dashboard filters. Filters appear at the top of the dashboard and let users change the data behind dashboard elements.
In order for a filter to impact an element, the element must be set up to “listen” for that filter, using the listen
parameter. This parameter applies to all element types besides type: text
, and details about its usage appear on the documentation pages for each individual visualization type. For a representative example of how listen
works, see the Column chart parameters for LookML dashboards documentation page.
When filters are applied to an element in this manner, it’s important for the filter type
to match the dimension or measure type that is listening for the filter (see Creating a LookML Dashboard for more details). Filters have the form:
name
This section refers to the
name
parameter that is part of a dashboard filter.
name
can also be used as part of a dashboard element. A representative example of its usage is provided on the documentation page for column chart elements.
Each name
declaration creates a new dashboard filter, and assigns a name to it. The name will be referenced in the listen
parameter of elements that should be impacted by the filter. The listen
parameter applies to all element types besides type: text
, and details about its usage appear on the documentation pages for each individual visualization type. For a representative example of how listen
works, see the Column chart parameters for LookML dashboards documentation page.
title
(for filters)
This section refers to the
title
parameter that is part of a dashboard filter.
title
can also be used as part of a dashboard, as described in thetitle
(for dashboard) section on this page.
title
can also be used as part of a dashboard element. A representative example of its usage is provided on the Column chart parameters for LookML dashboards documentation page.
The title
parameter lets you change how a filter name will appear to users at the top of a dashboard. If not specified, the title defaults to the name of the filter.
Consider this example:
If you did this, instead of the filter appearing as Order Date, it would appear as Order Date(s).
type
This section refers to the
type
parameter that is part of a dashboard filter.
type
can also be used as part of a dashboard element, described on thetype
(for LookML dashboards) parameter documentation page.
type
can also be used as part of a join, described on thetype
parameter parameter documentation page.
type
can also be used as part of a dimension, described on the Dimension, filter, and parameter types documentation page.
type
can also be used as part of a measure, described on the Measure types documentation page.
The type
parameter specifies the type of input that will be placed in the filter. While any type of input (such as a date) could be written into the type: string_filter
filter, being more specific provides a more tailored filter widget to the user. The 4 types of filter are:
field_filter
: Should generally be your default choice, when you can specify an underlying dimension or measure. Usingtype: field_filter
and associating the filter with atype:string
field causes the filter to suggest possible filter values.number_filter
: Lets the user input a number/integer value or expression.date_filter
: Lets the user input a date value or expression.string_filter
: Lets the user input freeform text.
field_filter
Suggests options to choose from, changes its presentation to users based on the underlying field you specify.
This should be your go-to filter type in situations where you want to make suggestions to users as they interact with the filter. The dimension from which suggestions will be pulled is defined by using the explore
and field
parameters, and must be a field of type: string
to generate filter suggestions.
Please note that suggestions may not work if the field comes from a derived table, if sql_always_where
is used on the Explore, or if the field is a measure.
number_filter
Does not make suggestions, lets the user enter an integer/number value or expression.
date_filter
Does not make suggestions, lets the user enter a date value or expression.
string_filter
Does not make suggestions, lets the user enter freeform text.
default_value
The default_value
parameter lets you specify a default value to use for a filter. This value can be helpful to users by suggesting a reasonable starting point.
Make sure to match the default value with the type of filter being used. For example:
You can use filter expressions to create default values. The Looker filter expressions documentation page describes this in more detail.
When you use both the default_value
and the ui_config
parameters, filter expressions must be compatible with the value given to the type
subparameter of ui_config
and the data types that support the type
value.
You can also use the _localization
and _user_attributes
Liquid variables for flexible default filter values.
allow_multiple_values
New in Looker 22.6, you can apply allow_multiple_values
to filters with the type
subparameter of ui_config
set to advanced
.
The allow_multiple_values
parameter lets you control whether users can select a single filter value or multiple filter values. When this parameter is set to true
(the default), users can select multiple values for the filter. When this parameter is set to false
, users are able to select only a single filter value.
For LookML dashboards with a preferred_viewer
set to the default value of dashboards-next
, allow_multiple_values
applies only to advanced filter controls, which are created by setting the type
value of ui_config
to advanced
. If other values are selected for the type
subparameter of ui_config
, the filter will be single selection or multiple selection, depending on the type
value you have set, regardless of the value you have set for allow_multiple_values
. For LookML dashboards that use the legacy dashboard experience, with a preferred_viewer
set to dashboards
, allow_multiple_values
can apply to filters of any type
.
For example:
required
The required
parameter lets you require that users provide a value for the filter in order to run the dashboard. By default, filters do not require values. If a filter that does not require a value and is left blank, the data simply isn’t restricted by the filter field. If a filter that does require a value and is left blank, the dashboard won’t run.
ui_config
This parameter applies only to LookML dashboards that are rendered using Looker’s default dashboard experience by setting the
preferred_viewer
parameter todashboards-next
.
The ui_config
subparameter of filters
lets you configure filter settings that apply when a LookML dashboard is viewed as a dashboard (not when a LookML dashboard is viewed as a legacy dashboard), by setting the preferred_viewer
parameter to dashboards-next
. These settings include the types of filter controls used, the placement of filter controls, and possible filter values.
For example:
The setting you specify with the ui_config
subparameter will not take effect on LookML dashboards using preferred_viewer: dashboards
. However, if a LookML dashboard using ui_config
and preferred_viewer: dashboards
was converted into a user-defined dashboard and upgraded, ui_config
would take effect on the upgraded dashboard.
See the Adding and editing user-defined dashboard filters documentation page for more information about configuring filters with the UI.
type
The type
subparameter of ui_config
lets you specify the types of filter controls that are shown when users view a LookML dashboard as a dashboard (not as a legacy dashboard).
Depending on the value you enter for type
, filter controls can be single selection or multiple selection.
The values that
type
supports depend on the LookML datatype
assigned to the field you’re filtering on.
Value | Description | Supported Data Types |
---|---|---|
Multiple Selection | ||
button_group | The filter shows a group of buttons, with one button for each value specified with the options parameter. | s n t zc yn di du |
checkboxes | The filter shows checkboxes, with one checkbox for each value specified with the options parameter. | s n t zc yn di du |
tag_list | The filter shows a drop-down listing each possible value specifed using the options parameter. | s n t zc di du |
range_slider | For numeric fields, the filter shows a slider that lets users set a range of numbers as the filter’s value. The min and max subparameters of options are used to specify the minimum and maximum possible values for the filter, and the default range can be specified using the default_value parameter. | n di du |
Single Selection | ||
button_toggles | The filter shows a group of buttons, with one button for each value specified with the options parameter. | s n t zc yn di du p |
radio_buttons | The filter displays radio buttons, with a button for any value and one button for each value specified with the options parameter. | s n t zc yn di du p |
dropdown_menu | The filter shows a drop-down menu listing each possible value specified using the options parameter. The drop-down also provides users with the option to select Any value. | s n t zc yn di du p |
slider | For numeric fields, the filter shows a slider that lets users choose a filter by sliding between the minimum and maximum possible values, which are specified using the options parameter. | n di du |
Dates and Times | ||
day_picker | The filter lets users choose a particular date to filter on. | dt* The single day control can be used with most timeframes and time-based types, but viewers can only select single dates with this type of control. |
day_range_picker | The filter lets users select a start date and end date to filter on a range of dates. | dt* The date range control can be used with most timeframes and time-based types, but viewers can only select date ranges with this type of control. |
date_time_range_input | The filter lets the user filter on a range of dates and times. | dt* The date and time range control can be used with most time-based types, and viewers must select both date and time options with this type of control. |
relative_timeframes | The filter lets the user filter on a custom range of dates or to choose from timeframe presets like Today, Last 7 Days, Last 90 Days, and so on. | dt* The timeframe control can be used with most timeframes and time-based types, but viewers cannot select time options with this type of control. |
Other | ||
advanced | The filter presents options for applying one or more filters or advanced matches filters. See the Using advanced controls section on this page to learn more about advanced controls. | s n t zc yn dt di du l p |
*Note about date and time data: Some timeframes and time-based types are interpreted as different data types when Looker creates control options for them. Two examples are the yesno timeframe, which is interpreted as a yesno data type and therefore supports the values that are supported by the yesno type; and the hour_of_day timeframe, which is interpreted as a number data type and therefore supports the values that are supported by the number type. |
display
You can can use the display
subparameter of ui_config
to set the position of a dashboard filter. You can position a filter by assigning one of the following values to display
:
inline
: The filter is displayed directly in the top bar of the dashboard.popover
: A summary value appears in the top bar of the dashboard; click the value to see the full filter.overflow
: A More button appears in the top bar of the dashboard with a numeric indicator of how many overflow filters there are; users can click the button to see the overflow filters and their values.
Some filter types can only be displayed in certain ways. For example, filters of type: day_picker
can only be displayed as inline
or overflow
. If you give a filter a display
value that is not valid for that type
, the filter will display as either inline
or popover
, whichever is valid. To learn more, see the Adding and editing user-defined dashboard filters documentation page.
For information about positioning dashboard filters using the UI, see the Adding and editing user-defined dashboard filters documentation page.
options
The optional options
subparameter of ui_config
lets you specify the values that a user can choose from to temporarily update dashboard filter values when users view a LookML dashboard as a dashboard (not a legacy dashboard). If you do not specify any values for options
, Looker pulls the first values from the database.
For example, you can set San Francisco
, New York
, and Tokyo
as the possible values for a filter on the users.city
field as follows:
If the type
subparameter of ui_config
is set to range_slider
or slider
, you can use the min
and max
subparameters of options
:
min
: Set the minimum possible value for a filter.max
: Set the maximum possible value for a filter.
For example:
model
For dashboard filters of type: field_filter
, you need to define a model from which the filter will pull suggestions. The model
parameter specifies which model contains the field you want to use.
explore
This section refers to the
explore
parameter that is part of a dashboard filter.
explore
can also be used as part of a model, described on theexplore
parameter documentation page.
explore
can also be used as part of a dashboard element. A representative example of its usage is provided on the documentation page for column chart elements.
For dashboard filters of type: field_filter
, you need to define a field from which the filter will pull suggestions. The explore
parameter specifies which Explore contains the field you want to use.
field
For dashboard filters of type: field_filter
, you need to define a field from which the filter will pull suggestions. The field
parameter specifies which field you want to use. It is important to use the fully scoped field name. In other words, use view_name.field_name
, not just field_name
.
listens_to_filters
For dashboard filters of type: field_filter
, you can narrow suggestions for the filter based on what the user enters for another filter of type: field_filter
.
In the following example, the suggestions provided for the State
filter will be based on the values from the Order ID
filter. Whatever values are selected for the Order ID
filter will have associated users.state
values, and those values will be suggested values for the State
filter. See the Adding and editing user-defined dashboard filters documentation page for more information.
embed_style
The embed_style
parameter starts the section of LookML where you customize the appearance of an embedded dashboard. embed_style
and its associated parameters are supported only on embedded dashboards and are ignored if the dashboard is not embedded.
After you make changes to embed_style
, you must deploy your LookML to production in order to see your embed_style
settings reflected in the embedded LookML dashboard.
For the following embedded dashboard attributes that specify a color, the color value can be a hex string like #2ca6cd
or a CSS named color string like mediumblue
.
Embedded dashboard customizations have the following form:
background_color
Sets the color of the background of an embedded dashboard.
show_title
Specifies whether the embedded dashboard title is visible to users.
title_color
Sets the color of the title of an embedded dashboard.
show_filters_bar
Specifies whether the embedded dashboard filters are visible to users.
This parameter affects only the cosmetic appearance of the dashboard, not a user’s ability to access data. Hiding the filters bar does NOT prevent users from changing filters by other means. For information on how to set up secure data access control policies, see the Access control and permission management documentation page.
tile_background_color
Sets the color of the background of all tiles on an embedded dashboard.
tile_text_color
Sets the color of text on all tiles on an embedded dashboard.
elements
This section refers to the
elements
parameter that is part of adashboard
.
elements
can also be used as part of a dashboard row, described on theelements
for rows section on this page.
The elements
parameter starts the section of LookML where you define the elements that will make up a dashboard. There are many, many parameters that can define the appearance of a dashboard element. They are described in more detail on the Visualization LookML page.
Think about the number and complexity of elements that you add to a LookML dashboard. More elements require more browser resources, which increases dashboard rendering time. Similarly, elements that render large amounts of data may impact dashboard performance. If rendering becomes an issue, consider simplifying elements or creating multiple dashboards with fewer elements.