> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chronosphere.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Visualize histogram distribution

A *distribution* chart takes a query result and visualizes the counts of data points
bucketed by values.

## Distribution chart queries

Distribution charts use one or more PromQL
[queries](/observe/dashboards/panels#change-a-panels-query) to retrieve data to
visualize.

Use the following **Options** to modify your query:

* **Truncation strategy**: Truncation strategy to apply to the query. This modifies
  the raw query. Observability Platform selects the best strategy for fit when
  possible, and displays `Auto` as the selected strategy.

  Available strategies are:

  * `Auto`
  * `Off`
  * `Avg`
  * `Min`
  * `Max`

  Changing your truncation strategy adds truncation information as additional bands
  or bars on your chart and details into the legend.

## Configure a distribution chart

You can configure a distribution chart by
[modifying its <Icon icon="settings" /> **Settings**](/observe/dashboards/panels#edit-a-panel).

Any changes you make in the panel's **Settings** tab are immediately displayed in the
**Preview** pane, but take effect only when you both click **Apply** in the **Edit panel**
interface and then click **Save**.

Observability Platform doesn't fully support directly editing a panel's JSON
representation, and recommends configuring panels in the user interface. Use the JSON
representation only for managing your configuration as code
with tools such as [Chronoctl](/tooling/chronoctl) and
[Terraform](/tooling/infrastructure/terraform).

### Modify a distribution chart's units and formatting

The **Unit and formatting** section in a distribution chart's **Settings** tab
defines how the chart interprets and displays the panel's query units.

* **Unit**: Defines the unit used to render the Y-axis. This has the most significant
  effect when you enable Abbreviate. Defaults to `Decimal`.
  * **Decimal**: Base 10 values. Observability Platform renders a value of
    `1000000` as `1M`.
  * **Bytes**: As decimal multiple-byte units. Observability Platform renders a
    value of `1000000` as `1MB`.
  * **Time**: Determines the [unit of time](/overview/concepts/time-units)
    that Observability Platform uses to interpret a numeric value.
  * **Percent**: Interprets the value as a percentile, representing 0% to 100% in a
    range of either 0.0 to 1.0 (**Percent (0.0-1.0)**) or 0 and 100
    (**Percent (0-100)**).

    For example, Observability Platform renders a value of `1.0` in **Percent
    (0.0-1.0)** as `100%`, and in **Percent (0-100)** as `1%`.
* **Decimals**: Defines how many decimal places Observability Platform renders for
  values.
  **Default** renders decimal places only if necessary and rounds to the nearest
  value. Numeric values from `0` to `4` render the corresponding number of decimal
  places.
* **Abbreviate**: Toggles whether to abbreviate units on the Y-axis. For example, if
  enabled, Observability Platform renders a value of `100000000` as `100M`. You can
  toggle this setting only if you set the **Unit** to `Decimal` or `Bytes`; `Time`
  units are always abbreviated and `Percent` values don't require the toggle.
  Defaults to `true`.

### Modify a distribution chart's percentile markers

The **Percentile markers** section in a distribution chart's **Settings** tab defines
how the chart displays percentiles. Select one or more checkboxes to display the
following percentiles on the graph:

* `P50`
* `P75`
* `P90`
* `P95`
* `P99`
