0
我想绘制水平条并通过正值/负值对它们进行着色。问题是,即使我使用了categoryarray = cat
,酒吧的顺序也发生了变化。如果我删除color = sign
部分,订单是好的。这是我到目前为止的代码:分类在垂直条形图中的顺序(在Plotly中)
library(plotly)
library(data.table)
dt <- data.table(cat = c("A", "B", "C", "D"),
val = c(12, -3, -9, 2))
dt[, sign := "p"]
dt[val < 0 , sign := "n"]
setorder(dt, -cat)
p <- plot_ly(data = dt, y = cat, x = val, type = "bar", orientation = "h", color = sign) %>%
layout(title = "Some title",
xaxis = list(categoryarray = cat, categoryorder = "array"),
showlegend = FALSE)
p