Вы можете использовать API plotly напрямую, а не 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)
```