> For the complete documentation index, see [llms.txt](https://docs.appfarm.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.appfarm.io/how-to/user-interface/understand-charts.md).

# Understand charts

Let's take a look at the most important [chart component](/library/ui-components.md#basic-charts) properties.

Each chart is bound to a single data source from which it extracts data. There is one exception: the [Advanced combined chart](/library/ui-components/advanced-combined-chart.md).&#x20;

Most charts are based on three properties: **Category Property**, **Value Property,** and **Dataset Property**. Some advanced charts use **X Value** and **Y Value** instead of the category and value properties.

**Category Property** corresponds to the x-axis, and **Value Property** to the y-axis of a chart. As indicated by the names, the category holds the categories or groups, whereas the value contains the values for each category or group.

For example, if you were to specify only **Category Property**, the count of entries for each category or group would be displayed. By setting a **Value Property**, the value of each **Category Property** group is displayed.

You can set an **Aggregation Function**, such as `Sum` or `Average`, in order to calculate and display the values in a meaningful way per category. If no function is selected, the count of entries for each category will be displayed.

The data is treated as a single dataset when using a **Category Property** and **Value Property**. A dataset is a collection of data that consists of two columns (category and value) and many rows. In a line chart, this would be represented as a single line. By selecting a **Dataset Property**, an extra dimension is added, and the dataset is segmented into multiple datasets. In a line chart, this would be represented as multiple lines.

To improve readability when a dataset is segmented into multiple datasets, you can select **Stack Datasets** to create some separation between the lines and make the data easier to interpret.

{% tabs %}
{% tab title="Chart average temperatures in different cities per month" %}
You have an object class called `Climate` with three properties `Month`, `Temperature` and `City`.&#x20;

**Single dataset**

Bind `Month` to **Category Property**, `Temperature` to **Value Property** and select `Average` for **Aggregation Function**. For each month, the average temperature of all cities will be calculated and displayed.&#x20;

**Multiple datasets**

Bind `Month` to **Category Property**, `Temperature` to **Value Property,** and `City` to **Dataset Property**. Select `Average` as **Aggregation Function**. For each city, the average temperature for each month is calculated and displayed.&#x20;
{% endtab %}
{% endtabs %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.appfarm.io/how-to/user-interface/understand-charts.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
