For AI agents: A markdown version of this page is available at https://docs.datadoghq.com/dashboards/widgets/treemap.md. A documentation index is available at /llms.txt.

Treemap Widget

The treemap widget allows you to display proportions of one or more datasets. This widget can display a single dataset with corresponding proportions, or multiple datasets with nested proportions.

A treemap widget with unique page views stemming from the Real User Monitoring (RUM) dataset are shown at both the country and browser level. The outer groups - distinguished by color - shows the user's country.

Configuration

  1. Select from the available data sources.
  2. Configure the query, see the following resources for more information:
    • Metrics: See the querying documentation to configure a metric query.
    • Events: See the log search documentation to configure a log event query.
  3. (Optional) Modify query with a formula.
  4. Customize your graph.

Customization

Context links are enabled by default, and can be toggled on or off. Context links bridge dashboard widgets with other pages (in Datadog, or third-party).

Display and interaction

Filter and focus

In the case where multiple groups of data are plotted at once, you can filter the widget to a single category and view proportions within it.

To filter and focus on a single category, hover over the outer portion of the category, and click. To go back to the previous view, click the back button on the top left header of the widget.

Accessing the context menu

To access the context menu, first hover over an individual category: this can be a nested category, or group - such as Canada, or Canada > Edge in the following example. This reveals a dropdown button in the top right corner. When clicked, the context menu appears.

The dropdown arrow button is revealed when hovering over a category

Full-screen

Viewing the treemap widget in full-screen reveals the standard set of full-screen options.

Pie chart widget

Like the treemap widget, the pie chart widget can also be used to display nested proportions. The primary difference between the two is that the pie chart displays proportions in radial slices, and the treemap displays nested rectangles.

API

This widget can be used with the Dashboards API. See the following table for the widget JSON schema definition:

Expand All

Field

Type

Description

color_by

enum

DEPRECATED: (deprecated) The attribute formerly used to determine color in the widget. Allowed enum values: user

default: user

custom_links

[object]

List of custom links.

is_hidden

boolean

The flag for toggling context menu link visibility.

label

string

The label for the custom link URL. Keep the label short and descriptive. Use metrics and tags as variables.

link

string

The URL of the custom link. URL must include http or https. A relative URL must start with /.

override_label

string

The label ID that refers to a context menu link. Can be logs, hosts, traces, profiles, processes, containers, or rum.

description

string

The description of the widget.

group_by

enum

DEPRECATED: (deprecated) The attribute formerly used to group elements in the widget. Allowed enum values: user,family,process

requests [required]

[object]

List of treemap widget requests.

formulas

[object]

List of formulas that operate on queries.

alias

string

Expression alias.

cell_display_mode

enum

Define a display mode for the table cell. Allowed enum values: number,bar,trend

cell_display_mode_options

object

Cell display mode options for the widget formula. (only if cell_display_mode is set to trend).

trend_type

enum

Trend type for the cell display mode options. Allowed enum values: area,line,bars

y_scale

enum

Y scale for the cell display mode options. Allowed enum values: shared,independent

conditional_formats

[object]

List of conditional formats.

comparator [required]

enum

Comparator to apply. Allowed enum values: =,>,>=,<,<=

custom_bg_color

string

Color palette to apply to the background, same values available as palette.

custom_fg_color

string

Color palette to apply to the foreground, same values available as palette.

hide_value

boolean

True hides values.

image_url

string

Displays an image as the background.

metric

string

Metric from the request to correlate this conditional format with.

palette [required]

enum

Color palette to apply. Allowed enum values: blue,custom_bg,custom_image,custom_text,gray_on_white,grey,green,orange,red,red_on_white

Show 9 more,white_on_gray,white_on_green,green_on_white,white_on_red,white_on_yellow,yellow_on_white,black_on_light_yellow,black_on_light_green,black_on_light_red

timeframe

string

Defines the displayed timeframe.

value [required]

double

Value for the comparator.

formula [required]

string

String expression built from queries, formulas, and functions.

limit

object

Options for limiting results returned.

count

int64

Number of results to return.

order

enum

Direction of sort. Allowed enum values: asc,desc

default: desc

number_format

object

Number format options for the widget.

unit

 <oneOf>

Number format unit.

Option 1

object

Canonical unit.

per_unit_name

string

The name of the unit per item.

type

enum

The type of unit scale. Allowed enum values: canonical_unit

unit_name

string

The name of the unit.

Option 2

object

Custom unit.

label

string

The label for the custom unit.

type

enum

The type of custom unit. Allowed enum values: custom_unit_label

unit_scale

object

The definition of NumberFormatUnitScale object.

type

enum

The type of unit scale. Allowed enum values: canonical_unit

unit_name

string

The name of the unit.

style

object

Styling options for widget formulas.

palette

string

The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors

palette_index

int64

Index specifying which color to use within the palette.

q

string

DEPRECATED: The widget metrics query. Deprecated - Use queries and formulas instead.

queries

[ <oneOf>]

List of queries that can be returned directly or used in formulas.

Option 1

object

A formula and functions metrics query.

aggregator

enum

The aggregation methods available for metrics queries. Allowed enum values: avg,min,max,sum,last,area,l2norm,percentile

cross_org_uuids

[string]

The source organization UUID for cross organization queries. Feature in Private Beta.

data_source [required]

enum

Data source for metrics queries. Allowed enum values: metrics

name [required]

string

Name of the query for use in formulas.

query [required]

string

Metrics query definition.

semantic_mode

enum

Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Allowed enum values: combined,native

Option 2

object

A formula and functions events query.

compute [required]

object

Compute options.

aggregation [required]

enum

Aggregation methods for event platform queries. Allowed enum values: count,cardinality,median,pc75,pc90,pc95,pc98,pc99,sum,min

Show 2 more,max,avg

interval

int64

A time interval in milliseconds.

metric

string

Measurable attribute to compute.

cross_org_uuids

[string]

The source organization UUID for cross organization queries. Feature in Private Beta.

data_source [required]

enum

Data source for event platform-based queries. Allowed enum values: logs,spans,network,rum,security_signals,profiles,audit,events,ci_tests,ci_pipelines

Show 3 more,incident_analytics,product_analytics,on_call_events

group_by

 <oneOf>

Group by configuration for a formula and functions events query. Accepts either a list of facet objects or a flat object that specifies a list of facet fields.

Option 1

[object]

List of objects used to group by.

facet [required]

string

Event facet.

limit

int64

Number of groups to return.

sort

object

Options for sorting group by results.

aggregation [required]

enum

Aggregation methods for event platform queries. Allowed enum values: count,cardinality,median,pc75,pc90,pc95,pc98,pc99,sum,min

Show 2 more,max,avg

metric

string

Metric used for sorting group by results.

order

enum

Direction of sort. Allowed enum values: asc,desc

default: desc

Option 2

object

Flat group by configuration using multiple event facet fields.

fields [required]

[string]

List of event facets to group by.

limit

int64

Number of groups to return.

sort

object

Options for sorting group by results.

aggregation [required]

enum

Aggregation methods for event platform queries. Allowed enum values: count,cardinality,median,pc75,pc90,pc95,pc98,pc99,sum,min

Show 2 more,max,avg

metric

string

Metric used for sorting group by results.

order

enum

Direction of sort. Allowed enum values: asc,desc

default: desc

indexes

[string]

An array of index names to query in the stream. Omit or use [] to query all indexes at once.

name [required]

string

Name of the query for use in formulas.

search

object

Search options.

query [required]

string

Events search string.

storage

string

Option for storage location. Feature in Private Beta.

Option 3

object

Process query using formulas and functions.

aggregator

enum

The aggregation methods available for metrics queries. Allowed enum values: avg,min,max,sum,last,area,l2norm,percentile

cross_org_uuids

[string]

The source organization UUID for cross organization queries. Feature in Private Beta.

data_source [required]

enum

Data sources that rely on the process backend. Allowed enum values: process,container

is_normalized_cpu

boolean

Whether to normalize the CPU percentages.

limit

int64

Number of hits to return.

metric [required]

string

Process metric name.

name [required]

string

Name of query for use in formulas.

sort

enum

Direction of sort. Allowed enum values: asc,desc

default: desc

tag_filters

[string]

An array of tags to filter by.

text_filter

string

Text to use as filter.

Option 4

object

A formula and functions APM dependency stats query.

cross_org_uuids

[string]

The source organization UUID for cross organization queries. Feature in Private Beta.

data_source [required]

enum

Data source for APM dependency stats queries. Allowed enum values: apm_dependency_stats

env [required]

string

APM environment.

is_upstream

boolean

Determines whether stats for upstream or downstream dependencies should be queried.

name [required]

string

Name of query to use in formulas.

operation_name [required]

string

Name of operation on service.

primary_tag_name

string

The name of the second primary tag used within APM; required when primary_tag_value is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog.

primary_tag_value

string

Filter APM data by the second primary tag. primary_tag_name must also be specified.

resource_name [required]

string

APM resource.

service [required]

string

APM service.

stat [required]

enum

APM statistic. Allowed enum values: avg_duration,avg_root_duration,avg_spans_per_trace,error_rate,pct_exec_time,pct_of_traces,total_traces_count

Option 5

object

APM resource stats query using formulas and functions.

cross_org_uuids

[string]

The source organization UUID for cross organization queries. Feature in Private Beta.

data_source [required]

enum

Data source for APM resource stats queries. Allowed enum values: apm_resource_stats

env [required]

string

APM environment.

group_by

[string]

Array of fields to group results by.

name [required]

string

Name of this query to use in formulas.

operation_name

string

Name of operation on service.

primary_tag_name

string

Name of the second primary tag used within APM. Required when primary_tag_value is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog

primary_tag_value

string

Value of the second primary tag by which to filter APM data. primary_tag_name must also be specified.

resource_name

string

APM resource name.

service [required]

string

APM service name.

stat [required]

enum

APM resource stat name. Allowed enum values: errors,error_rate,hits,latency_avg,latency_distribution,latency_max,latency_p50,latency_p75,latency_p90,latency_p95

Show 1 more,latency_p99

Option 6

object

A formula and functions APM metrics query.

data_source [required]

enum

Data source for APM metrics queries. Allowed enum values: apm_metrics

group_by

[string]

Optional fields to group the query results by.

name [required]

string

Name of this query to use in formulas.

operation_mode

string

Optional operation mode to aggregate across operation names.

operation_name

string

Name of operation on service. If not provided, the primary operation name is used.

peer_tags

[string]

Tags to query for a specific downstream entity (peer.service, peer.db_instance, peer.s3, peer.s3.bucket, etc.).

query_filter

string

Additional filters for the query using metrics query syntax (e.g., env, primary_tag).

resource_hash

string

The hash of a specific resource to filter by.

resource_name

string

The full name of a specific resource to filter by.

service

string

APM service name.

span_kind

enum

Describes the relationship between the span, its parents, and its children in a trace. Allowed enum values: consumer,server,client,producer,internal

stat [required]

enum

APM metric stat name. Allowed enum values: errors,error_rate,errors_per_second,latency_avg,latency_max,latency_p50,latency_p75,latency_p90,latency_p95,latency_p99

Show 6 more,latency_p999,latency_distribution,hits,hits_per_second,total_time,apdex

Option 7

object

A formula and functions metrics query.

additional_query_filters

string

Additional filters applied to the SLO query.

cross_org_uuids

[string]

The source organization UUID for cross organization queries. Feature in Private Beta.

data_source [required]

enum

Data source for SLO measures queries. Allowed enum values: slo

group_mode

enum

Group mode to query measures. Allowed enum values: overall,components

measure [required]

enum

SLO measures queries. Allowed enum values: good_events,bad_events,good_minutes,bad_minutes,slo_status,error_budget_remaining,burn_rate,error_budget_burndown

name

string

Name of the query for use in formulas.

slo_id [required]

string

ID of an SLO to query measures.

slo_query_type

enum

Name of the query for use in formulas. Allowed enum values: metric,monitor,time_slice

Option 8

object

A formula and functions Cloud Cost query.

aggregator

enum

Aggregator used for the request. Allowed enum values: avg,last,max,min,sum,percentile

cross_org_uuids

[string]

The source organization UUID for cross organization queries. Feature in Private Beta.

data_source [required]

enum

Data source for Cloud Cost queries. Allowed enum values: cloud_cost

name [required]

string

Name of the query for use in formulas.

query [required]

string

Query for Cloud Cost data.

Option 9

object

A formula and functions Product Analytics Extended query for advanced analytics features.

audience_filters

object

Product Analytics/RUM audience filters.

accounts

[object]

name

string

The name of the account subquery.

query

string

The query string for the account subquery.

filter_condition

string

An optional filter condition applied to the audience subquery.

segments

[object]

name

string

The name of the segment subquery.

segment_id

string

The unique identifier of the segment.

users

[object]

name

string

The name of the user subquery.

query

string

The query string for the user subquery.

compute [required]

object

Compute configuration for Product Analytics Extended queries.

aggregation [required]

enum

Aggregation methods for event platform queries. Allowed enum values: count,cardinality,median,pc75,pc90,pc95,pc98,pc99,sum,min

Show 2 more,max,avg

interval

double

Fixed-width time bucket interval in milliseconds for time series queries. Mutually exclusive with rollup.

metric

string

Measurable attribute to compute.

name

string

Name of the compute for use in formulas.

rollup

object

Calendar-aligned time bucket for time series queries (for example, day, week, or month boundaries). Mutually exclusive with interval.

alignment

string

Alignment of the interval. Valid values depend on the interval type. For day, use hours (for example, 1am, 2pm, or 14). For week, use day names (for example, monday). For month, use day-of-month ordinals (for example, 1st, 15th). For year or quarter, use month names (for example, january).

quantity

int64

Quantity of the interval.

timezone

string

Timezone for the interval.

type [required]

enum

Type of calendar interval. Allowed enum values: day,week,month,year,quarter,minute,hour

data_source [required]

enum

Data source for Product Analytics Extended queries. Allowed enum values: product_analytics_extended

group_by

[object]

Group by configuration.

facet [required]

string

Facet name to group by.

limit

int32

Maximum number of groups to return.

should_exclude_missing

boolean

Whether to exclude events missing the group-by facet.

sort

object

Options for sorting group by results.

aggregation [required]

enum

Aggregation methods for event platform queries. Allowed enum values: count,cardinality,median,pc75,pc90,pc95,pc98,pc99,sum,min

Show 2 more,max,avg

metric

string

Metric used for sorting group by results.

order

enum

Direction of sort. Allowed enum values: asc,desc

default: desc

indexes

[string]

Event indexes to query.

name [required]

string

Name of the query for use in formulas.

query [required]

object

Base query for Product Analytics.

data_source [required]

enum

Data source for Product Analytics event queries. Allowed enum values: product_analytics

search [required]

object

Search configuration for Product Analytics event query.

query [required]

string

RUM event search query used to filter views or actions.

Option 10

object

A formula and functions User Journey query for defining funnel, timeseries, and scalar visualizations over journey data.

compute [required]

object

Compute configuration for User Journey formula queries.

aggregation [required]

enum

Aggregation methods for event platform queries. Allowed enum values: count,cardinality,median,pc75,pc90,pc95,pc98,pc99,sum,min

Show 2 more,max,avg

interval

double

Time bucket interval in milliseconds for time series queries.

metric

enum

Metric for User Journey formula compute. __dd.conversion and __dd.conversion_rate accept count and cardinality as aggregations. __dd.time_to_convert accepts avg, median, pc75, pc95, pc98, pc99, min, and max. Allowed enum values: __dd.conversion,__dd.conversion_rate,__dd.time_to_convert

target

object

Target for user journey search.

end

string

End value.

start

string

Start value.

type [required]

string

Target type.

value

string

Target value.

data_source [required]

enum

Data source for user journey funnel queries. Allowed enum values: product_analytics_journey

group_by

[object]

Group by configuration.

facet [required]

string

Facet name to group by.

limit

int32

Maximum number of groups to return.

should_exclude_missing

boolean

Whether to exclude events missing the group-by facet.

sort

object

Options for sorting group by results.

aggregation [required]

enum

Aggregation methods for event platform queries. Allowed enum values: count,cardinality,median,pc75,pc90,pc95,pc98,pc99,sum,min

Show 2 more,max,avg

metric

string

Metric used for sorting group by results.

order

enum

Direction of sort. Allowed enum values: asc,desc

default: desc

target

object

Target for user journey search.

end

string

End value.

start

string

Start value.

type [required]

string

Target type.

value

string

Target value.

name [required]

string

Name of the query for use in formulas.

search [required]

object

User journey search configuration.

expression [required]

string

Expression string.

filters

object

Filters for user journey search.

audience_filters

object

Product Analytics/RUM audience filters.

accounts

[object]

name

string

The name of the account subquery.

query

string

The query string for the account subquery.

filter_condition

string

An optional filter condition applied to the audience subquery.

segments

[object]

name

string

The name of the segment subquery.

segment_id

string

The unique identifier of the segment.

users

[object]

name

string

The name of the user subquery.

query

string

The query string for the user subquery.

graph_filters

[object]

Graph filters.

name

string

Filter name.

operator

string

Filter operator.

target

object

Target for user journey search.

end

string

End value.

start

string

Start value.

type [required]

string

Target type.

value

string

Target value.

value

int64

Filter value.

string_filter

string

String filter.

join_keys

object

Join keys for user journey queries.

primary [required]

string

Primary join key.

secondary

[string]

Secondary join keys.

node_objects [required]

object

Node objects mapping.

<any-key>

object

Base query for Product Analytics.

data_source [required]

enum

Data source for Product Analytics event queries. Allowed enum values: product_analytics

search [required]

object

Search configuration for Product Analytics event query.

query [required]

string

RUM event search query used to filter views or actions.

step_aliases

object

Step aliases mapping.

<any-key>

string

Option 11

object

A formula and functions Retention query for defining timeseries and scalar visualizations.

compute [required]

object

Compute configuration for retention queries.

aggregation [required]

 <oneOf>

The type of aggregation that can be performed on events-based queries.

Option 1

enum

Standard aggregation types for events-based queries. Allowed enum values: avg,cardinality,count,delta,earliest,latest,max,median,min,most_frequent

Show 1 more,sum

Option 2

string

Percentile aggregation.

metric [required]

enum

Metric for retention compute. Allowed enum values: __dd.retention,__dd.retention_rate

data_source [required]

enum

Data source for retention queries. Allowed enum values: product_analytics_retention

group_by

[object]

Group by configuration.

facet [required]

string

Facet to group by.

limit

int64

Maximum number of groups.

should_exclude_missing

boolean

Whether to exclude missing values.

sort

object

Sort configuration for retention group by.

order

enum

Widget sorting methods. Allowed enum values: asc,desc

source

string

Source field.

target [required]

enum

Target for retention group by. Allowed enum values: cohort,return_period

name [required]

string

Name of the query for use in formulas.

search [required]

object

Search configuration for retention queries.

cohort_criteria [required]

object

Cohort criteria for retention queries.

base_query [required]

object

Base query for Product Analytics.

data_source [required]

enum

Data source for Product Analytics event queries. Allowed enum values: product_analytics

search [required]

object

Search configuration for Product Analytics event query.

query [required]

string

RUM event search query used to filter views or actions.

time_interval [required]

object

Time interval for cohort criteria.

type [required]

enum

Type of time interval for cohort criteria. Allowed enum values: calendar

value [required]

object

Calendar interval definition.

alignment

string

Alignment of the interval. Valid values depend on the interval type. For day, use hours (for example, 1am, 2pm, or 14). For week, use day names (for example, monday). For month, use day-of-month ordinals (for example, 1st, 15th). For year or quarter, use month names (for example, january).

quantity

int64

Quantity of the interval.

timezone

string

Timezone for the interval.

type [required]

enum

Type of calendar interval. Allowed enum values: day,week,month,year,quarter,minute,hour

filters

object

Filters for retention queries.

audience_filters

object

Product Analytics/RUM audience filters.

accounts

[object]

name

string

The name of the account subquery.

query

string

The query string for the account subquery.

filter_condition

string

An optional filter condition applied to the audience subquery.

segments

[object]

name

string

The name of the segment subquery.

segment_id

string

The unique identifier of the segment.

users

[object]

name

string

The name of the user subquery.

query

string

The query string for the user subquery.

string_filter

string

String filter.

retention_entity [required]

enum

Entity to track for retention. Allowed enum values: @usr.id,@account.id

return_condition [required]

enum

Condition for counting user return. Allowed enum values: conversion_on,conversion_on_or_after

return_criteria

object

Return criteria for retention queries.

base_query [required]

object

Base query for Product Analytics.

data_source [required]

enum

Data source for Product Analytics event queries. Allowed enum values: product_analytics

search [required]

object

Search configuration for Product Analytics event query.

query [required]

string

RUM event search query used to filter views or actions.

time_interval

object

Time interval for return criteria.

type [required]

enum

Type of time interval for return criteria. Allowed enum values: fixed

unit [required]

enum

Unit of time for retention return criteria interval. Allowed enum values: day,week,month

value [required]

double

Value of the time interval.

response_format

enum

Timeseries, scalar, or event list response. Event list response formats are supported by Geomap widgets. Allowed enum values: timeseries,scalar,event_list

size_by

enum

DEPRECATED: (deprecated) The attribute formerly used to determine size in the widget. Allowed enum values: pct_cpu,pct_mem

time

 <oneOf>

Time setting for the widget.

Option 1

object

Wrapper for live span

hide_incomplete_cost_data

boolean

Whether to hide incomplete cost data in the widget.

live_span

enum

The available timeframes depend on the widget you are using. Allowed enum values: 1m,5m,10m,15m,30m,1h,4h,1d,2d,1w

Show 7 more,1mo,3mo,6mo,week_to_date,month_to_date,1y,alert

Option 2

object

Used for arbitrary live span times, such as 17 minutes or 6 hours.

hide_incomplete_cost_data

boolean

Whether to hide incomplete cost data in the widget.

type [required]

enum

Type "live" denotes a live span in the new format. Allowed enum values: live

unit [required]

enum

Unit of the time span. Allowed enum values: minute,hour,day,week,month,year

value [required]

int64

Value of the time span.

Option 3

object

Used for fixed span times, such as 'March 1 to March 7'.

from [required]

int64

Start time in milliseconds since epoch.

hide_incomplete_cost_data

boolean

Whether to hide incomplete cost data in the widget.

to [required]

int64

End time in milliseconds since epoch.

type [required]

enum

Type "fixed" denotes a fixed span. Allowed enum values: fixed

title

string

Title of your widget.

type [required]

enum

Type of the treemap widget. Allowed enum values: treemap

default: treemap

{
  "color_by": "user",
  "custom_links": [
    {
      "is_hidden": false,
      "label": "Search logs for {{host}}",
      "link": "https://app.datadoghq.com/logs?query={{host}}",
      "override_label": "logs"
    }
  ],
  "description": "string",
  "group_by": "user",
  "requests": [
    {
      "formulas": [
        {
          "alias": "string",
          "cell_display_mode": "number",
          "cell_display_mode_options": {
            "trend_type": "area",
            "y_scale": "shared"
          },
          "conditional_formats": [
            {
              "comparator": ">",
              "custom_bg_color": "string",
              "custom_fg_color": "string",
              "hide_value": false,
              "image_url": "string",
              "metric": "string",
              "palette": "blue",
              "timeframe": "string",
              "value": 0
            }
          ],
          "formula": "func(a) + b",
          "limit": {
            "count": "integer",
            "order": "string"
          },
          "number_format": {
            "unit": {
              "per_unit_name": "bytes",
              "type": "canonical_unit",
              "unit_name": "bytes"
            },
            "unit_scale": {
              "type": "canonical_unit",
              "unit_name": "bytes"
            }
          },
          "style": {
            "palette": "classic",
            "palette_index": 1
          }
        }
      ],
      "q": "string",
      "queries": [],
      "response_format": "timeseries"
    }
  ],
  "size_by": "pct_cpu",
  "time": {
    "hide_incomplete_cost_data": false,
    "live_span": "5m"
  },
  "title": "string",
  "type": "treemap"
}

Further Reading