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

# configure_category_order

> Configures the order of categories in a categorical or list of categories column. 

Controls the display order of categories in charts and filters. The ordering method is specified by the `kind` parameter: `"BACKGROUND"` orders by total row count, `"FOREGROUND"` by count in the current selection, `"UPLIFT"` by over-representation in the selection, `"TFIDF"` by term frequency-inverse document frequency, and `"ORDINAL"` preserves a natural order.

This is a UI configuration step that affects how the project is displayed in Graphext. It applies to the dataset referenced in its inputs. If your recipe produces multiple datasets (e.g. a filtered dataset that is then passed to create\_project alongside the original), you need to add separate configure steps for each dataset you want to configure.

## Usage

The following example shows how the step can be used in a recipe.

<Accordion title="Examples" icon="code" defaultOpen="true">
  <Tabs>
    <Tab title="Example 1">
      ```stan theme={null}
      configure_category_order(ds.cluster, { "kind": "BACKGROUND" })
      ```
    </Tab>

    <Tab title="Signature">
      General syntax for using the step in a recipe. Shows the inputs and outputs the step is expected to receive and will produce respectively. For futher details see sections below.

      ```stan theme={null}
      configure_category_order(column: category|list[category]|text, {
          "param": value,
          ...
      })
      ```
    </Tab>
  </Tabs>
</Accordion>

## Inputs & Outputs

The following are the inputs expected by the step and the outputs it produces. These are generally
columns (`ds.first_name`), datasets (`ds` or `ds[["first_name", "last_name"]]`) or models (referenced
by name e.g. `"churn-clf"`).

<Accordion title="Inputs" icon="right-to-bracket">
  <ParamField path="column" type="column[category|list[category]|text]" required>
    Categorical column to be configured (may be a column of lists of categories).
  </ParamField>
</Accordion>

<Accordion title="Outputs" icon="right-from-bracket" />

## Configuration

The following parameters can be used to configure the behaviour of the step by including them in
a json object as the last "input" to the step, i.e. `step(..., {"param": "value", ...}) -> (output)`.

<Accordion title="Parameters" defaultOpen="true" icon="sliders">
  <ParamField path="kind" type="string" required>
    Kind of ordering.
    Determines the order of categories. E.g. to show first the categories having the greatest row count in the whole dataset,
    select `"BACKGROUND"`. To show those categories first having the greatest number of rows in the current selection, use
    `"FOREGROUND"`, etc.

    Values must be one of the following:

    * `BACKGROUND`
    * `FOREGROUND`
    * `UPLIFT`
    * `TFIDF`
    * `ORDINAL`
  </ParamField>
</Accordion>
