2016-13 ‘DOM’ Version 0.3

This report describes changes in version 0.3 of the ‘DOM’ package for R. This version represents a major refactoring of the package code, including its user-facing API. These changes were made in order to facilitate the addition of new features to the package, which in this version include: a new way to refer to DOM nodes from R code that allows building web page content “off screen”; and greater flexibility in how requests are made from R to a web browser and vice versa.

Paul Murrell


2013-8 Selection and Navigation of Overlapping SVG Objects

SVG is a vector graphic image format that can be used with
browsers to deploy dynamic, interactive graphics over the web. We
present a method that enables generalised Selection and Navigation of
Overlapping SVG Objects by toggling pointer-events CSS styles and the
use of the mousewheel, adding another tool developers can use to grant
users greater and more intuitive interaction with SVG images. We also
present several live examples that demonstrate the method in practice,
both on script generated SVG images and an externally generated SVG image

Jimmy Oh

Read more

2013-4 Generating Structured and Labelled SVG

This article discusses the importance of providing structure and labelling within SVG code, particularly when the SVG code is generated indirectly by a high-level system and when the SVG code describes a complex image such as a statistical plot. We argue that this is a desirable goal, but that many high-level systems that generate SVG do not provide sufficient structure and labelling. An example of a system, based on R, that does provide structure and labelling, is described to demonstrate that the goal is acheivable and we highlight the crucial features of this system that we see as important factors in achieving this goal.

Paul Murrell and Simon Potter.


2013-3 Generating unique names in gridSVG

The gridSVG package exports grid images to the SVG image format for viewing on the web. This article describes the problems associated with retaining grid object names in SVG element id attributes. In addition, new features in gridSVG that allow manipulation and retrieval of generated id attributes are discussed. These new features allow for easier and more predictable development of interactivity in plots generated by gridSVG.

Simon Potter and Paul Murrell


2013-1 TimingManager: Animation Sequences in JavaScript

The TimingManager library is a tool written in JavaScript used to apply animations in a web browser. It is not concerned with creation or modification of animation timing information, and delegates those tasks to R via the animaker package. Primarily TimingManager is focused on assigning actions to existing animations, then playing animation sequences using either a declarative or frame-based approach.

Simon Potter


2012-6 Working with the gridSVG Coordinate System

The gridSVG package exports grid images to an SVG format for viewing on the web. This article describes new features in gridSVG that allow grid coordinate system information to be exported along with the image. This allows the SVG image to be modified dynamically in a web browser, with full knowledge of coordinate system information, such as the scales on plot axes. As a consequence, it is now possible to create more complex and sophisticated dynamic and interactive R graphics for the web.

Simon Potter and Paul Murrell