ggplot 和 ggplotly 之间图例位置的差异?

Difference in legend position between ggplot and ggplotly?

我发现 ggplot 和 ggplotly 中的同一张图表之间有一个有趣而奇怪的区别

income_gap_chart <- ggplot(income_gap, aes(x = Country, y = Percent, fill = Income)) + 
geom_bar(position = "dodge", stat = "identity") +
scale_fill_brewer(palette = "Set1") +
coord_flip() +
theme(axis.title.y = element_blank()) +
scale_y_continuous(limits = c(0, 100)) +
theme_tufte() +
theme(axis.title.y = element_blank()) +
theme(legend.position = "bottom")

对于 ggplot 它看起来很完美,底部有图例标题

但是当我用 ggplotly() 包装它时,图例开始表现不同

我的问题 - 我想要第一个 ggplotly 格式的图表,但无法解决这个问题,底部的图例也不起作用。想法?

谢谢!

在一些 R 专家的帮助下很快解决了。

添加了这个

ggplotly(income_gap_chart) %>% layout(legend = list(orientation = "h", x = 0.4, y = -0.2))

结果:

谢谢!

解决方案似乎删除了评论中指出的图例标题。通过在 layout():

中包含 title = ... 很容易解决这个问题
diamonds_chart <- ggplot(diamonds, aes(x = cut, y = carat, fill = color)) + 
  geom_bar(position = "dodge", stat = "identity")
  
diamonds_chart %>% 
  ggplotly %>% 
  layout(
    legend = list(
      orientation = 'h', x = 0.3, y = -0.1, 
      title = list(text = 'My legend title')
      )
    )