Títulos en plotly

Las funciones de Plotly Express tienen el argumento title para agregar un título directamente al crear el gráfico. Para una mayor personalización utiliza fig.update_layout, que da acceso a la posición, la fuente y otras propiedades del título.

Agregar un título

Pasa el texto al argumento title de cualquier función de Plotly Express.

import plotly.express as px

df = px.data.medals_long()

fig = px.bar(df, x = "nation", y = "count", color = "medal",
             title = "Medallas olímpicas por país")

fig.show()

Posición del título

Por defecto el título se alinea a la izquierda. Utiliza title_x (entre 0 y 1) para cambiar su posición horizontal, por ejemplo 0.5 para centrarlo, y title_y para la posición vertical.

import plotly.express as px

df = px.data.medals_long()

fig = px.bar(df, x = "nation", y = "count", color = "medal",
             title = "Medallas olímpicas por país")

fig.update_layout(title_x = 0.5)

fig.show()

Fuente, tamaño y color del título

Personaliza el texto con title_font_size, title_font_color y title_font_family. Las mismas propiedades se pueden establecer con un diccionario: title = dict(text = ..., font = dict(...)).

import plotly.express as px

df = px.data.medals_long()

fig = px.bar(df, x = "nation", y = "count", color = "medal",
             title = "Medallas olímpicas por país")

fig.update_layout(title_font_size = 26,
                  title_font_color = "darkblue",
                  title_font_family = "Georgia", title_x = 0.5)

fig.show()

Negrita y etiquetas HTML

Los títulos de plotly admiten algunas etiquetas HTML, como <b> (negrita), <i> (cursiva) o <br> (salto de línea).

import plotly.express as px

df = px.data.medals_long()

fig = px.bar(df, x = "nation", y = "count", color = "medal",
             title = "<b>Medallas olímpicas</b><br>por país")

fig.show()

Subtítulo

Desde plotly 5.24 el título tiene la propiedad subtitle, que se muestra debajo del título principal con una fuente más pequeña.

import plotly.express as px

df = px.data.medals_long()

fig = px.bar(df, x = "nation", y = "count", color = "medal")

fig.update_layout(title = dict(text = "Medallas olímpicas por país",
                               subtitle = dict(text = "Juegos Olímpicos de invierno")))

fig.show()

Títulos de los ejes

Plotly Express utiliza los nombres de las columnas como títulos de los ejes. Cámbialos con el argumento labels, que asigna un nuevo nombre a cada columna, o con update_xaxes y update_yaxes.

import plotly.express as px

df = px.data.medals_long()

fig = px.bar(df, x = "nation", y = "count", color = "medal",
             labels = {"nation": "País",
                       "count": "Número de medallas"})

fig.show()

El argumento labels también cambia el nombre de las variables en la leyenda y en las etiquetas emergentes. Aprende más sobre los ejes en el tutorial sobre la personalización de los ejes en plotly.

Fundamentals of Data Visualization

A Primer on Making Informative and Compelling Figures

Comprar en Amazon
Storytelling con Datos

Visualización de datos para profesionales

Comprar en Amazon

También te puede interesar