/unigd

Unified graphics device

Primary LanguageC++

unigd

R-CMD-check CRAN downloads Codecov test coverage

A unified R graphics backend. Render R graphics fast and easy to many common file formats.

This package provides a thread-safe interface to power interactive graphics clients such as httpgd.

Features

  • Fast plotting
  • Plot resizing and history
  • Render to various image formats (SVG, PNG, PDF, EPS, ...)
  • In-memory access to rendered graphics
  • Platform independent
  • Stateless thread-safe C client API for package developers

Installation

You can install the development version of unigd from GitHub with:

# install.packages("remotes")
remotes::install_github("nx10/unigd")

See system requirements for troubleshooting.

Getting started

See the guide for more details.

Contributions welcome!

unigd is mostly written in C++, but contributions to the tests (in R) or the documentation are also always welcome!

About & License

Depends on cpp11 and systemfonts.

Much of the font handling and SVG rendering code is modified code from the excellent svglite package.

This project is licensed GPL v2.0.

It includes parts of svglite (GPL ≥ 2) and fmt (MIT).

Full copies of the license agreements used by these components are included in ./inst/licenses.