jrnold / ggthemes

Additional themes, scales, and geoms for ggplot2
http://jrnold.github.io/ggthemes/
1.31k stars 229 forks source link

Handle shape pallettes with unicode symbols #164

Open jrnold opened 7 months ago

jrnold commented 7 months ago

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

❯ 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