[R] how to specify point symbols in the key on a lattice dotplot

Bert Gunter bgunter@4567 @end|ng |rom gm@||@com
Fri Sep 13 19:45:08 CEST 2024


"Why does key = list(points = 16:17)  not work? "

Because, from the "key" section of ?xyplot
" The contents of the key are determined by (possibly repeated)
components named "rectangles", "lines", "points" or "text". Each of
these must be **lists** with relevant graphical parameters (see later)
controlling their appearance."

Ergo, try:

dd |> dotplot( segment ~ transit_time, groups = impact,  data = .,
                pch = 16:17,
                cex = 1.8,
                scales = list(cex = 1.4),
                key = list(points = list(pch =16:17) ))

Cheers,
Bert


On Fri, Sep 13, 2024 at 9:53 AM Christopher W. Ryan
<cwr using agencystatistical.com> wrote:
>
>
> dd %>% dotplot( segment ~ transit_time, groups = impact,  data = .,
>                pch = 16:17,
>                cex = 1.8,
>                scales = list(cex = 1.4),
>                key = list(points = 16:17) )
>
> produces a graph with no discernible key, but with an asterisk at the
> top, above the plotting region.
>
> Same result from
>
> dd %>% dotplot( segment ~ transit_time, groups = impact,  data = .,
>                pch = 16:17,
>                cex = 1.8,
>                scales = list(cex = 1.4),
>                key = list(points = 16:17),
>                auto.key = TRUE )
>
>
>
>
> dd %>% dotplot( segment ~ transit_time, groups = impact,  data = .,
>                scales = list(cex = 1.4),
>                par.settings = simpleTheme(pch = 16:17, cex = 1.8),
>                auto.key = TRUE)
>
> produces the desired result.
>
> Why does key = list(points = 16:17)  not work?  Below is a MWE:
>
> ================================
>
> library(lattice)
> library(dplyr)
> dd <- structure(list(impact = structure(c(1L, 1L, 1L, 1L, 2L, 2L, 2L,
> 2L), levels = c("impaction", "no impaction"), class = "factor"),
>     segment = structure(c(4L, 2L, 1L, 3L, 4L, 2L, 1L, 3L), levels =
> c("left", "right", "rectosigmoid", "total"), class = c("ordered",
> "factor" )), transit_time = c(70, 10, 20, 32, 42, 10, 12, 18)), class =
> "data.frame", row.names = c(NA, -8L))
>
> dd %>% dotplot( segment ~ transit_time, groups = impact,  data = .,
>                pch = 16:17,
>                cex = 1.8,
>                scales = list(cex = 1.4),
>                key = list(points = 16:17) )
>
> =================================
>
>
> Thanks.
>
> --Chris Ryan
> --
> Agency Statistical Consulting, LLC
> Helping those in public service get the most from their data.
> www.agencystatistical.com
>
> Public GnuPG email encryption key at
> https://keys.openpgp.org
> 9E53101D261BEC070CFF1A0DC8BC50E715A672A0
>
>
> On Fri, 13 Sep 2024 08:29:20 +0100, CALUM POLWART wrote:
>
> >Add:
> >
> >key = list(points=16:17)
> >
> >Into the dotplot section possibly without the autokey
> >
> >On Fri, 13 Sep 2024, 08:19 Christopher W. Ryan,
> ><cwr using agencystatistical.com> wrote:
> >
> >> I am making a dotplot with lattice, as follows:
> >>
> >> dd %>% dotplot( segment ~ transit_time, groups = impact,  data = .,
> >>                as.table = TRUE,
> >>                 pch = 16:17,
> >>                 cex = 1.8,
> >>                 scales = list(cex = 1.4),
> >>                auto.key = TRUE)
> >>
> >> impact is a factor with two levels.
> >>
> >> They key shows 2 open circles, one of each color of my two
> >> plotting symbols, one for each group. I would like the
> >> symbols in the key to match the plotting characters in the graph: 16
> >> (filled circle) for one group and 17 (filled triangle) for the second
> >> group.  How would I do that? I have not had any success with
> >> supplying arguments to auto.key, simpleKey, or key. Guess I'm not
> >> understanding the syntax.
> >>
> >> Thanks.
> >>
> >> --Chris Ryan
> >>
> >> --
> >> Agency Statistical Consulting, LLC
> >> Helping those in public service get the most from their data.
> >> www.agencystatistical.com
> >>
> >> Public GnuPG email encryption key at
> >> https://keys.openpgp.org
> >> 9E53101D261BEC070CFF1A0DC8BC50E715A672A0
> >>
> >> ______________________________________________
> >> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> >> https://stat.ethz.ch/mailman/listinfo/r-help
> >> PLEASE do read the posting guide
> >> https://www.R-project.org/posting-guide.html
> >> and provide commented, minimal, self-contained, reproducible code.
> >>
>
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide https://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list