以下标记说明了使用fig.topcaption=TRUE
字幕成功到达ggplot图形顶部但不使用 plotly 对象的字幕的问题。
我了解了图标题here。 fig.topcaption
的基础代码似乎生活在knitr中,尽管它与可绘图图形不兼容,或者可能与pandoc,与html / html窗口小部件相关,或者在从rmarkdown到最终输出的链。
我对现在的工作感到很满意-建议?
---
title: "Untitled"
author: "Internet"
date: "29 février 2020"
output:
bookdown::html_document2
---
```{r setup, message=FALSE, echo=FALSE}
library(knitr)
library(ggplot2)
library(plotly)
```
Here is a ggplot object with caption at the top as desired.
```{r, fig.cap="Hello ggplot", fig.topcaption=TRUE, message=FALSE, echo=FALSE}
ggplot(diamonds,aes(price,carat)) + geom_point()
```
Here is the previous ggplot converted to a plotly object with caption reverting to the bottom.
```{r, fig.cap="Hello plotly", fig.topcaption=TRUE, message=FALSE, echo=FALSE}
my_ggplot <- ggplot(diamonds,aes(price,carat)) + geom_point()
ggplotly(my_ggplot)
```
Caption reverts to bottom even if plotly object is not created from ggplot object
```{r, fig.cap="Hello plotly2", fig.topcaption=TRUE, message=FALSE, echo=FALSE}
plot_ly(
x=c(1,2,3),
y=c(5,6,7),
type='scatter',
mode='lines')
```
答案 0 :(得分:6)
以下trick将可用于HTML输出。
我们可以将图形格式化为表格(图像仅作为单元格),将段落(图形标题所在的位置)格式化为表格标题,并将其放在顶部。
只需将此CSS块放在YAML下:
```{css plotly-caption, echo = FALSE}
div.figure {
display: table;
}
div.figure p {
display: table-caption;
caption-side: top;
}
```