# Word Cloud Plume: phrases, sentiment, comparison and shapes

> Word Cloud Plume recipes: stop words from your data, two-word phrases, color by sentiment, rising and falling words, SVG shape, and a cloud that changes month by month.

- Language: English
- Web page: https://plumevisuals.com/en/tutorials/word-cloud-plume-cas-pratiques
- Published: 2026-10-21
- Visual: Word Cloud Plume, technical reference: https://plumevisuals.com/ai/visuals/word-cloud.md
- If an option name in this tutorial differs from the technical reference, the reference is right (it is generated from the visual's code).

These recipes reuse the `Topics` and `Reviews` tables of the [getting started guide](/en/tutorials/word-cloud-plume-prise-en-main). Recipes marked ★ use a premium feature: it works without a key, with the "Premium preview" watermark.

## How do I exclude words that come from a table?

You maintain a list of words to ignore (brand names, "hello", "thanks") in an `Excluded words` table.

1. Create the measure:

```dax
Excluded word list =
CONCATENATEX ( 'Excluded words', 'Excluded words'[Word], ";" )   -- "hello;thanks;plume"
```

2. Drop it into the visual's **Excluded words** field.
3. Result: these words disappear, in addition to those of **Format › Words › Other words to exclude** and the built-in stop words. Case and accents are ignored.

## How do I count answers rather than words ★?

In a survey, a respondent who writes "delay" three times should count once.

1. **Format › Words › Count**: *Once per row (answer, comment) ★*.
2. Result: the size of a word = number of answers that use it; the tooltip says "Rows using it".

## How do I merge "order" and "orders" ★?

1. **Format › Words › Merge singular and plural ★**: on.
2. Result: simple plurals (‑s, ‑x, ‑ies → ‑y) join the singular when it exists; the most frequent form is shown.

## How do I see two-word phrases ★?

"customer service" says more than "customer" and "service" apart.

1. Put a text column in **Words or text**.
2. **Format › Words › Phrases**: *Two-word phrases* (or *Words and two-word phrases*, or *Three-word phrases* for "delivery lead time").
3. Result: a stop word never starts or ends a phrase, and a phrase never crosses punctuation ("fast, service" is not a phrase).

## How do I color words by review sentiment ★?

Your `Reviews` table has a `Sentiment` column from −1 (negative) to 1 (positive), for example computed with AI Insights or Power Query.

1. Create the measure:

```dax
Average sentiment =
AVERAGE ( Reviews[Sentiment] )   -- average of the reviews in the context
```

2. Drop it into **Color**. The visual switches to *Gradient by the “Color” field*.
3. **Format › Data colors › Gradient**: *Diverging (around the middle)*.
4. Result: each word takes the average of the reviews that use it; words of positive reviews on one side of the gradient, negative ones on the other, the legend gives the limits.

> **Tip:** A color written as text in the **Color** field (`"#2E7D4F"`, `"red"`) colors the word directly, for free: handy for one color per product family.

## How do I show rising and falling words ★?

1. Create the measure for last year:

```dax
Mentions last year =
CALCULATE ( [Number of mentions], SAMEPERIODLASTYEAR ( 'Date'[Date] ) )   -- same period, one year earlier
```

2. Drop it into **Comparison**.
3. Result: ▲ in green for rising words, ▼ in red for falling ones, gray for changes under 5% (**Format › Comparison ★ › Negligible change (± %)**), ✦ for new words. The tooltip gives the previous value and the change in %. A click on "Rising ▲" in the legend selects every rising word.
4. For complaints, turn on **A decrease is favorable**: the colors swap.

## How do I give the cloud the shape of my logo ★?

1. Open your SVG logo in a text editor and copy the whole `svg` text.
2. **Format › Shape › Shape**: *Custom SVG*, then paste it into **Shape SVG**.
3. Result: the words fill the solid parts of the logo. The SVG is cleaned (scripts, images and web links removed); only its drawing is used.
4. Variant: a measure that returns a different SVG depending on the filter (the logo of the brand picked in a slicer), in the **Shape (SVG)** field.

## How do I fill the whole shape ★?

With few words, the shape is hard to recognize.

1. **Format › Layout › Fill ★**: turn on **Fill the shape with repeated words**.
2. Result: once every word is placed, smaller copies fill the remaining room. **Repeated words opacity** pushes them to the background; they are neither clickable nor read by screen readers.

## How do I make the cloud change month by month ★?

1. Drop a month (or year) column into **Play axis ★**.
2. A play bar appears under the cloud: ▶, slider, speed ×0.5 to ×4. The current value is written in large type.
3. Result: one cloud per month; common words roughly keep their place and glide to the new one, the others appear or fade out. **Format › Playback ★** sets the duration of a frame, the loop and the frame shown on opening.

## How do I color words from light to dark by size ★?

1. **Format › Data colors › Coloring**: *Gradient by size ★*.
2. **Format › Word text › Size by weight**: *Logarithmic (compressed) ★* when a few words crush the others, or *By rank ★* for even sizes.
3. **Format › Shape › Silhouette in the background ★**: on, **Silhouette opacity** = `25`.

Result: big words take the strong end of the gradient, a gradient legend appears under the cloud, and the shape shows in the background. Without a license, *Single color*, *Palette* and the *Square root* scale stay free.

## How do I keep word sizes when a slicer filters the cloud?

By default, the largest visible word takes the maximum size: after a filter, a small topic can become huge. To compare sizes from one filter to another, give the visual the largest weight computed without filters.

1. Create this measure, named exactly `wordFont.weightMax`:

```dax
wordFont.weightMax =
CALCULATE (
    MAXX ( VALUES ( Topics[Topic] ), [Number of mentions] ),   -- the largest weight of a topic…
    ALL ( Topics )                                             -- …without any filter on the Topics table
)
```

2. Drop it in the **Dynamic format** field: it fills **Format › Word text › Weight at the maximum size (empty = automatic)**.
3. **Format › Layout › Size fitting** = *Fixed sizes*.

Result: a topic keeps the same size whatever the filter; a filtered cloud looks smaller instead of being enlarged.

> **Warning:** `ALLSELECTED ()` follows slicers and cross-filters: the scale would still move. Use `ALL ( Table )` or `REMOVEFILTERS ()`.

## How do I keep hashtags, mentions and emojis?

In reviews or messages, "#sale", "@store" or an emoji count as much as a word.

1. Drop the text column (`Reviews[Comment]`) in **Words or text**.
2. Turn on **Format › Words › Keep special characters (#, @, emojis)**.

Result: hashtags, mentions, amounts ($20, 20€) and emojis stay words of the cloud instead of losing their sign. Emojis show in color with the Windows Segoe UI Emoji font.

## How do I always get the same cloud, or try another one?

The layout is deterministic: same data, same cloud, every time you open the report and in the exported PDF. **Format › Layout › Layout variant** (1 to 999) offers another arrangement, just as stable.
