Trazar contornos ternarios usando Plotly en Python

Plotly es una biblioteca de Python que se utiliza para diseñar gráficos, especialmente gráficos interactivos. Puede trazar varios gráficos y tablas como histograma, diagrama de barras, diagrama de caja, diagrama de dispersión y muchos más. Se utiliza principalmente en el análisis de datos, así como en el análisis financiero. plotly es una biblioteca de visualización interactiva.

Contornos ternarios en Plotly

En forma gráfica, el gráfico de contornos ternarios se puede hacer usando el método create_ternary_contour de la clase figure_factory que ayuda a representar las líneas de isovalores que se definen dentro del diagrama ternario, donde la suma de tres variables es constante. Representa gráficamente las proporciones de las tres variables como posiciones en un triángulo equilátero.

Sintaxis: create_ternary_contour(coordenadas, valores, pole_labels=[‘a’, ‘b’, ‘c’],ncontours=Ninguno, interp_mode=’ilr’, showmarkers=False)

Ejemplo:

Python3

import plotly.figure_factory as ff
import numpy as np
  
test_data = np.array([[0, 0, 1, 0],
                      [0.25, 0.25, 0.5, 0],
                      [0.25, 0.25, 0.5, 0],
                      [0.25, 0.25, 0.5, 1],
                      [0.25, 0.5, 0.25, 1],
                      [0, 1, 0, 1]])
  
# barycentric coords: (a,b,c)
a = test_data[:, 0]
b = test_data[:, 1]
c = test_data[:, 2]
  
# values is stored in the last column
v = test_data[:, -1]
  
fig = ff.create_ternary_contour(
    np.array([a, b, c]), v,
    pole_labels=['A', 'B', 'C'],
)
  
fig.show()

Producción:

Personalización de la gráfica de contorno ternario

 La altura, el ancho, la escala de colores y muchos otros valores se pueden personalizar utilizando el parámetro proporcionado por esta función.

Ejemplo:

Python3

import plotly.figure_factory as ff
import numpy as np
  
test_data = np.array([[0, 0, 1, 0],
                      [0.25, 0.25, 0.5, 0],
                      [0.25, 0.25, 0.5, 0],
                      [0.25, 0.25, 0.5, 1],
                      [0.25, 0.5, 0.25, 1],
                      [0, 1, 0, 1]])
  
# barycentric coords: (a,b,c)
a = test_data[:, 0]
b = test_data[:, 1]
c = test_data[:, 2]
  
# values is stored in the last column
v = test_data[:, -1]
  
fig = ff.create_ternary_contour(
    np.array([a, b, c]), v,
    pole_labels=['A', 'B', 'C'],
    ncontours=20,
    colorscale='Greens',
    showscale=True,
    title='Ternary Contour Plot'
)
  
fig.show()

Producción:

Gráfico de contorno ternario con puntos de datos y líneas

Solo las líneas pueden mostrarse mediante el coloreado del parámetro y establecerlo en líneas y los puntos de datos pueden mostrarse pasando True al parámetro showmarkers .

Ejemplo:

Python3

import plotly.figure_factory as ff
import numpy as np
  
test_data = np.array([[0, 0, 1, 0],
                      [0.25, 0.25, 0.5, 0],
                      [0.25, 0.25, 0.5, 0],
                      [0.25, 0.25, 0.5, 1],
                      [0.25, 0.5, 0.25, 1],
                      [0, 1, 0, 1]])
  
# barycentric coords: (a,b,c)
a = test_data[:, 0]
b = test_data[:, 1]
c = test_data[:, 2]
  
# values is stored in the last column
v = test_data[:, -1]
  
fig = ff.create_ternary_contour(
    np.array([a, b, c]), v,
    pole_labels=['A', 'B', 'C'],
    ncontours=20,
    colorscale='Greens',
    showscale=True,
    title='Ternary Contour Plot',
    coloring='lines',
    showmarkers=True
)
  
fig.show()

Producción:

Publicación traducida automáticamente

Artículo escrito por nishantsundriyal98 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *