我有一个带有因素“颜色”的堆积条形图,并且情节本身是完美的,但图例是相反的,最后一个因素在顶部,第一个因素在底部。 这可能是一个愚蠢的问题,但如何在不改变情节本身的情况下获得正确的图例顺序?
下面是一个例子:
ds <- data.frame(X = c(1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4),
Y = c(50, 10, 100, 500,
60, 20, 200, 600,
70, 30, 300, 700,
70, 40, 400, 700),
Z = c("Sugar", "Spice", "Everything nice", "Chemical X")) %>%
mutate(Z = factor(Z, c("Sugar", "Spice", "Everything nice", "Chemical X")))
plt <- plot_ly(ds) %>%
add_trace(
x = ~X, y = ~Y,
color = ~Z,
type = 'bar',
hoverinfo = 'text',
textposition = 'none') %>%
layout(bargap = 0.1, barmode = 'stack',
legend = list(orientation = 'v',
yanchor = "center",
y = 0.5,
font = list(size = 17)))
plt
附注我相信这与堆叠酒吧模式有关。如果您将其删除,图例的方向就会正确。问题是,我需要一个堆积条形图,并且需要按以下顺序(c(“糖”,“香料”,“一切都很好”,“化学X”)),从下到上,图例从上到下.
刚找到的。需要在图例列表内设置traceorder 参数。谢谢@maja zaloznik
layout(bargap = 0.1, barmode = 'stack',
legend = list(orientation = 'v',
yanchor = "center",
traceorder = "normal", y = 0.5,
font = list(size = 17)))