ggthemes icon indicating copy to clipboard operation
ggthemes copied to clipboard

Handle shape pallettes with unicode symbols

Open jrnold opened this issue 4 months ago • 0 comments

More robustly handle shape palettes with unicode symbols.

Right now the way it passes CRAN is to not run the examples with problematic palettes. The palettes will still raise a low-level error when a symbol cannot be converted on a

  • Catch errors and raise them with a more meaningful message for the user
  • Enforce the use of certain devices
  • ... Some better way to handle symbols?
❯ checking examples ... ERROR
  Running examples in ‘ggthemes-Ex.R’ failed
  The error most likely occurred in:
  
  > base::assign(".ptime", proc.time(), pos = "CheckExEnv")
  > ### Name: cleveland_shape_pal
  > ### Title: Shape palette from Cleveland "Elements of Graphing Data"
  > ###   (discrete).
  > ### Aliases: cleveland_shape_pal
  > 
  > ### ** Examples
  > 
  > ###   (discrete).
  > 
  > 
  > library("ggplot2")
  > p <- ggplot(mtcars) +
  +      geom_point(aes(x = wt, y = mpg, shape = factor(gear))) +
  +      facet_wrap(~am) +
  +      theme_bw()
  > # overlapping symbol palette
  > p + scale_shape_cleveland()
  > # non-overlapping symbol palette
  > p + scale_shape_cleveland(overlap = FALSE)
  Error in grid.Call.graphics(C_points, x$x, x$y, x$pch, x$size) : 
    conversion failure on '○' in 'mbcsToSbcs': for ○ (U+25CB)
  Calls: <Anonymous> ... drawDetails -> drawDetails.points -> grid.Call.graphics
  Execution halted

jrnold avatar Feb 09 '24 00:02 jrnold