Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R Plotly ggplot堆叠条形图在单击图例时消失_R_Ggplot2_Shiny_Plotly - Fatal编程技术网

R Plotly ggplot堆叠条形图在单击图例时消失

R Plotly ggplot堆叠条形图在单击图例时消失,r,ggplot2,shiny,plotly,R,Ggplot2,Shiny,Plotly,我不知道为什么,但当单击图例时,我的堆叠条形图将消失,而不是落在轴上。我附上了从plotly网站复制的示例的屏幕截图,代码如下: library(plotly) DF <- read.table(text="Rank F1 F2 F3 1 500 250 50 2 400 100 30 3 300 155 100 4 200 90 10", header=TRUE) library(reshape

我不知道为什么,但当单击图例时,我的堆叠条形图将消失,而不是落在轴上。我附上了从plotly网站复制的示例的屏幕截图,代码如下:

library(plotly)

DF <- read.table(text="Rank F1     F2     F3
1    500    250    50
2    400    100    30
3    300    155    100
4    200    90     10", header=TRUE)

library(reshape2)
DF1 <- melt(DF, id.var="Rank")

p <- ggplot(DF1, aes(x = Rank, y = value, fill = variable)) +
  geom_bar(stat = "identity")

p <- ggplotly(p)
library(plotly)

DF您可以直接使用plotly API,而不是ggplotly,这样它就可以按预期工作:

plot_ly(DF1) %>%
  add_bars(~Rank, ~value, color=~variable) %>%
  layout(barmode = 'stack')
如果还需要在R Markdonw文档中嵌入静态版本的绘图,可以使用
export()
函数创建静态版本:

---
title: "Untitled"
output: word_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

## R Markdown

Here's a barchart:

```{r chart}
library(plotly)
library(reshape2)

DF <- read.table(text="Rank F1     F2     F3
                 1    500    250    50
                 2    400    100    30
                 3    300    155    100
                 4    200    90     10", header=TRUE)
DF1 <- melt(DF, id.var="Rank")

p = plot_ly(DF1) %>%
  add_bars(~Rank, ~value, color=~variable) %>%
  layout(barmode = 'stack')
export(p)
```
---
标题:“无标题”
输出:word\u文档
---
```{r设置,include=FALSE}
knitr::opts_chunk$set(echo=TRUE)
```
##降价
这是一张条形图:
```{r图}
图书馆(绘本)
图书馆(E2)
DF%
布局(barmode='stack')
出口(p)
```

我可以知道使用ggplotly和plotly API的区别吗?我需要使用ggplot,因为我也在rmarkdown中渲染图表。但是如果我只使用plot,我将无法在rmarkdown中渲染它。有没有办法用ggplotly解决这个问题?你能添加一个mardown文档的示例(和导出类型-即pdf或html等)吗。通常,您可以使用
export()
以其他文档类型呈现plotly图形。对于html输出,可以嵌入交互式plotly图表-请参见我将markdown文档导出为.docx格式(非交互式)。但我似乎无法传入绘图图表并将其作为静态图像输出。所以我必须依靠ggplot来做到这一点。在这种情况下,您建议我如何在选择图例时解决缺少的堆叠条形图?正如我在前面的评论中所说,您可以使用
export
将其嵌入到标记文档中。请参阅编辑以获得更详细的解释我尝试了使用您建议的导出方法,但似乎仍然无法在word文档中将绘图图表导出为.png。此外,保存文档所需的时间比使用ggplot要长得多。你知道为什么会这样吗?