首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >缩放“画图”时调整几何尺寸

缩放“画图”时调整几何尺寸
EN

Stack Overflow用户
提问于 2018-11-02 20:23:18
回答 1查看 479关注 0票数 1

ggiraph包扩展了ggplot2以添加交互性。其中一项功能是能够放大一个地块,例如使用以下代码:

代码语言:javascript
复制
library(ggplot2)
library(ggiraph)

data(mtcars)

mtcars$model <- rownames(mtcars)

gg <- ggplot(mtcars, aes(x = mpg, y = disp)) +
  geom_point_interactive(aes(color = as.factor(cyl),
                             tooltip = model))

girafe(ggobj = gg) %>%
    girafe_options(opts_zoom(max = 5),
                   opts_tooltip(use_fill = TRUE))

预览时,可以通过单击放大镜和滚动来放大图表。当用户缩放时,点会增大,但是工具提示保持相同的大小。

是否可以在缩放时调整几何尺寸(例如点半径或线厚)?

这可能有很多有用的理由,但我特别考虑的是过度绘制--我有一个密集的数据集,但是放大没有帮助,因为这些点仍然相互覆盖。

我之所以使用ggiraph,是因为它是对ggplot2的简单扩展,但是如果有类似的包,我将向其他解决方案开放。

EN

回答 1

Stack Overflow用户

发布于 2018-11-04 12:28:37

首先,您的代码是不可复制的,因为model不可用,所以我假设您已将mtcars的行名分配给向量model

我不认为您可以在ggiraph中做到这一点,但是在plotly中很简单:您可以生成一个ggplot对象,并使用plotly::ggplotly()简单地将其转换为plotly对象。

对于问题中的mtcars示例,下面的技巧如下:

代码语言:javascript
复制
library(plotly)

data(mtcars)

# generate ggplot object
gg <- ggplot(mtcars) + 
  geom_point(aes(x = mpg, y = disp, col  = as.factor(cyl), text = rownames(mtcars))) 

# convert to plotly object
ggplotly(gg, tooltip = "text")

结果看起来像一个ggplot2,但是是交互式的,并且不受缩放问题的影响。您可以在查看器中使用它,以支持HTML小部件的输出格式包含它,或者在浏览器中查看它。

由于上面仅仅是截图,所以我将输出上传到了plot.ly上的帐户。你可以找到它,这里,并玩它。

我希望这能帮到你!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53125366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档