$shapes data frame for n_all sets. Rows for empty
sets keep NA in every column so downstream plotting can detect them via
is.na(shapes$h) regardless of shape kind.Allocate a fresh $shapes data frame for n_all sets. Rows for empty
sets keep NA in every column so downstream plotting can detect them via
is.na(shapes$h) regardless of shape kind.
new_shape_frame(shape, n_all, row_names)the shape kind to tag every row with
number of rows (sets) to allocate
row names to give the frame