> For the complete documentation index, see [llms.txt](https://docs.shimoku.com/dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.shimoku.com/dev/elements/charts/bar-charts/stacked-bar.md).

# Stacked Bar

A **stacked bar chart** shows the composition of each category in a stacked bar, with each segment representing a sub-category.

## The Method To Use <a href="#the-method-to-use" id="the-method-to-use"></a>

The method is `s.plt.stacked_bar()`

It must contain the following input variables:

```python
x: str
order: int
data: Union[str, DataFrame, List[Dict]]
```

And accepts the following input variables as optional:

```python
y: Optional[List[str]]
x_axis_name: Optional[str]
y_axis_name: Optional[str]
title: Optional[str]
rows_size: Optional[int]
cols_size: Optional[int]
padding: Optional[List[int]]
show_values: Optional[List[str]]
option_modifications: Optional[Dict]
```

## Examples <a href="#examples" id="examples"></a>

An example of how the function expects the data to be represented is the following:

```csv
Segment, Price, Client category, Age, Geo, Acquisitive power, Family size, Policie tenure, Labour contract
Hogar, 21, 5, 12, 17, 3, 14, 3, 6
Móvil, 23, 16, 16, 14, 4, 2, 19, 12
Dental, 26, 21, 14, 17, 1, 2, 6, 3
Viajes, 24, 22, 15, 17, 8, 5, 15, 4
Accidentes, 22, 12, 18, 17, 5, 6, 1, 5
Seguro de vida, 22, 21, 19, 12, 7, 3, 2, 9
Jurídico, 25, 21, 13, 12, 10, 6, 13, 6
Dental Plus, 24, 4, 17, 17, 7, 9, 2, 3
Jubilación, 20, 4, 19, 17, 2, 2, 10, 8
Salud, 27, 24, 17, 17, 12, 1, 4, 1
```

Assuming that the previously shown data is stored in the file `'file.csv'`.

The function has the option to hide or show each level by using the parameter `show_values` where the columns of the dataset that will show it's values have to be specified, by default it will not show any values.

When executing the following code:

```python
s.plt.stacked_bar(
    data=pd.read_csv('file.csv'), x="Segment",
    x_axis_name='Distribution and weight of the Drivers',
    order=0, show_values=['Price'],
)
```

<figure><img src="/files/RLjjWGNPm2YUxC4BDhLq" alt=""><figcaption><p>Stacked bar chart with percentages calculated and hidden labels</p></figcaption></figure>

## Variants

By setting the parameter `variant` to the following values the appearance of the chart can be changed:

{% tabs %}
{% tab title="Clean" %}

<figure><img src="/files/mx3Z8xAgnx25u55D5PRE" alt=""><figcaption><p>variant='clean'</p></figcaption></figure>
{% endtab %}

{% tab title="Minimal" %}

<figure><img src="/files/AOdExWNluO4P1ImCGk3k" alt=""><figcaption><p>variant='minimal'</p></figcaption></figure>
{% endtab %}

{% tab title="Thin" %}

<figure><img src="/files/riqKN7c5r7pNYgL6j9nD" alt=""><figcaption><p>variant="thin"</p></figcaption></figure>
{% endtab %}

{% tab title="Clean Thin" %}

<figure><img src="/files/0RsYIsSuVkb8etjfwLLX" alt=""><figcaption><p>variant="clean thin"</p></figcaption></figure>
{% endtab %}

{% tab title="Minimal Thin" %}

<figure><img src="/files/1CxXYqyCw8JoVUDElTFI" alt=""><figcaption><p>variant="minimal thin"</p></figcaption></figure>
{% endtab %}

{% tab title="Shadow" %}

<figure><img src="/files/MZAUtVMviWtBISCfjMLf" alt=""><figcaption><p>variant="shadow"</p></figcaption></figure>
{% endtab %}

{% tab title="Clean Shadow" %}

<figure><img src="/files/LbsiEYVDpeCRT0do9Q0h" alt=""><figcaption><p>variant="clean shadow"</p></figcaption></figure>
{% endtab %}

{% tab title="Minimal Shadow" %}

<figure><img src="/files/DDPS0TPsKzCkAHUfyIUB" alt=""><figcaption><p>variant="minimal shadow"</p></figcaption></figure>
{% endtab %}
{% endtabs %}

## Interesting Usages

* Showing proportions: Stacked bar charts are ideal for showing how a category is divided into subcategories. For example, you could use a stacked bar chart to show how a company's revenue by month is divided into different product categories.

  <figure><img src="/files/sM0tqKRaEuYZiO4SyBXU" alt=""><figcaption><p>Evolution of revenue by month, total and in percentages</p></figcaption></figure>

* Comparing data: Stacked bar charts can also be used to compare data between different categories. For example, you could use a stacked bar chart to compare the revenue generated by different countries.

  <figure><img src="/files/7TSeqApXP5bsHh2WgbwB" alt=""><figcaption><p>Revenue by country total and percentages</p></figcaption></figure>


---

# 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.shimoku.com/dev/elements/charts/bar-charts/stacked-bar.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.
