Python 如何在plotly中使用聚合绘制箱线图?

Python 如何在plotly中使用聚合绘制箱线图?,python,pandas,plotly,plotly-dash,Python,Pandas,Plotly,Plotly Dash,我需要根据数值空气质量模型的结果绘制一系列箱线图。由于这是大量数据,每当新模型结果准备就绪并存储在PostgreSQL中时,我都会触发聚合计算(最小值、最大值、四分位数等)。为了可视化,我将骨料加载到熊猫中,并使用dash绘制它们。我能够绘制时间序列的线条图,但是我希望得到类似的东西,而且是交互式的 当我浏览plotly示例时,它似乎总是需要原始数据来绘制箱线图()。我非常喜欢呈现和逻辑分离的概念。是否可以基于聚合数据获取plotly box plot?您可以通过以下格式向Python中的plo

我需要根据数值空气质量模型的结果绘制一系列箱线图。由于这是大量数据,每当新模型结果准备就绪并存储在PostgreSQL中时,我都会触发聚合计算(最小值、最大值、四分位数等)。为了可视化,我将骨料加载到熊猫中,并使用dash绘制它们。我能够绘制时间序列的线条图,但是我希望得到类似的东西,而且是交互式的


当我浏览plotly示例时,它似乎总是需要原始数据来绘制箱线图()。我非常喜欢呈现和逻辑分离的概念。是否可以基于聚合数据获取plotly box plot?

您可以通过以下格式向Python中的plotly box plot提供聚合值:

plotly.graph_objs.Box(y=[val_min, 
                         val_lower_box, 
                         val_lower_box, 
                         val_median, 
                         val_upper_box, 
                         val_upper_box, 
                         val_max])
e、 g

给你


这可以使用Javascript,但可能也可以使用Python:有关使用Python的解决方案,请参阅更新的答案。谢谢Maximillian。这是一个聪明的绕圈子。
import plotly
plotly.offline.init_notebook_mode()

val_min = 1
val_lower_box = 2
val_median = 3
val_upper_box = 4.5
val_max = 6

box_plot = plotly.graph_objs.Box(y=[val_min, 
                                    val_lower_box, 
                                    val_lower_box, 
                                    val_median, 
                                    val_upper_box, 
                                    val_upper_box, 
                                    val_max])
plotly.offline.iplot([box_plot])