> For the complete documentation index, see [llms.txt](https://help.felt.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.felt.com/styling/style-raster-layers.md).

# Style raster layers

Style rasters and imagery in Felt with color ranges, categories, or hillshade, and choose your own palettes. Use raster algebra for NDVI.

Raster layers use grids of pixels to represent imagery, elevation, or land cover. The style editor, the Style tab of the detail panel, turns those pixel values into colors, so you can show elevation as a gradient, land cover by class, or terrain as shaded relief.

## Choose a raster type

A raster type sets how Felt turns a raster's pixel values into colors.

1. Click **Edit map**, then click the raster layer in the legend. The **Style** tab opens.
2. In the **General** section, open **Type** and select a type.

| Type           | Shows                                                                                                        |
| -------------- | ------------------------------------------------------------------------------------------------------------ |
| Image          | The default. One or two bands in grayscale, three or more in color (RGB) from the first three bands.         |
| Color range    | One band's values along a color gradient, such as elevation or temperature. See [Color range](#color-range). |
| Categories     | A color for each pixel value, such as crop type. See [Categories](#categories).                              |
| Hillshade      | Elevation shaded as if lit from one side. See [Hillshade](#hillshade).                                       |
| Raster algebra | An index from two bands, such as NDVI. See [Raster algebra](#raster-algebra).                                |

For any raster type, use **Resample** in the **Raster** section to keep pixel edges sharp or smooth them. Use **Position** to draw the raster above or below the basemap's roads and water. To show pixel values on click, see [Raster popups](/styling/popups.md#raster-popups).

### Color range

A Color range raster style colors one band's values along a gradient, for continuous measurements such as elevation, temperature, or rainfall. Click the **Steps** field to set the classification method and the number of classes. See [Classification methods](/styling/style-vector-layers.md#classification-methods). With the **Continuous** method, set **Range** to the lowest and highest values the colors cover.

### Categories

A Categories raster style gives each pixel value its own color, for classes such as land cover or crop type. Felt uses the file's color palette when it has one.

Click the **Showing** field to open the **Set categories** panel:

* To show only some values, such as one crop type, remove the other categories and turn off **Show other**. Pixels with unlisted values become transparent.
* To order the categories in the legend, open **Sort** and select **Most common** or **Alphabetical**, or drag a category to a new place. After you drag one, **Sort** shows **manual**.
* To give a pixel value a name in the legend, such as `Forest` for the value `41`, click its name and enter the new one. The pixel values in the data don't change.

<figure><img src="https://217108486-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmRfGitkyjOEMvVsEyGWN%2Fuploads%2Fgit-blob-df4c9be5452451d2cf6df09e55298de72df424f2%2Fstyle-panel-raster-categories.webp?alt=media" alt="New Orleans land cover styled as Categories, with the Set categories panel listing classes, Sort, and Show other."><figcaption></figcaption></figure>

### Hillshade

A Hillshade style shades a digital elevation model (DEM) so terrain stands out. Set the light's compass direction with **Light** and adjust **Intensity**. Add a color palette to show elevation too.

<figure><img src="https://217108486-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmRfGitkyjOEMvVsEyGWN%2Fuploads%2Fgit-blob-07830e975363c05f4b785f596ded31b3bfe6987e%2Fstyle-panel-raster-hillshade.webp?alt=media" alt="Raster Style tab with the Hillshade type showing Light direction, Intensity, and a color palette over shaded terrain."><figcaption></figcaption></figure>

### Raster algebra

A Raster algebra style computes an index from two bands of a multi-band raster. Choose the index in **Preset**, then select a band from the raster for each input.

| Preset                                        | Shows               | Bands                                 |
| --------------------------------------------- | ------------------- | ------------------------------------- |
| Normalized Difference Vegetation Index (NDVI) | Vegetation health   | Red and near infrared                 |
| Normalized Difference Water Index (NDWI)      | Water bodies        | Green and near infrared               |
| Normalized Difference Moisture Index (NDMI)   | Water in vegetation | Near infrared and short-wave infrared |

<figure><img src="https://217108486-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmRfGitkyjOEMvVsEyGWN%2Fuploads%2Fgit-blob-b07415075565d5bb77294e90349c3488bb8feea0%2Fstyle-panel-raster-algebra.webp?alt=media" alt="NDVI raster styled with Raster algebra, with the preset panel showing the NDVI preset and the NIR and R band inputs." width="532"><figcaption></figcaption></figure>

## Customize colors

Color range, Categories, Hillshade, and Raster algebra styles take their colors from a palette that you can change or replace with your own colors.

* To change the palette, click the **Color** field in the **Raster** section and select one. Click **Reverse colors** at the bottom of the list to flip it.
* To change one category's color, click the **Showing** field, then click the category's swatch.
* To change a class's color, click the **Steps** field, then click the class's swatch. With the **Continuous** method, click **Add color** to add a color to the gradient, or hover over a color and click **Remove**.

Clicking a swatch opens the color picker, where you can select a preset swatch, pick a color, or enter a Hex, HSL, or RGB value. After you change a palette's colors, the palette shows as **Custom**.

## Hide pixel values

Exclude a raster value to make every pixel with that value transparent, such as pixels marked as no data. In the **General** section, click the **Steps** field. Next to **Exclude**, enter a value or use the eyedropper. For a Categories style, turn off **Show other** instead.

## Frequently asked questions

<details>

<summary>Can Felt draw contour lines from an elevation raster?</summary>

No. Felt doesn't generate contour lines. Use a Hillshade or Color range style to show elevation, add the Terrain contour lines from the Global Library, or upload contour lines made in another tool as a line layer. See [Global Library](/upload-anything/global-library.md).

</details>

<details>

<summary>Can I give several raster layers the same style?</summary>

Yes. Select the raster layers together to change settings that aren't specific to a band. See [Style multiple layers at once](/styling/style-vector-layers.md#style-multiple-layers-at-once).

</details>


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://help.felt.com/styling/style-raster-layers.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
