#python #plotly #histogram #plotly-dash #kde
#питон #сюжетно #гистограмма #сюжетно-тире #kde
Вопрос:
В настоящее время у меня есть этот код:
import dash_core_components as dcc #dash version 2.0.0 import plotly.figure_factory as ff #plotly version 5.3.1 ...dash app code 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'])), ...more dash app code
Что делает эту цифру частью приложения dash:
Я хотел бы иметь две оси y, одна из которых показывает плотность вероятности для кривой KDE (которая уже находится на оси y), а другая показывает частоту подсчета. Затем я хотел бы, чтобы кривая KDE была связана с осью y KDE, а гистограмма была связана с осью y count.
Есть ли способ сделать это с помощью plotly?
Спасибо за чтение!
Тим
Ответ №1:
- вы можете заменить гистограмму или нормальное распределение стандартной гистограммой
- сосредоточьтесь на построении фигуры перед интеграцией в dash
- не могу найти никаких выборочных данных для вашего домена, поэтому использовал случайные
import plotly.figure_factory as ff import plotly.express as px import numpy as np import pandas as pd np.random.seed(1) filtered_df = pd.DataFrame({"count_region_biosynthetic_protein_homologs": np.random.randn(1000)}) fig = ff.create_distplot( [filtered_df["count_region_biosynthetic_protein_homologs"].tolist()], group_labels=["count_region_biosynthetic_protein_homologs"], show_hist=False, ).add_traces( px.histogram(filtered_df, x="count_region_biosynthetic_protein_homologs") .update_traces(yaxis="y3", name="histogram") .data ).update_layout(yaxis3={"overlaying": "y", "side": "right"}, showlegend=False) fig