我一直在调整plotly和R中的图例。有一件事我无法弄清楚的是如何(如果可能的话)重新定位图例项,以便它们水平列出并位于图下方的中心。默认图例项垂直放置并位于图的右侧,如下所示:
plot_ly(data = iris, x = Sepal.Length, y = Petal.Length, mode = "markers", color = Species)
我能够得到下面的图例,并通过以下方式将其居中到图中:
plot_ly(data = iris, x = Sepal.Length, y = Petal.Length, mode = "markers", color = Species) %>% layout(legend = list(x = 0.35, y = -0.5))
然而,我注意到这个图例的位置会根据我如何查看图(我在图窗口中的尺寸等)而变化。因此,图例有时会意外地与图重叠(由于位置太高)或与图分开一段很大的距离(由于位置太低)。下面是图例位置太低的示例图像:
此外,当将图例放置在图下方时,将图例项水平列出(而不是垂直列出)可能看起来更好。在本例中,将virginica,versicolor和setosa从左到右列出(而不是从上到下)。因此,理想情况下看起来如下所示:
是否有可能获得这一点-也就是说,一个图例位于图的中心和下方(不随窗口大小改变位置),同时水平列出其项目?
1条答案
按热度按时间v7pvogib1#
根据文档,以下内容应该可以做到这一点:
它将图例方向设置为“水平”,然后将锚(我们指定的位置)设置为图例的中心,然后将其定位在x轴的中间。这将导致下图: