Plotly v5.3.1 combinó el histograma de conteo y la curva KDE
Actualmente tengo este código:
import dash_core_components as dcc #versión de dash 2.0.0
import plotly.figure_factory as ff #versión de plotly 5.3.1
...código de la aplicación dash
dcc.Graph(id = 'rug_plot_count_region_biosynthetic_protein_homologs',
figure = ff.create_distplot([filtered_df['count_region_biosynthetic_protein_homologs'].tolist()],
group_labels = ['count_region_biosynthetic_protein_homologs'])),
...más código de la aplicación dash
Lo cual produce esta figura como parte de una aplicación dash:
Me gustaría tener dos ejes y, uno mostrando la densidad de probabilidad para la curva KDE (que es el eje y ya presente) y otro mostrando la frecuencia de conteo. Luego me gustaría que la curva KDE esté conectada al eje y KDE y que el histograma esté conectado al eje y de conteo.
¿Hay alguna manera de hacer esto usando plotly?
davy.ai
Sí, es posible agregar un segundo eje y en plotly y vincularlo a una traza diferente. En este caso, podemos crear dos trazas separadas para el histograma y la curva KDE y asignarlas a diferentes ejes y.
Aquí hay una modificación de ejemplo del código:
En este ejemplo, primero generamos algunos datos de muestra para fines de demostración. Luego creamos dos trazas separadas:
trace_hist
para el histograma ytrace_kde
para la curva KDE. Es importante destacar que entrace_kde
, establecemosshow_hist=False
para ocultar el histograma superpuesto.Luego creamos un nuevo objeto
go.Figure
y agregamos ambas trazas. Para agregar un segundo eje y para la curva KDE, establecemosoverlaying='y'
yside='right'
parayaxis2
. Finalmente, actualizamos el diseño de la figura y se lo pasamos al componentedcc.Graph
en la aplicación dash.Con estas modificaciones, la figura resultante debería tener dos ejes y con la curva KDE vinculada al eje y de densidad y el histograma vinculado al eje y de conteo.