NEWS.md

glyph 0.2.0

Breaking changes

r # Before glyph(mtcars, x = wt, y = mpg) |> mark_point() |> scale("y", zero = TRUE) # After glyph(mtcars, x = wt, y = mpg) |> mark_point() |> set_scale("y", zero = TRUE)

Base uses of scale() work again and need no change. scale_color(), scale_log() and scale_time() keep their names. library(glyph) no longer masks any function. The compiled JSON (compile()$json and export(..., "plot.json")) has a new data layout, marked by "$schema": "glyph/v0.2" (#8). Data is {"columns": {...}, "n": rows}, and a mark that draws the plot's data has {"from": "plot", "fields": [...], "rows": [...]}, where rows is null or lists the 0-based rows it keeps after dropping missing values. Boxplot, violin, histogram and polygon marks send {"values": [...]}, one record per box, violin, bin or shape. Code that reads JSON written by glyph 0.1 needs updating. compile(engine = ...) accepts only "auto" and "html", and gives an error for anything else. It used to accept "canvas" and "webgl" and pick one by data size, but no such renderer has ever existed, so the choice did nothing. The D3 and SVG renderer is the only one. * Printing a compose() layout at the console now draws it, as printing a single plot does (#13). The text description it used to print comes from the new summary.glyph_layout().

New features

Bug fixes

glyph 0.1.1

glyph 0.1.0



Try the glyph package in your browser

Any scripts or data that you put into this service are public.

glyph documentation built on Oct. 21, 2026, 5:12 p.m.