按中位数排列格子 bwplot 中的框的最佳方法

Best way to order boxes in a lattice bwplot by their median

我的目标是按中位数排列格子中的框 bwplot。我知道 aggregatereorder 等,以及晶格 index.condperm.cond 参数可用于此目的,但我很难正确放置这些片段连同 bwplot。如果能提供一个干净且可重用的解决方案,并说明有关参数和函数如何在该解决方案中协同工作的一些细节,我将不胜感激 - 因为这是目前尚不完全理解的内容。

这是一个没有顺序的情节的最小工作示例:

bwplot(data = iris, x = Sepal.Width ~ Species)

据我了解,可以通过类似于此的方式强制按中位数对框进行排序:

# notrun
bwplot(data = iris, x = Sepal.Width ~ Species | XXX, index.cond = function(x,y) reorder(x,y,median))
bwplot(data = iris, x = Sepal.Width ~ Species, perm.cond = XXX)

PS:关于订购 bwplot(至少是我发现的那些)有关 SO 的一堆现有问题要么调查其他细节,要么没有为我提供通用解决方案。

bymedian <- with(iris, reorder(Species, Sepal.Width, median))
lattice::bwplot(Sepal.Width ~ bymedian, data=iris)