Plotly Box Plot

Ammar Ali 1 abril 2022
Plotly Box Plot

Este tutorial discutirá la creación de un box plot usando la función box() de Plotly.

Gráfico de caja de Plotly

Un diagrama de caja en Plotly representa la distribución de una variable a través de sus cuartiles. Los extremos del cuadro describen los cuartiles inferior y superior, mientras que una línea dentro del cuadro marca la mediana o el segundo cuartil.

Podemos usar la función box() de Plotly para crear un diagrama de caja de los datos dados. Debemos proporcionar el dataframe o valores y etiquetas dentro de la función box() para crear el diagrama de caja.

El siguiente código crea un diagrama de caja de algunos datos aleatorios.

import plotly.express as px

labels = ["A", "B", "C"]
value = [[10, 50, 30], [20, 30, 60], [10, 20, 30], [10, 10, 10]]
fig = px.box(x=labels, y=value, width=500, height=400)
fig.show()

Producción:

diagrama de caja

El argumento width y height se utiliza para establecer el ancho y el alto de la figura en píxeles. Podemos dar a cada celda un color predeterminado usando el argumento color y establecer su valor en las etiquetas.

Podemos establecer la orientación de las cajas usando el argumento orientation y una cadena h para orientación horizontal y v para orientación vertical. Podemos configurar el eje a escala logarítmica usando log_x para el eje x y log_y para el eje y y establecer su valor en verdadero.

Podemos establecer la forma de las cajas en muescas usando el argumento notched y establecer su valor en verdadero. Podemos darle un título al gráfico usando el argumento title.

Podemos usar facet_col y facet_row para crear subparcelas con celdas separadas y establecer su valor en una lista de enteros o cadenas para establecer el título de la subparcela. Podemos establecer la distancia entre dos subparcelas utilizando facet_col_spacing para el espacio entre columnas y facet_row_spacing para el espacio entre filas.

El siguiente código cambia los argumentos mencionados anteriormente.

import plotly.express as px

labels = ["A", "B", "C"]
value = [[10, 50, 30], [20, 30, 60], [10, 20, 30], [10, 10, 10]]
fig = px.box(
    x=labels,
    y=value,
    width=700,
    height=400,
    color=labels,
    notched=True,
    title="Plotly Box Plot",
    facet_col=[1, 2, "b"],
)
fig.show()

Producción:

cambiar las propiedades del diagrama de caja

Por defecto, la función box() le da a cada celda un color diferente, pero podemos establecer el color de cada celda usando los argumentos color y color_discrete_map. Debemos pasar la etiqueta de cada celda dentro del argumento color y luego darle un color a cada etiqueta usando el argumento color_discrete_map para cambiar el color de cada celda. Si no definimos el color de una etiqueta, la función box() automáticamente le da un color aleatorio.

El siguiente código establece el color de cada celda.

import plotly.express as px

labels = ["A", "B", "C"]
value = [[10, 50, 30], [20, 30, 60], [10, 20, 30], [10, 10, 10]]
fig = px.box(
    x=labels,
    y=value,
    width=700,
    height=400,
    color=labels,
    color_discrete_map={
        "A": "green",
        "B": "cyan",
        "C": "yellow",
    },
)
fig.show()

Producción:

cambiar el color del diagrama de caja

Podemos cambiar la escala o secuencia de colores predeterminada para establecer el color de cada celda usando el argumento color_discrete_sequence. El valor del argumento debe ser una lista de colores CSS válidos. Podemos usar la secuencia de colores incorporada de Plotly como Vivid, Light24 y Dark2.

El siguiente código cambia los colores del gráfico circular utilizando la secuencia de colores Dark2.

import plotly.express as px

labels = ["A", "B", "C"]
value = [[10, 50, 30], [20, 30, 60], [10, 20, 30], [10, 10, 10]]
fig = px.box(
    x=labels,
    y=value,
    width=700,
    height=400,
    color=labels,
    color_discrete_sequence=px.colors.qualitative.Dark2,
)
fig.show()

Producción:

cambiar la secuencia de colores del diagrama de caja

Para cambiar la secuencia de colores en el código, debemos cambiar el nombre de la secuencia de colores de Dark2 a Vivid. Visite este enlace para obtener más detalles sobre la secuencia de colores de Plotly.

Podemos actualizar los rastros de la función bar() usando la función fig.update_traces(). Podemos cambiar el color de relleno de los cuadros usando el argumento fillcolor y establecer su valor en un nombre de color como amarillo. Podemos cambiar la opacidad de las cajas usando el argumento opacity y establecer su valor de 0 a 1.

Podemos establecer el grupo de títulos de la leyenda usando el argumento legendgrouptitle_text y establecer su valor en una cadena.

El siguiente código cambia los rastros mencionados anteriormente usando la función fig.update_traces().

import plotly.express as px

labels = ["A", "B", "C"]
value = [[10, 50, 30], [20, 30, 60], [10, 20, 30], [10, 10, 10]]
fig = px.box(x=labels, y=value, width=700, height=400, color=labels)
fig.update_traces(fillcolor="yellow", opacity=0.8, legendgrouptitle_text="LegendTitle")

fig.show()

Producción:

cambio de trazas de diagrama de caja

Visite este enlace para obtener más detalles sobre los seguimientos de la función box().

Autor: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Artículo relacionado - Plotly Plot