-1

So, I have several boxplots, where we're doing pairwise comparisons. My supervisors wants me to draw data points on the boxplots (sure), and since we're comparing pairwise, she wants me to use a different symbol for each replicate. I.e. sample 1 is a circle in every box plot, sample 2 is a square, sample 3 is a triangle and so on. So that it's easy to visually see which replicates went up or down etc. between treatments.

Problem: I have just *slightly *too many replicates to get a good selection of symbols. I'd rather not mixed filled symbols like pch 15 and line symbols like pch 8 in the same graph, it looks weird and makes some much more visible than others.

Is there some way to get more symbol shapes? A library, a way to draw my own, anything? Some googling hasn't thrown up anything useful.

So far, I've plotted different versions to see what they would look like, spent some time on google, tried to find helpful packages and libraries. Even tried just swapping in my own symbols in inkscape post-hoc, but that was annoyingly work-intensive.

  • Coul you please share some code and reproducible data using `dput`? – Quinten Sep 01 '23 at 07:54
  • There is a lot of solutions with unicode but a data sample and code example would help – Yacine Hajji Sep 01 '23 at 08:38
  • 3
    Welcome! The examples at the bottom of the help page `?graphics::points` show a couple of extra symbols, and you can also use letters like `pch = 'a'`. However, it would be optimistic to expect that comparing symbol shapes makes it 'easy' to compare the fate of 30+ observations (as opposed to e.g. a parallel plot: https://r-graph-gallery.com/parallel-plot.html). But, well, assignment is assignment. – I_O Sep 01 '23 at 08:47
  • 1
    Definitely a case of assignment is assignment. I just want to get this down to show to my supervisor and argue how very, well, not helpful or clear it is. Thank you, pch = "a" already helps. – user3510983 Sep 01 '23 at 09:02
  • I generally dislike when I need anywhere near the 25 standard `pch` symbols, going beyond it presents a perception problem, as already suggested. Using letters can extend that (as you've learned). https://stackoverflow.com/q/2181902/3358272 has some examples of using _images_ as points (using `ggplot2`). As a mitigating step, if your replicates have any grouping variables (e.g., gender, state/country, etc), you might use other aesthetics such as color (red=US, green=UK, etc), which allows you to recycle some characters. – r2evans Sep 01 '23 at 12:58
  • That's what I suggested, yes. There's four subpopulations, and I suggested shading them, but we already use colours for something else in the same graph and she thinks it's confusing. I'd be rather tempted to throw out the entire thing and start over. – user3510983 Sep 01 '23 at 13:17

0 Answers0