Word Cloud

Word Cloud

Categoría Distribución

Qué es

Términos donde el tamaño de la fuente es proporcional a la frecuencia. Visualmente impactante para comunicar qué temas dominan en un corpus de texto.

Para qué sirve

Para comunicar los temas o palabras más frecuentes de un conjunto de texto a una audiencia general, en un contexto donde el impacto visual importa más que la precisión.

Cómo leerlo

Anatomía

El antecedente directo es el "tag cloud", popularizado por sitios de marcadores sociales a mediados de la década de 2000, donde el tamaño de cada etiqueta reflejaba cuántas veces la habían usado los usuarios. Sobre esa base se diseñaron después algoritmos de layout más densos y tipográficamente cuidados que los tag clouds planos originales, compactando las palabras sin espacio desperdiciado. El tamaño de cada palabra es el único atributo que codifica dato real, la frecuencia con la que aparece en el texto de origen, pero es una codificación imperfecta: dos palabras con la misma frecuencia pueden verse muy distintas en área si una es larga y angosta y la otra corta y ancha, porque el algoritmo dimensiona tipografía, no área geométrica pura —la limitación técnica más citada del formato. No hay ejes ni escala numérica visible: la posición de cada palabra es producto de un algoritmo de empaquetado que evita superposiciones, no de ningún valor de dato. El color y la orientación, a diferencia de casi todos los demás gráficos de este catálogo, son decorativos, no informativos.

Letreros tipográficos en blanco y negro de tamaños desiguales superpuestos a distinta profundidad, uno dominando el centro: la jerarquía de tamaño que organiza un word cloud, donde el tamaño codifica frecuencia

Por qué funciona

Fundamento perceptivo

Genera impacto visual inmediato y es comprensible para cualquier audiencia sin necesidad de explicación. Perfecto para infografías y presentaciones de alto nivel.

Errores comunes

  • Tamaño impreciso

    es difícil de comparar con exactitud, así que no lo uses cuando la diferencia entre frecuencias importe numéricamente; es decorativo, no analítico.

Dónde se usa

Contextos de aplicación

Temas dominantes en respuestas abiertas
01

Temas dominantes en respuestas abiertas

Las palabras más repetidas de una encuesta, dimensionadas por frecuencia.

Palabras clave de un corpus de documentos
02

Palabras clave de un corpus de documentos

Un resumen visual rápido de qué habla una colección de textos.

Conceptos más mencionados en redes
03

Conceptos más mencionados en redes

Los términos que dominan la conversación, a mayor tamaño mayor mención.

Cómo construirlo

El mismo gráfico, en 11 librerías open source

Cada librería resuelve las mismas decisiones de diseño, como la escala, el espaciado entre barras o la inserción de la etiqueta de valor, de un modo distinto. Algunas las automatizan; otras las dejan explícitas en el código, a criterio de quien lo escribe. Comparar once implementaciones con los mismos datos y el mismo color de marca aísla esa diferencia, que de otro modo queda oculta detrás de estilos visuales distintos.

Matplotlib License (estilo BSD)
Matplotlib: gráfico de barras

El layout de nube de palabras (ubicar cada palabra en espiral desde el centro, sin que se superpongan) es un algoritmo de colocación, no una función nativa de la mayoría de librerías de gráficos. Acá se calcula una sola vez con el mismo algoritmo que usa el ejemplo de la ficha, y las posiciones (x, y, tamaño de fuente) resultantes se reutilizan tal cual en 10 de las 11 librerías —ECharts es la única con un algoritmo de nube de palabras nativo propio. Sin el paquete wordcloud (que calcula la posición internamente y no acepta coordenadas propias), matplotlib no resolvería este layout solo —solo dibuja ax.text() en posiciones ya resueltas.

import matplotlib.pyplot as plt

# ax.text() por palabra, en la posicion (x, y) ya resuelta por el
# algoritmo de espiral -- sin el paquete wordcloud (que calcula la
# posicion internamente y no acepta coordenadas propias), matplotlib
# no resolveria este layout solo.
fig, ax = plt.subplots(figsize=(6.4, 3.8))
for w in words:
    ax.text(w["x"], w["y"], w["text"], ha="center", va="center", fontsize=w["fontSize"] * 0.7, color=w["color"], fontweight="bold")
ax.set_xlim(0, 500); ax.set_ylim(0, 300)
ax.axis("off")
plt.show()

No disponible en esta librería

ApexCharts

No tiene un tipo de nube de palabras nativo ni una API de bajo nivel accesible desde fuera (como el renderItem de ECharts o los plugins de Chart.js) para dibujar texto posicionado a mano.

Herramientas para construirlo

No-code, desktop y plataformas web, con su licencia visible, abierta o comercial.

No-code
Flourish FreemiumDatawrapper FreemiumObservable FreemiumRAWGraphs Gratis
JavaScript
D3.js Open Source
Python
WordCloud Open Source

Con datos reales

Ejemplos de uso.

Los apellidos que más se repiten en Chile

N° de personas inscritas por apellido, 2014-2023 (10 años).

GonzálezMuñozRojasDíazPérezContrerasSotoSilvaMoralesFloresTorresSepúlvedaCastilloMartínezFuentes

Fuente: Registro Civil, vía BioBioChile

Gráficos relacionados

Variantes y alternativas cercanas.