# Migrating Looker Dashboards to Holistics > A practical guide on how to migrate your Looker Dashboard to Holistics Dashboard ## High-level Overview ### Looker Dashboard Types vs Holistics Dashboard Looker has two types of dashboards: - **LookML Dashboard**: Version-controlled dashboards defined in code, managed by LookML developers - **User-defined Dashboard**: UI-based dashboards created via drag-and-drop in Personal or Shared folders Holistics takes a unified approach with a single dashboard type that supports both UI and code editing modes. This eliminates the need to convert between different dashboard types - users can build visually and the code is automatically generated. ### Component Mapping | Looker Component | Holistics Equivalent | Notes | |-----------------|---------------------|--------| | Query Tile | Visualization Block | Created from explores/datasets | | Look-linked Tile | N/A | Holistics doesn't have standalone reports | | Text Tile | Text Block | For adding text, markdown content | | Extension Tile | N/A | For custom extensions | | Dashboard Filters | Filter Block | For filtering dashboard data | ### Dashboard Settings Comparison | Feature | Looker | Holistics | Notes | |---------|---------|-----------|--------| | Timezone Adjustment | ✅ | ✅ | Both platforms support | | Run on Load | ✅ | ✅ | Load data automatically on dashboard open | | Full-screen Mode | ✅ | ✅ | Expand visualizations to full screen | | Auto-refresh | ✅ | Coming soon | Automatic data refresh intervals | | Default Filter View | ✅ | N/A | Holistics uses inline filters | | Filter Panel Location | Fixed positions | Flexible | Place filters anywhere in layout | ### Visualization Type Mapping When migrating from Looker to Holistics, you'll need to map your existing visualizations to their Holistics equivalents. This table provides a comprehensive mapping between Looker visualization types and their Holistics counterparts: | Looker Visualization | Holistics Equivalent | Notes | |----------------------|----------------------|-------| | [Column Chart](https://cloud.google.com/looker/docs/column-options) | [Column Chart](/docs/charts/column-chart) | Standard vertical bar visualization for category comparison | | [Bar Chart](https://cloud.google.com/looker/docs/bar-options) | [Bar Chart](/docs/charts/bar-chart) | Horizontal bar visualization for category comparison | | [Line Chart](https://cloud.google.com/looker/docs/line-options) | [Line Chart](/docs/charts/line-chart) | Ideal for time series and trend analysis | | [Area Chart](https://cloud.google.com/looker/docs/area-options) | [Area Chart](/docs/charts/area-chart) | Shows volume and cumulative values over time | | [Pie Chart](https://cloud.google.com/looker/docs/pie-options) | [Pie/Donut Chart](/docs/charts/pie-chart-donut-chart) | Visualizes part-to-whole relationships | | [Scatter Plot](https://cloud.google.com/looker/docs/scatter-options) | [Scatter Chart](/docs/charts/scatter-chart) | Shows correlation between two numeric variables | | [Table](https://cloud.google.com/looker/docs/table-options) | [Table](/docs/charts/table) | Tabular data presentation with formatting options | | [Single Value](https://cloud.google.com/looker/docs/single-value-options) | [KPI Metric](/docs/charts/metric-kpi) | Displays a single metric with optional comparison | | [Box Plot](https://cloud.google.com/looker/docs/boxplot-options) | ❌ Not natively supported yet | Available through Holistics [Custom Chart](/docs/charts/custom-charts) | | [Waterfall Chart](https://cloud.google.com/looker/docs/waterfall-options) | [Custom Waterfall Chart](/docs/charts/custom-charts/library/waterfall-chart) | Shows sequential contribution to a final value | | [Funnel Chart](https://cloud.google.com/looker/docs/funnel-options) | [Funnel Chart](/docs/charts/pyramid-chart-funnel-chart) | Visualizes sequential process or conversion rates | | [Word Cloud](https://cloud.google.com/looker/docs/word-cloud-options) | [Word Cloud](/docs/charts/word-cloud) | Text visualization with size indicating frequency | **Additional Holistics Visualizations** Holistics offers several visualization types that aren't available in Looker: - [Metric Sheet](/docs/charts/metric-sheets) - Compact display of multiple KPIs in a grid layout - [Pivot Table](/docs/charts/pivot-table) - Advanced table with nested rows and columns for complex data analysis - [Gauge Chart](/docs/charts/gauge-chart) - Visual representation of a metric within a defined range - [Bubble Chart](/docs/charts/bubble-chart) - Enhanced scatter plot with third dimension shown by bubble size - [Radar Chart](/docs/charts/radar-chart) - Multi-variable data visualization on axes starting from the same point When migrating dashboards, you'll typically map most Looker visualizations directly to their Holistics equivalents, while potentially enhancing your dashboards with these additional visualization types. ## Step-by-Step Migration Tutorial ### Step 1: Preparation 1. Open your source Looker dashboard 2. Create a new dashboard in Holistics 3. List all components to migrate: - Visualization tiles - Text content - Filters - Dashboard settings ### Step 2: Migrate Visualizations 1. For each query tile: ```tsx Dashboard your_dashboard { title: 'Dashboard Title' //highlight-start block block_name: VizBlock { label: 'Visualization Label' viz: ChartType { // ChartType can be BarChart, DataTable, LineChart, PieChart, ScatterPlot, Table, etc. dataset: dataset_name // other visualization settings } } //highlight-end } ``` 2. For each text tile: ```tsx Dashboard your_dashboard { title: 'Dashboard Title' //highlight-start block t5: TextBlock { content: @md Your markdown content here;; } //highlight-end } ``` ### Step 3: Set Up Filters ```tsx Dashboard your_dashboard { title: 'Dashboard Title' block block_name: VizBlock { } //highlight-start block block_name: FilterBlock { label: 'Filter Label' type: 'field' source: FieldFilterSource { dataset: dataset_name field: r(model_name.field_name) } default { operator: 'is' value: [] } } //highlight-end } ``` ### Step 4: Configure Dashboard Settings ```tsx Dashboard your_dashboard { title: "Your Dashboard Title" description: "Dashboard description" //highlight-start settings { timezone: 'America/Los_Angeles' autorun_on_open: false cache_duration: 10 } //highlight-end } ``` ### Step 5: Test and Validate 1. Compare visualization outputs 2. Verify filter functionality 3. Test dashboard loading performance 4. Check mobile responsiveness 5. Validate user permissions ## Common Migration Patterns This section demonstrates how to migrate common dashboard components from Looker to Holistics. ### 1. Basic Dashboard Structure ```yml title="Looker Dashboard Structure" - dashboard: sales_overview title: "Sales Overview" description: "Sales performance metrics and trends" enable_viz_full_screen: true layout: tile | static | grid | newspaper refresh: "1 hour" auto_run: true width: 1500 # For layout: static dashboards ``` ```tsx title="Holistics Dashboard Structure" Dashboard sales_overview { title: "Sales Overview" description: "Sales performance metrics and trends" settings { autorun_on_open: true } view: CanvasLayout { width: 1560 // Dashboard width in pixels height: 1080 // Dashboard height in pixels } } ``` Note: * Holistics uses a simpler dashboard configuration model with Canvas layout by default. While Looker supports multiple layout types (`tile`, `static`, `grid`, `newspaper`), Holistics provides a flexible canvas where blocks can be freely positioned. * Features like refresh intervals are not currently supported. ### 2. Filter Configuration ```yml title="Looker Filter Configuration" - dashboard: sales_overview crossfilter_enabled: true filters: - name: order_status title: "Order Status" type: field_filter model: sales explore: orders field: orders.status default_value: "completed" allow_multiple_values: true ui_config: type: dropdown_menu display: popover ``` ```tsx title="Holistics Filter Configuration" Dashboard your_dashboard { block status_filter: FilterBlock { label: "Order Status" type: "field" source: FieldFilterSource { dataset: orders field: r(orders.status) } settings { input_type: 'multiple' } default { operator: "is" value: 'completed' } } } ``` Note: * Holistics filter configuration is more streamlined and has cross-filtering ability by default. * But currently doesn't support advanced UI configurations available in Looker. ### 3. Visualization Elements (Cartesian Chart) ```yaml title="Looker Visualization Elements (Cartesian Chart)" - dashboard: sales_overview tile_size: 100 elements: - name: monthly_sales title: "Monthly Sales" type: looker_column # Looker Column Chart height: 4 # sets an element to be 400 pixels in height (when tile_size is 100) width: 5 # sets an element to be 500 pixels in width (when tile_size is 100) top: 7 # position the element 700 pixels from the top of the dashboard left: 8 # position the element 800 pixels from the left of the dashboard ## QUERY PARAMETERS model: sales explore: orders fields: [orders.created_month, orders.total_revenue] fill_fields: [orders.created_month] sorts: [orders.created_month desc] limit: 500 ``` ```tsx title="Holistics Visualization Elements (Cartesian Chart)" Dashboard your_dashboard { block block_name: FilterBlock { } //highlight-start block monthly_sales: VizBlock { label: "Monthly Sales" viz: ColumnChart { dataset: orders x_axis { field: VizFieldFull { ref: r(orders.created_month) transformation: 'datetrunc month' } } y_axis { series { field: VizFieldFull { ref: r(orders.total_revenue) } } } settings { row_limit: 500 sort { field_index: 0 direction: 'desc' } } } } //highlight-end view: CanvasLayout { block monthly_sales { position: pos(800, 700, 500, 400) // position the element 800 pixels from the left of the dashboard, 700 pixels from the top, 500 pixels wide, and 400 pixels tall } } } ``` Note: While both platforms support similar visualization capabilities, Holistics uses a more structured approach to defining chart components`. ### 4. Visualization Elements (Data Table) ```yaml title="Looker Visualization Elements (Data Table)" - dashboard: sales_overview tile_size: 100 elements: - name: monthly_sales title: "Monthly Sales" type: looker_grid # Looker Data Table height: 4 # sets an element to be 400 pixels in height (when tile_size is 100) width: 5 # sets an element to be 500 pixels in width (when tile_size is 100) top: 7 # position the element 700 pixels from the top of the dashboard left: 8 # position the element 800 pixels from the left of the dashboard ## QUERY PARAMETERS model: ecommerce explore: orders fields: [products.name, orders.total_orders_count, orders.gmv, orders.aov] ``` ```tsx title="Holistics Visualization Elements (Data Table)" Dashboard your_dashboard { block block_name: FilterBlock { } //highlight-start block product_performance: VizBlock { label: 'Product Performance' viz: DataTable { dataset: demo_ecommerce fields: [ VizFieldFull { ref: r(products.name) format { } // Viz Field Format Configuration }, VizFieldFull { label: 'Total Orders' ref: r(orders.total_orders_count) format { } // Viz Field Format Configuration }, VizFieldFull { label: 'GMV' ref: r(orders.gmv) format { } // Viz Field Format Configuration }, VizFieldFull { label: 'AOV' ref: r(orders.aov) format { } // Viz Field Format Configuration } ] settings { } // Viz Settings Configuration } } //highlight-end view: CanvasLayout { block product_performance { position: pos(800, 700, 500, 400) // position the element 800 pixels from the left of the dashboard, 700 pixels from the top, 500 pixels wide, and 400 pixels tall } } } ``` ### 5. Visualization Elements (Pivot Table) ```yaml title="Looker Visualization Elements (Pivot Table)" - dashboard: sales_overview tile_size: 100 elements: - name: order_by_country_and_status title: "Total Orders by Countries & Order Status" type: looker_grid # Looker Data Table height: 4 # sets an element to be 400 pixels in height (when tile_size is 100) width: 5 # sets an element to be 500 pixels in width (when tile_size is 100) top: 7 # position the element 700 pixels from the top of the dashboard left: 8 # position the element 800 pixels from the left of the dashboard ## QUERY PARAMETERS model: ecommerce explore: orders fields: [countries.name, orders.status, orders.total_orders_count] pivots: [orders.status] ``` ```tsx title="Holistics Visualization Elements (Pivot Table)" Dashboard your_dashboard { block block_name: FilterBlock { } //highlight-start block order_by_country_and_status: VizBlock { label: 'Total Orders by Countries & Order Status' viz: PivotTable { dataset: demo_ecommerce rows: [ VizFieldFull { ref: r(countries.name) format { } // Viz Field Format Configuration } ] columns: [ VizFieldFull { ref: r(orders.status) format { } // Viz Field Format Configuration } ] values: [ VizFieldFull { ref: r(orders.total_orders_count) format { } // Viz Field Format Configuration } ] settings { } // Viz Settings Configuration } } //highlight-end view: CanvasLayout { block order_by_country_and_status { position: pos(800, 700, 500, 400) // position the element 800 pixels from the left of the dashboard, 700 pixels from the top, 500 pixels wide, and 400 pixels tall } } } ``` Note: Looker doesn't support pivot type explicitly, but it can be achieved by using `looker_grid` type with `pivots` parameters. ### 6. Text and Markdown Content ```yml title="Looker Text Elements" - dashboard: sales_overview layout: tile tile_size: 100 elements: - name: dashboard_intro type: text height: 4 # sets an element to be 400 pixels in height (when tile_size is 100) width: 5 # sets an element to be 500 pixels in width (when tile_size is 100) top: 7 # position the element 700 pixels from the top of the dashboard left: 8 # position the element 800 pixels from the left of the dashboard ## TEXT PARAMETERS title_text: "Welcome" subtitle_text: "Overview" body_text: " This dashboard shows: • Daily revenue trends • Order status breakdown " ``` ```tsx title="Holistics Text Elements" Dashboard your_dashboard { block block_name: FilterBlock { } block block_name: VizBlock { } //highlight-start block dashboard_intro: TextBlock { content: @md # Welcome ## Overview This dashboard shows: * Daily revenue trends * Order status breakdown ;; } //highlight-end view: CanvasLayout { block dashboard_intro { position: pos(800, 700, 500, 400) // position the element 800 pixels from the left of the dashboard, 700 pixels from the top, 500 pixels wide, and 400 pixels tall } } } ``` Note: Holistics uses Markdown syntax for text formatting, providing a more familiar editing experience for developers. ## Detailed Feature Comparison | LookML Parameter | Purpose | Support | Holistics Equivalent & Implementation | |-----------------|---------|----------------------|-----------------------------------| | **Dashboard Parameters** | | | | | dashboard | Create a dashboard. | ✅ | Using Holistics Dashboard syntax `Dashboard your_dashboard { }` | | title (for dashboard) | Change the way a dashboard name appears to users. | ✅ | Using `title: 'Dashboard Title'` | | description (for dashboard) | Add a description to a dashboard. | ✅ | Using `description: 'Dashboard description'` | | enable_viz_full_screen | Define whether dashboard viewers can see dashboard tiles in full-screen and expanded views. | ❌ | Users can see full-screen VizBlock by default and admins/analysts cannot control this | | extends | Base the LookML dashboard on another LookML dashboard. | ✅ | Using Holistics [AML Extend](/reference/aml/extend) | | extension | Require that the dashboard is extended by another dashboard. | ✔️ (partial) | No direct equivalent, but can create [AML Func](/reference/aml/func) for a Dashboard| | layout | Start a section of LookML to define the elements that should go into each row of a layout: grid dashboard. | ❌ | Not supported yet, but default, our dashboard will be layout as canvas. | | elements (for rows) | Define the elements that should go into a row of a `layout: grid` dashboard. | ❌ | Holistics doesn't support grid layout. | | height (for rows) | Define the height of a row for a `layout: grid` dashboard. | ❌ | Holistics doesn't support grid layout. | | tile_size | Define the size of a tile for a `layout: tile` dashboard. | ❌ | Not supported yet. | | width (for dashboard) | Define the width of the dashboard for a `layout: static` dashboard. | ✅| Can change both width and height of a Dashboard via view: `CanvasLayout { width: 1560 height: 1080 }` | | refresh (for dashboard) | Set the interval on which dashboard elements will automatically refresh. 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. | ❌ | Not suppported yet. | | auto_run | Determine whether dashboards run automatically when initially opened or reloaded. | ✅ | By default, the dashboard runs automatically. You can disable this by using `settings { autorun_on_open: false }` | | **Filter Parameters** | | | | | crossfilter_enabled | Enable or disable cross-filtering for a dashboard. | ✅ | Holistics support [cross-filtering](/docs/cross-filtering) by default | | filters_bar_collapsed | Set the dashboard filter bar as default collapsed or expanded for a dashboard. | ❌ | Holistics doesn't have dedicated filter bar as filters can place anywhere in the dashboard | | filters_location_top | Set the dashboard filter bar location as top or right for a dashboard. | ✅ | Users can position filters anywhere in the dashboard | | filters (for dashboard) | Start a section of LookML to define dashboard filters. | ✅ | Using `block block_name: FilterBlock { }` | | name (for filters) | Create a filter. | ✅ | Using `block block_name: FilterBlock { }` | | title (for filters) | Change the way a filter name appears to users. | ✅ | Using `label: 'Filter Label'` | | type (for filters) | Determine the type of filter to be used. | ✅ | Using `type: 'field'` | | default_value | Set a default value for a filter, if desired. | ✅ | Using `default { operator: 'is', value: ['value1', 'value2'] }` | | allow_multiple_values | Limit users to a single filter value. | ✅ | Using `settings { input_type: 'single' }` | | required | Require that a filter is selected. | ❌ | Not supported yet. | | ui_config | Configure the filter controls that are available when users view a LookML dashboard. Has subparameters type, display, and options. | ❌ | Not supported yet. | | model (for filters) | Specify the model that contains the underlying field of a `type: field_filter` filter. | ✅ | No equivalent in Holistics | | explore (for filters) | Specify the Explore that contains the underlying field of a `type: field_filter` filter. | ✅ | Using `dataset: dataset_name` | | field | Specify the underlying field of a `type: field_filter` filter. | ✅ | Using `field: r(model_name.field_name)` | | 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`. | ✅ | Holistics [Parrent-child filter](/docs/filters/parent-child) | | **Common Chart Parameters** | | | | | name (for elements) | Creates a new dashboard element and assigns it a name. | ✅ | Using `block block_name: VizBlock { }` | | title (for elements) | Changes how an element's name will appear to users. | ✅ | Using `label: 'Element Label'` | | type (for elements) | Determines the type of visualization to be used in the element. | ✅ | Using `viz: ChartType { }` | | height (for elements) | Defines the height of an element in units of tile_size. | ✅ | specify height in `position: pos(left, top, width, height)` inside `view: CanvasLayout { }` | | width (for elements) | Defines the width of an element in units of tile_size. | ✅ | specify width in `position: pos(left, top, width, height)` inside `view: CanvasLayout { }` | | top | Defines the top-to-bottom position of an element in units of tile_size. | ✅ | specify top in `position: pos(left, top, width, height)` inside `view: CanvasLayout { }` | | left | Defines the left-to-right position of an element in units of tile_size. | ✅ | specify left in `position: pos(left, top, width, height)` inside `view: CanvasLayout { }` | | row | Defines the top-to-bottom position of an element in units of rows for `layout: newspaper` dashboards | ❌ | Holistics doesn't support newspaper layout yet | | col | Defines the left-to-right position of an element in units of columns for `layout: newspaper` dashboards | ❌ | Holist ics doesn't support newspaper layout yet | | refresh (for elements) | Sets the interval at which the element will automatically refresh. | ❌ | Not supported yet | | note | Starts a section of LookML to define a note for an element. | ✅ | Using `description: 'your block description or note'` | | **Query Parameters** | | | | | model | Defines the model to be used for the element's query. | ✅ | Using `dataset: dataset_name` | | explore (for elements) | Defines the Explore to be used for the element's query. | ✅ | Using `dataset: dataset_name` | | dimensions | Defines the dimensions to be used for the element's query. | ✅ | Use - `x_axis` with LineChart, BarChart of ColumnChart - `fields: []` with DataTable - `rows: []` with Pivot Table | | measures | Defines the measures to be used for the element's query. | ✅ | Use - `y_axis` with LineChart, BarChart of ColumnChart - `fields: []` with DataTable - `values: []` with Pivot Table | | sorts | Defines the sorts to be used for the element's query. | ✅ | Using `sort { field_index: 0, direction: 'desc' }` | | pivots | Defines the dimensions that should be pivoted for the element's query. | ✅ | Using - `legend:` with Cartesian Charts - `columns: []` with Pivot Table | | limit | Defines the row limit to be used for the element's query. | ✅ | Using `settings { row_limit: 10000 }` | | column_limit | Defines the column limit to be used for the element's query. | ❌ | Not supported yet | | filters (for elements) | Defines the filters that cannot be changed for the element's query. | ✅ | Use filter { } | | listen | Defines the filters that can be changed for the element's query. | ✅ | Support via `interactions: [ FilterInteraction {} ]` | | query_timezone | Defines the time zone that should be used when the query is run. | ❌ | Follow Dashboard Timezone | | merged_queries | Defines a merged results query. | ❌ | Not supported yet | | hidden_fields | Specifies any fields to use in the query but hide in the chart. | ✅ | Use `hidden: true` inside `VizFieldFull {}` | | **Plot Parameters for Cartesian Charts** | | | | | stacking | Specifies how series are stacked in the visualization. | ✅ | Using - `settings { stack_series_by: 'value' }` - `settings { stack_series_by: 'percentage' }` | | show_dropoff | Shows a dropoff marker for column charts. | ❌ | Not supported yet | | ordering | Specifies how bars or columns are ordered within groups. | ✅ | Use `sort {}` inside setting of a VizBlock | | column_spacing_ratio | Sets the spacing between columns. | ❌ | Not supported yet | | column_group_spacing_ratio | Sets the spacing between column groups. | ❌ | Not supported yet | | hide_legend | Hides the chart legend. | | | | legend_position | Specifies the position of the legend. | | | | limit_displayed_rows | Shows or hides rows in a visualization based on position. | | | | swap_axes | Swaps the x and y axes. | | | | interpolation | Specifies how points are connected in line and area charts. | | | | show_null_points | Shows null values in the visualization. | | | | discontinuous_nulls | Breaks the line or area at null values. | | | | cluster_points | Groups points that are close together in scatter charts. | | | | **Plot Parameters for Pie and Donut Charts** | | | | | value_labels | Changes how individual sections of a pie chart are labeled. | | | | label_type | Customizes the format of labels that mark sections of a pie chart. | | | | inner_radius | Determines the inner radius of a pie chart (donut chart). | | | | charts_across | Specifies the number of donut charts per row. | | | | **Plot Parameters for Progression Charts** | | | | | smoothedBars | Connects the outer edge of each bar in funnel charts. | | | | isStepped | Displays the funnel chart in stepped funnel style. | | | | orientation | Specifies whether data is drawn from rows or columns. | | | | labelScale | Specifies the size of labels on chart bars and sides. | | | | **Value Parameters** | | | | | show_value_labels | Shows labels next to data points. | | | | show_null_labels | Shows labels for null values. | | | | label_color | Specifies the color for value labels. | | | | font_size | Sets the font size of value labels. | | | | label_rotation | Sets the rotation of value labels. | | | | label_value_format | Specifies the number format for value labels. | | | | show_totals_labels | Shows total values for stacked visualizations. | | | | hidden_series | Hides specific series from the visualization. | | | | show_silhouette | Shows a silhouette of the entire chart. | | | | totals_color | Specifies the color for total labels. | | | | **Series Parameters** | | | | | colors | Sets the colors of chart series based on order. | | | | series_colors | Sets the colors of chart series based on series name. | | | | series_labels | Changes the way a series name appears to users. | | | | series_types | Assigns different chart types to individual series. | | | | show_view_names | Shows view names in chart labels. | | | | point_style | Specifies the style of points in line and scatter charts. | | | | series_point_styles | Sets point styles for specific series. | | | | size_by_field | Specifies a field to determine point size in scatter charts. | | | | plot_size_by_field | Enables sizing points by a field value. | | | | **X-Axis Parameters** | | | | | x_axis_scale | Specifies the scale type for the x-axis. | | | | x_axis_reversed | Reverses the direction of the x-axis. | | | | show_x_axis_label | Shows a label on the x-axis. | | | | x_axis_label | Specifies a label for the x-axis. | | | | show_x_axis_ticks | Shows value labels on the x-axis. | | | | x_axis_gridlines | Shows gridlines from the x-axis. | | | | x_axis_label_rotation | Sets the rotation of x-axis labels. | | | | x_axis_datetime_label | Specifies a format for datetime x-axis labels. | | | | x_axis_zoom | Enables zooming on the x-axis. | | | | **Y-Axis Parameters** | | | | | y_axis_gridlines | Shows gridlines from the y-axis. | | | | y_axis_reversed | Reverses the direction of the y-axis. | | | | reference_lines | Adds reference lines or regions to the chart. | | | | y_axis_zoom | Enables zooming on the y-axis. | | | | leftAxisLabelVisible | Shows a label on the left axis. | | | | leftAxisLabel | Specifies a label for the left axis. | | | | rightAxisLabelVisible | Shows a label on the right axis. | | | | rightAxisLabel | Specifies a label for the right axis. | | | | **Text Tile Parameters** | | | | | title_text | Specifies a title for a text element. | | | | subtitle_text | Specifies a subtitle for a text element. | | | | body_text | Specifies body text for a text element. | | | | **Single Value Parameters** | | | | | custom_color_enabled | Enables custom color for single value visualization. | | | | custom_color | Specifies a custom color for text in single value visualization. | | | | show_single_value_title | Shows a title with the query's value. | | | | single_value_title | Specifies a title to display with the query's value. | | | | valueFormat | Specifies the number format for the value. | | | | show_comparison | Adds comparison information to a single value element. | | | | comparison_type | Specifies how the comparison field is used. | | | | show_comparison_label | Shows a label with the comparison field. | | | | comparison_label | Specifies the label for the comparison field. | | | | comparison_reverse_colors | Reverses colors for negative/positive comparisons. | | | | **Quadrant Parameters for Scatter Charts** | | | | | quadrants_enabled | Enables quadrant divisions in scatter charts. | | | | quadrant_properties | Configures properties for each quadrant. | | | | custom_quadrant_point_x | Sets the x-coordinate for quadrant division. | | | | custom_quadrant_point_y | Sets the y-coordinate for quadrant division. | | | | custom_quadrant_value_x | Sets the x-value for quadrant division. | | | | custom_quadrant_value_y | Sets the y-value for quadrant division. | | |