I am having a problem making ggplot2, tikzDevice, and knitr working together. I am working with RStudio, and trying to include some R graphics in a Latex document. I used a very simple example:
\documentclass{article}
\begin{document}
\begin{figure}
<<fig1,eval=TRUE,echo=FALSE,dev='tikz'>>=
library(ggplot2)
library(tikzDevice)
qplot(displ, hwy, data = mpg, colour = factor(cyl))
@
\end{figure}
\end{document}
But no pdf is output, and I get the following error message:
Error in getMetricsFromLatex(TeXMetrics) :
TeX was unable to calculate metrics for the following string
or character:
hwy
Common reasons for failure include:
* The string contains a character which is special to LaTeX unless
escaped properly, such as % or $.
* The string makes use of LaTeX commands provided by a package and
the tikzDevice was not told to load the package.
The contents of the LaTeX log of the aborted run have been printed above,
it may contain additional details as to why the metric calculation failed.
Calls: knit ... widthDetails.text -> grid.Call -> <Anonymous> -> getMetricsFromLatex
Execution halted
This problem has been treated here, but the solution proposed does not work for me. Any idea?
Perhaps a clash with another package you haven't included in your simple example? For me, I was getting this error message because of some clash between package xcolor
and tikz
. I was calling xcolor
before Tikz
, no problem, but as soon as I set dev="tikz"
in the chunk options I got the same error as you. As soon as I removed \usepackage{xcolor}
everything worked.
I added in the R code
options(tikzMetricPackages = c("\\usepackage[utf8{inputenc}",
"\\usepackage[T1]{fontenc}", "\\usetikzlibrary{calc}", "\\usepackage{amssymb}"))
source
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With