Plotly es una biblioteca de Python que se utiliza para diseñar gráficos, especialmente gráficos interactivos. Puede trazar varios gráficos y cuadros 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.
Gráfico de volumen en Plotly
Un gráfico de volumen es un gráfico con go.volume que muestra muchas isosuperficies parcialmente transparentes para representar el volumen. El parámetro de escala de opacidad de go. El volumen da como resultado un efecto de profundidad y genera una mejor representación del volumen. La visualización de volumen tridimensional es un método que permite observar y manipular datos volumétricos en 3D. Representa objetos 3D en términos de superficies y bordes aproximados por polígonos y líneas.
Sintaxis: plotly.graph_objects.3d_Volume(arg=Ninguno, autocolorscale=Ninguno, caps=Ninguno, cauto=Ninguno, cmax=Ninguno, cmid=Ninguno, cmin=Ninguno, coloraxis=Ninguno, colorbar=Ninguno, colorscale=Ninguno, contour= Ninguno, customdata=Ninguno, customdatasrc=Ninguno, flatshading=Ninguno, hoverinfo=Ninguno, hoverinfosrc=Ninguno, hoverlabel=Ninguno, hovertemplate=Ninguno, hovertemplatesrc=Ninguno, hovertext=Ninguno, hovertextsrc=Ninguno, ids=Ninguno, idssrc=Ninguno, isomax=Ninguno, isomin=Ninguno, legendgroup=Ninguno, iluminación=Ninguno, lightposition=Ninguno, meta=Ninguno, metasrc=Ninguno, name=Ninguno, opacity=Ninguno, opacityscale=Ninguno, reversescale=Ninguno, scene=Ninguno, showlegend= Ninguno, showscale=Ninguno, slices=Ninguno, spaceframe=Ninguno, stream=Ninguno, surface=Ninguno, text=Ninguno, textsrc=Ninguno, uid=Ninguno, uirevision=Ninguno, value=Ninguno, valuesrc=Ninguno, visible=Ninguno, x=Ninguno, xsrc=Ninguno, y=Ninguno, ysrc=Ninguno, z=Ninguno, zsrc=Ninguno, **kwargs)
Parámetros:
x – Establece las coordenadas X de los vértices en el eje X.
y – Establece las coordenadas Y de los vértices en el eje Y.
z – Establece las coordenadas Z de los vértices en el eje Z.
valor : establece la cuarta dimensión (valor) de los vértices.
Ejemplo:
Python3
import plotly.graph_objects as go import numpy as np x1 = np.linspace(-4, 4, 9) y1 = np.linspace(-5, 5, 11) z1 = np.linspace(-5, 5, 11) X, Y, Z = np.meshgrid(x1, y1, z1) values = (np.sin(X**2 + Y**2))/(X**2 + Y**2) fig = go.Figure(data=go.Volume( x=X.flatten(), y=Y.flatten(), z=Z.flatten(), value=values.flatten(), opacity=0.1, )) fig.show()
Producción:
Personalización de tapas en gráfico de volumen
En forma gráfica, para una visualización más clara de la superficie interna, es posible que se pueda quitar la tapa. Las mayúsculas son visibles de forma predeterminada.
Ejemplo 1:
Python3
import plotly.graph_objects as go import plotly.express as px import numpy as np df = px.data.tips() x1 = np.linspace(-4, 4, 9) y1 = np.linspace(-5, 5, 11) z1 = np.linspace(-5, 5, 11) X, Y, Z = np.meshgrid(x1, y1, z1) values = (np.sin(X**2 + Y**2))/(X**2 + Y**2) fig = go.Figure(data=go.Volume( x=X.flatten(), y=Y.flatten(), z=Z.flatten(), value=values.flatten(), opacity=0.1, caps= dict(x_show=False, y_show=False, z_show=True), )) fig.show()
Producción:
Ejemplo 2:
Python3
import plotly.graph_objects as go import plotly.express as px import numpy as np df = px.data.tips() x1 = np.linspace(-4, 4, 9) y1 = np.linspace(-5, 5, 11) z1 = np.linspace(-5, 5, 11) X, Y, Z = np.meshgrid(x1, y1, z1) values = (np.sin(X**2 + Y**2))/(X**2 + Y**2) fig = go.Figure(data=go.Volume( x=X.flatten(), y=Y.flatten(), z=Z.flatten(), value=values.flatten(), opacity=0.1, caps= dict(x_show=False, y_show=True, z_show=False), )) fig.show()
Producción:
Escala de opacidad personalizada
En plotly, es posible definir la escala de opacidad personalizada, asignando valores escalares proporcionales a los valores de opacidad. El valor se da de 0 a 1 y la opacidad máxima la proporciona la palabra clave opacity.
Ejemplo:
Python3
import plotly.graph_objects as go import plotly.express as px import numpy as np df = px.data.tips() x1 = np.linspace(-4, 4, 9) y1 = np.linspace(-5, 5, 11) z1 = np.linspace(-5, 5, 11) X, Y, Z = np.meshgrid(x1, y1, z1) values = (np.sin(X**2 + Y**2))/(X**2 + Y**2) fig = go.Figure(data=go.Volume( x=X.flatten(), y=Y.flatten(), z=Z.flatten(), isomin=-0.5, isomax=0.5, value=values.flatten(), opacity=0.1, opacityscale=[[-0.5, 1], [-0.2, 0], [0.2, 0], [0.5, 1]], colorscale='RdBu' )) 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