Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Figures captions and labels in knitr

I'm new to Knitr. I'm trying to make a report using r chunks, and I can't figure out how to use captions and labels to reference the figure later on. Here's an example of what I would like to do:

--- title: "Plotting"  author: "xx"  date: '2015-08-10'  output: pdf_document --- ```{r figs, echo=FALSE, fig.width=7,fig.height=6,fig.cap="plotting example"}      par(mfrow=c(2,2))     plot(1:10, col=2)     plot(density(runif(100, 0.0, 1.0)))     plot(runif(100, 0.0, 1.0),type="l") ```  in Figure \ref{fig:figs} we see examples of plotting in R. 

I would like to have a caption "Plotting example", and have a label, so I can use Figure \ref{fig.label} in the text. I have tried fig.cap and fig.lp, none of them works. I would appreciate if if someone can help.

like image 486
Noosh Avatar asked Aug 10 '15 18:08

Noosh


People also ask

How do you caption a figure?

Here are some tips on using captions: A figure caption is centered under the figure; a table caption is centered above the table (if a caption is more than one line, make it left justified). A Figure and its caption should appear on the same page. All captions should start with a capitalized word and end with a period.


1 Answers

You can achieve this by including fig_caption: yes in the header:

--- title: "Plotting" output:   pdf_document:     fig_caption: yes ---  ```{r figs, echo=FALSE, fig.width=7,fig.height=6,fig.cap="\\label{fig:figs}plotting example"} par(mfrow=c(2,2)) plot(1:10, col=2) plot(density(runif(100, 0.0, 1.0))) plot(runif(100, 0.0, 1.0),type="l") ```  in Figure \ref{fig:figs} we see examples of plotting in R. 

click here to see a screenshot

Note that the figure caption label should be included in the caption with a double backslash, as shown above.

like image 64
RHertel Avatar answered Oct 14 '22 20:10

RHertel