Indicator
Un gráfico gauge (o velocímetro) muestra un único valor dentro de un rango, típicamente usado en dashboards para KPIs. Usa la clase Indicator de plotly.graph_objects con mode = "gauge+number".
import plotly.graph_objects as go
fig = go.Figure(go.Indicator(
mode = "gauge+number",
value = 68,
gauge = dict(axis = dict(range = [0, 100]))))
fig.show()
Tramos de color
Divide el gauge en tramos de color con gauge.steps, una lista de diccionarios cada uno con un range y un color.
import plotly.graph_objects as go
fig = go.Figure(go.Indicator(
mode = "gauge+number",
value = 68,
gauge = dict(
axis = dict(range = [0, 100]),
bar = dict(color = "#4C72B0"),
steps = [dict(range = [0, 50], color = "#DEEBF7"),
dict(range = [50, 80], color = "#9ECAE1")])))
fig.show()
Umbral
Marca un valor objetivo con gauge.threshold, dibujado como una línea fina a través del gauge.
import plotly.graph_objects as go
fig = go.Figure(go.Indicator(
mode = "gauge+number",
value = 68,
gauge = dict(
axis = dict(range = [0, 100]),
bar = dict(color = "#4C72B0"),
threshold = dict(line = dict(color = "#C44E52", width = 4),
value = 90))))
fig.show()
Añade mode = "gauge+number+delta" y un diccionario delta con un valor reference para mostrar la diferencia respecto a un periodo anterior, coloreada en verde o rojo según la dirección.
import plotly.graph_objects as go
fig = go.Figure(go.Indicator(
mode = "gauge+number+delta",
value = 68,
delta = dict(reference = 60),
gauge = dict(axis = dict(range = [0, 100]))))
fig.show()
Título y sufijo del número
Añade un diccionario title para una etiqueta encima del gauge, y un diccionario number con suffix (o prefix) para formatear el valor mostrado, por ejemplo como porcentaje.
import plotly.graph_objects as go
fig = go.Figure(go.Indicator(
mode = "gauge+number",
value = 68,
title = dict(text = "Carga del servidor"),
number = dict(suffix = "%"),
gauge = dict(axis = dict(range = [0, 100]))))
fig.show()
También te puede interesar