R: geom dl

geom_dl {directlabels} | R Documentation

## geom dl

### Description

Geom that will plot direct labels.

### Usage

    geom_dl(mapping = NULL, data = NULL, ..., method = stop("must specify method= argument"),
        debug = FALSE, na.rm = TRUE, parse = FALSE, stat = "identity",
        position = "identity", inherit.aes = TRUE)

### Arguments

`mapping` | aes(label=variable_that_will_be_used_as_groups_in_Positioning_Methods).
`data` | data.frame to start with for direct label computation.
`...` | passed to params.
`method` | Positioning Method for direct label placement, passed to apply.method.
`debug` | Show directlabels debugging output?
`na.rm` | passed to params.
`parse` | parse text labels as plotmath expressions? not yet supported, but I would be open to accepting a PR if somebody wants to implement that.
`stat` | passed to layer.
`position` | passed to layer.
`inherit.aes` | inherit aes from global ggplot definition?

### Author(s)

Toby Dylan Hocking

### Examples

    if(require(ggplot2)){
      vad <- as.data.frame.table(VADeaths)
      names(vad) <- c("age","demographic","deaths")
      ## color + legend
      leg <- ggplot(vad,aes(deaths,age,colour=demographic))+
        geom_line(aes(group=demographic))+
        xlim(8,80)
      print(direct.label(leg,list("last.points",rot=30)))
      ## this is what direct.label is doing internally:
      labeled <- leg+
        geom_dl(aes(label=demographic), method=list("last.points",rot=30))+
        scale_colour_discrete(guide="none")
      print(labeled)
      ## no color, just direct labels!
      p <- ggplot(vad,aes(deaths,age))+
        geom_line(aes(group=demographic))+
        geom_dl(aes(label=demographic),method="top.qp")
      print(p)
      ## add color:
      p+aes(colour=demographic)+
        scale_colour_discrete(guide="none")
      ## add linetype:
      p+aes(linetype=demographic)+
        scale_linetype(guide="none")
      ## no color, just direct labels
      library(nlme)
      bwbase <- ggplot(BodyWeight,aes(Time,weight,label=Rat))+
        geom_line(aes(group=Rat))+
        facet_grid(.~Diet)
      bw <- bwbase+geom_dl(method="last.qp")
      print(bw)
      ## add some more direct labels
      bw2 <- bw+geom_dl(method="first.qp")
      print(bw2)
      ## add color
      colored <- bw2+aes(colour=Rat)+
        scale_colour_discrete(guide="none")
      print(colored)
      ## or just use direct.label if you use color:
      direct.label(bwbase+aes(colour=Rat),dl.combine("first.qp","last.qp"))

      ## iris data example
      giris <- ggplot(iris,aes(Petal.Length,Sepal.Length))+
        geom_point(aes(shape=Species))
      giris.labeled <- giris+
        geom_dl(aes(label=Species),method="smart.grid")+
        scale_shape_manual(values=c(setosa=1,virginica=6,versicolor=3),
                           guide="none")
      ##png("~/R/directlabels/www/scatter-bw-ggplot2.png",h=503,w=503)
      print(giris.labeled)
      ##dev.off()
    }

[Package directlabels version 2018.05.22 Index]