[R] Adding a legend to a (multi-facet) plot produced by ggplot().
Rolf Turner
r@turner @end|ng |rom @uck|@nd@@c@nz
Mon Dec 2 02:07:05 CET 2019
On 2/12/19 3:03 am, Rui Barradas wrote:
> Hello,
>
> See if this is it. The standard trick is to reshape the data from wide
> to long, see the SO post [1]. Then add a scale_shape_* layer to the plot.
>
>
> yyy <- cbind(xxx, y3 = y3)
> long <- reshape2::melt(yyy, id.vars = c("x", "y1", "grp"))
>
> ggplot(long, aes(x, y = value, colour = variable, shape = variable)) +
> geom_line(aes(y = y1)) +
> geom_point() +
> scale_colour_manual("Doesn't work",values=c("blue","red"),
> labels=c("clyde","irving")) +
> scale_shape_manual("Doesn't work",values=c(16,3),
> labels=c("clyde","irving")) +
>
> facet_grid(cols=vars(grp))
>
>
> [1]
> https://stackoverflow.com/questions/2185252/reshaping-data-frame-from-wide-to-long-format
>
>
> Hope this helps,
Almost there. However the colour of the line changes with "values" and
lines show up in the legend. I want the lines to be black in all
facets, and only points to show up in the legend.
I fiddled about a bit trying to achieve this but only succeeded in
messing things up completely.
Can you guide me a bit further, please?
cheers,
Rolf
--
Honorary Research Fellow
Department of Statistics
University of Auckland
Phone: +64-9-373-7599 ext. 88276
More information about the R-help
mailing list