重新调整R ggplotly

Dai*_*ina 10 r plotly

我在使用情节R包时遇到了一些麻烦.我很擅长剧情,但我喜欢我可以使用类似ggplot的语法,所以我试图让它工作.

我创建了一个刻面图,您可以将鼠标悬停在数据点上,并查看有关该记录的详细信息.我对这个情节很满意,但是我想调整它的大小,所以每个情节的y轴都不是那么短,因为我想调整整个情节的高度和宽度.

就像我一样,我无法弄清楚如何覆盖默认的大小调整,我正在拉我的头发,因为我可以找到的所有示例都使用plot_ly()而不是ggplotly().除非我需要,否则我宁愿不重建情节只是为了调整尺寸.

我目前运行的代码非常简单:

plot <- ggplot(data = counts_country, aes(x = Year, y = Count, color = Region, text = paste("country:", Country))) +
  geom_point(size= 2, alpha = (1/2)) + 
  facet_wrap(~ Region, ncol = 1)

(gg_plot <- ggplotly(plot))
Run Code Online (Sandbox Code Playgroud)

你可以在这里看到我正在使用的确切内容:http: //rpubs.com/dbouquin/180894

我尝试调整情节以显示两排情节,但仍然有问题,因为年份标签被粉碎在一起.调整大小似乎就像我需要的一样.

onl*_*tom 8

我建议您更新到最新版本的plotly。

要查看您使用的是哪个版本:packageVersion("plotly")

然后,您可以将widthheight参数添加到ggplotly()函数调用中。

el <- as.data.frame(economics_long[,1:3])
econp <- ggplot(el, aes(date, value, group=variable)) + 
  geom_line()+
  facet_grid(variable ~ ., scale = "free_y")+
  labs(title="US Economic time series")

ggplotly(econp, height = 350, width=600)
Run Code Online (Sandbox Code Playgroud)

我要补充的一个额外建议是,如果您在 R Markdown 文档/R Notebook 中运行它,则图形本身可能还需要一些调整,以便您的绘图(实际上是一个htmlwidget)不会在尺寸过小的窗口中使用滚动条进行渲染。fig.width这可以通过和参数来完成fig.height

在此输入图像描述


roy*_*yr2 7

这是一个解决方法.似乎在R-Markdown文档中工作我估计你需要什么?它仍保留ggplot2语法但使用plotly_build()而不是ggplotly()

---
output: html_document
---

### Using ggplotly()
```{r, warning = F, message = F}
library(plotly)
library(dplyr)

gg <- mtcars %>% 
  ggplot(aes(wt, mpg, color = gear)) + 
  geom_point() + 
  facet_wrap(~hp)

ggplotly(gg)
```

### Using plotly_build()
```{r}
ggp_build <- plotly_build(gg)
ggp_build$layout$height = 800
ggp_build$layout$width = 600

ggp_build
```
Run Code Online (Sandbox Code Playgroud)

看起来像这样:

在此输入图像描述

在此输入图像描述


Car*_*son 7

就像plot_ly()ggplotly()有一个height和一个width论点,见?ggplotly

一般来说,始终设置height/是一种很好的做法width。如果您不这样做,并且您与其他人分享您的情节,则大小可能会因上下文而异。

这对于ggplotly(). 在打印时,为了转换事物的大小,它必须假设一个height/ width。如果您不指定这些,它将使用您的 R 图形设备的大小,并且我们不能总是保证调整大小行为与您从 R 图形设备获得的内容完全一致。