style = style_glydraw(...) across
draw_cartoon(), glycanGrob(),
geom_glycan(), guide_glycan(),
scale_x_glycan(), scale_y_glycan(),
anno_glycan(), and export_cartoons(); calls
that pass fuc_orient, edge_linewidth,
node_linewidth, node_size,
font_family, or colors directly should move
those arguments into style_glydraw().
show_linkage and orient remain explicit
arguments and are no longer accepted by style_glydraw(),
while explicit red_end overrides the reusable style value.
(#73, #79)colors now accepts a complete SNFG palette in the
format returned by glydraw_colors(); sparse monosaccharide
overrides are no longer supported. (#72)glydraw_style() has been renamed to
style_glydraw() and is no longer exported; replace calls to
glydraw_style() with style_glydraw().
(#73)orient no longer accepts "H" or
"V"; calls using them now error and should replace
"H" with "left" and "V" with
"up". (#68)red_end in style_glydraw(),
style_glygen(), style_snfg(), and
style_glycoworkbench() must now be a string. Set
red_end_length = 0 to omit the reducing-end line and ignore
any red_end wave or custom text while retaining its
axis-aligned core anomer annotation. Explicit
red_end = NULL on drawing interfaces continues to inherit
red_end from style. (#80)anno_glycan() uses glycan cartoons as row or column
labels in ComplexHeatmap heatmaps, with clustering-aware ordering and
the sizing, anchoring, rotation, nudging, and styling controls of glycan
axis scales. (#67)draw_cartoon_sketch() draws hand-sketched glycan
cartoons with reproducible rough strokes, patterned residue fills,
optional drawing media, and the same layout, annotation, orientation,
highlighting, styling, sizing, and saving behavior as
draw_cartoon(). Sketch cartoons always use their
handwriting font, ignoring font_family in style presets.
(#77, #81)font_family style option controls the font used for
text annotations across glycan cartoons, including alpha and beta anomer
labels. (#69)geom_glycan() and geom_node_glycan() gain
an alpha aesthetic. Each cartoon is composited before
transparency is applied so nodes continue to occlude the linkage edges
beneath them. Graphics devices without alpha-mask and transformation
support throw an error for non-opaque values rather than render an
inaccurate cartoon. (#85)geom_glycan(),
geom_node_glycan(), guide_glycan(),
scale_x_glycan(), and scale_y_glycan() now
remain vector graphics at every size when exported to PDF or SVG;
draw_cartoon() and repeated panel structures also render
more efficiently with native grid primitives without changing cartoon
layout or appearance. (#64, #65, #66)orient now accepts "left",
"right", "up", and "down" to draw
glycans in any direction. (#68)red_end now accepts amino-acid sequences with one
tagged glycosite, such as
"ABC<site>D</site>EFG". The site is bold and
anchored to the reducing end, and the sequence rotates with the glycan
orientation. (#78, #82)red_end_length style option controls the length of the
reducing-end line; at 0, the line and all
red_end decorations are omitted while the axis-aligned core
anomer annotation remains. (#80)red_end_size style option controls the size of custom
red_end text without changing the "~" wave.
(#83)scale_x_glycan(), scale_y_glycan(), and
anno_glycan() gain an orient argument. Its
NULL default automatically selects a drawing orientation
from the displayed axis position or annotation side. Default
justification follows compatible position-orientation combinations and
centers other combinations. (#84)style_glydraw() is the reusable interface for tuning
cartoon appearance; new style_glygen(),
style_snfg(), and style_glycoworkbench()
presets support common glycan-drawing conventions. (#73, #79)draw_cartoon() now renders Hex residues as
smooth, device-native circles across standalone cartoons and embedded
glycan grobs. (#76)style_glydraw(node_size = ...) now distributes
linkage-annotation spacing adjustments across the node-to-label and
label-to-label gaps, keeping linkage notation readable with enlarged
nodes. (#74)This version of glydraw introduced some ggplot2
extensions.
glydraw_style() stores reusable glycan rendering
options for standalone cartoons, grobs, export, ggplot2 layers, guides,
and glycan scales. Explicit rendering arguments override the style.
(#55)geom_glycan() draws glycan cartoons for individual
observations in ggplot2 plots, with support for size, rotation,
justification, and cartoon appearance.geom_node_glycan() draws glycan cartoons as nodes
in ggraph network plots, with automatic node positioning and filtering
support. (#61)guide_glycan() displays glycan cartoons in ggplot2
legends.scale_x_glycan() and scale_y_glycan()
display glycan cartoons as discrete ggplot2 axis labels.hjust_red_end() and vjust_red_end()
anchor vertical and horizontal cartoons at their reducing ends in
geom_glycan(), scale_x_glycan(),
scale_y_glycan(), and guide_glycan().
guide_glycan() also gains hjust and
vjust parameters. Reducing-end justification is the default
for scale and guide cartoons along the axis perpendicular to their
drawing orientation; geom_glycan() remains centered by
default. (#54)draw_cartoon() now places double core Fuc branches on
opposite sides of the core GlcNAc when linkage positions are
unavailable, keeping both connections visible. (#59, #60)draw_cartoon() now treats generic dHex
residues as Fuc-like branches, using the same layout and
fuc_orient behavior as Fuc. (#56)export_cartoons() no longer supports
glyexp::experiment() input, and glyexp is no
longer a package dependency. (#33)arg = value instead. (#40)colors parameter to draw_cartoon()
and export_cartoons() for customizing monosaccharide fill
colors. (#44)fuc_orient parameter to
draw_cartoon() and export_cartoons() for
choosing whether Fuc triangles always point upward or flex toward their
linkage direction. (#42)scale parameter to save_cartoon()
and export_cartoons() for changing output pixel dimensions
while preserving cartoon appearance. (#35)node_size parameter to
draw_cartoon() and export_cartoons() for
scaling residue cartoon sizes. Values larger than 2 are
rejected because residues overlap. (#36)edge_linewidth and node_linewidth
parameters to draw_cartoon() and
export_cartoons() for customizing linkage line and node
border widths. (#34)red_end parameter to
draw_cartoon() and export_cartoons() for
custom reducing-end text or a wavy reducing-end annotation. (#31)draw_cartoon() for structures with two core Fuc
branches and one b1-4 GlcNAc branch, avoiding an igraph vertex-selection
error and keeping the b1-4 GlcNAc aligned with the core GlcNAc.
(#45)dpi for save_cartoon() and
export_cartoons() because glydraw uses an internal fixed
design scale. Supplying dpi now warns that the argument is
ignored. (#35)show_linkage = FALSE. (#41)orient = "V". (#43)ggview is no longer dependent. (#27)orient = "V". (#24)export_cartoons() create the output directory when
needed. (#17)export_cartoons() use vector names as output
filenames when available. (#17)mono_size parameter of
draw_cartoon(). (9b05e6c)highlight parameter to
draw_cartoon(). (7e57a54, 3745ec8, c1057ba)export_cartoons() to save multiple glycan structure
cartoons to files. (e1ac3c3)save_cartoon(). (fed89b9)border_px and path parameters
from save_cartoon().ggview instead of ggimage for
size fixing, which relies on rstudioapi::viewer() to
display the plot. You might feel some difference in the display effect,
but the SNFG itself keeps the same.draw_cartoon() is changed into
draw_cartoon(structure, mono_size = 0.2, show_linkage = TRUE, orient = "H", ...)
for better semantics.draw_cartoon() now prints fixed-size cartoon (sizes are
calculated based on glycan structures) to the plot panel, to provide a
unified behavior with save_cartoon().draw_cartoon().path parameter is mandatory in
save_cartoon(). Now it is optional, to be in line with
ggplot2::ggsave().save_cartoon() to differentiate
it with ggplot2::ggsave().