【问题标题】:How to change legend position in ggvis?如何更改ggvis中的图例位置?
【发布时间】:2016-02-12 10:00:01
【问题描述】:

我想更改图例在ggvis 图中的默认位置。

library(ggvis)
data(mtcars)

mtcars %>% 
    ggvis(x=~wt, y = ~mpg, fill = ~cyl) %>%
    layer_points()

默认情况下,图例在右侧。怎么放在上面?

使用ggplot,您可以简单地实现这一点,但我找不到任何类似的方法来使用ggvis

library(ggplot2)
mtcars %>% 
    ggplot(aes(x=wt, y=mpg, fill=cyl)) +
    geom_point() + 
    theme(legend.position = 'top')

This thread 建议到目前为止您无法更改图例的方向,但位置也是如此吗?

【问题讨论】:

    标签: r ggvis


    【解决方案1】:

    查看?add_legend?legend_props。我不认为你可以做 position=top 等,但你可以使用数据的 x 和 y 范围将图例准确地定位在中间顶部,就像 ggplot() 中的 position='top' 一样。

    mtcars %>% 
        ggvis(x=~wt, y = ~mpg, fill = ~cyl) %>%
        layer_points() %>%
        add_legend("fill", properties=legend_props(
                   legend=list(x=scaled_value("x", 3.25), y=scaled_value("y", 40))
        )
    )
    

    【讨论】:

    • 谢谢。奇怪的是,如果我也添加工具提示,图例就会消失.... %>% add_tooltip(function(x) x$wt)
    • 您是否观察到与add_tooltip() 相同的行为?
    • 是的,不幸的是我不太可能解决这个问题,也许发布一个新的 Q?欢呼
    • Here 就是答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-29
    • 2020-08-30
    • 2021-12-28
    • 1970-01-01
    • 2021-11-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多