Site icon R-bloggers

Exporting R graphics as LaTeX code – version 0.6.1 of the tikzDevice package is out

(Guest post on R-bloggers by Charlie Sharpsteen) Cameron and I are pleased to announce version 0.6.0 of the tikzDevice package which should be available shortly at your local CRAN mirror! The tikzDevice makes it possible to export R graphics as LaTeX code that can be included in other documents or compiled into stand alone figures. The full power of LaTeX is available for typesetting text and mathematical expressions inside figures produced using the tikzDevice. Over 80 commits have occurred since the release of 0.5.3 which have added exciting new features to the device. The most important addition is 0.6.0 is that the XeLaTeX compiler is officially supported. Compared to the PdfTeX engine, XeTeX has native support for Unicode which we hope will make the package more useful for producing graphics that contain text in languages outside the ASCII symbol table. 0.6.0 also provides support for including raster imagry in graphics and polypath drawing which catches the `tikz()` graphics device up with recent developments in the R graphics engine. There have also been some significant changes under the hood. Our package has migrated to using Roxygen for function documentation—a move that was greatly facilitated by the Rd2roxygen package written by Yihui Xie and Hadley Wickham. Our homebrewed testsuite has also been re-written on top of Hadley’s excellent test_that package.  Many thanks to the R community for writing great tools to support package development! The full changelog is appended to this email. For a detailed diff of changes since 0.5.3, see: https://github.com/Sharpie/RTikZDevice/compare/0.5.3…master With 80 commits, it is likely we introduced some exciting new bugs. Bug reports are welcomed at the GitHub issue tracker: https://github.com/Sharpie/RTikZDevice/issues The tikzDevice also has a mailing list provided by R-Forge: tikzdevice-bugs @at@ lists.r-forge.r-project.org Which is also accessible via Google Groups: https://groups.google.com/forum/#!forum/tikzdevice A rough roadmap for future package development can be found at: https://github.com/Sharpie/RTikZDevice/wiki/Roadmap Commentary and discussion is welcomed in the mailing list, patches containing bugfixes or features are welcomed on the issue tracker. -Charlie — ### Version: 0.6.1 Released: 4-14-2011 — #### Bug Fixes – Fixed a bug where `tikz` was not applying background color to the plot canvas. – Fixed a Vignette bug caused by an incorrect merge that was breaking the CRAN build. — ### Version: 0.6.0 — #### New Features – Unicode Support!!!! XeLaTeX may now be used calculate metrics and widths for Unicode characters. PdfLaTeX remains the default LaTeX compiler, but this may be changed by setting the global option `tikzDefaultEngine` to `xetex`. – New global option `tikzXelatexPackages` which contains packages necessary to use unicode characters with xelatex.  Specifically, the spec and the xunicode packages as well as the xetex option to the preview package. – New global option `tikzUnicodeMetricPackages` which contains the packages necessary to calculate metrics for multibyte unicode characters with xelatex. – New function anyMultibyteUTF8Characters() which will check if the given string contains any multibyte unicode characters.  Exposed in the package namespace since it is general and may be useful in other applications. – The TikZ device now fully supports the `Raster` graphics primitive that was added in R 2.11.0 and no longer throws “not implemented” warnings when this functionality is used. This is accompilshed by writing raster images to PNG files, `Rplots_ras#.png`, which are then included in the main TeX file `Rplots.tex`. – The TikZ device now fully supports the `polypath` graphics primitive that was added in R 2.12.0 and no longer throws “not implemented” warnings when this functionality is used. #### Bug Fixes – Fixed a bug where the `lwd` parameter used to control line widths was declared by tikzDevice to be of type `int` when it is actually a `double`. This was causing line widths to be ignored or miscalculated. Many thanks to Baptiste Auguie for reporting this issue. #### Depreciation Notices – Versions of R < 2.11.0 are no longer supported due to lack of required functions for handling Unicode strings. #### Behind the Scenes – New Makefile for executing common development tasks. – Package documentation now handled by `roxygen`.  Many thanks to Hadley Wickham and Yihui Xie for the `Rd2roxygen` package which facilitated this switch. – Package test suite completely overhauled and now based on Hadley Wickham’s `test_that` unit testing framework.