Quantcast

Adding title to colorkey

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Adding title to colorkey

Stephen Eglen

A recent paper on visualisation (in Neuron, a leading neuroscience
journal) surveyed how well previous articles in this journal labelled their
graphs (e.g. axis labelling and describing their error bars).  Of
particular interest is that (only) 40% of plots labelled what their
colorkey was showing (variable and units).

The paper is at http://dx.doi.org/10.1016/j.neuron.2012.05.001

R is not yet that prominent (compared to matlab) in Neuroscience, so I
doubt many of the graphs were generated by levelplot() and friends.
However, how can the colorkey be labelled?  I notice that this topic has
been raised before, e.g.

  http://tolstoy.newcastle.edu.au/R/e16/help/11/11/2281.html

For now, I've done:

library(lattice)
library(grid)
levelplot(matrix(1:9,3,3),
          par.settings = list(layout.widths = list(axis.key.padding = 4)))
grid.text('title here', y=unit(0.5, "npc"),
          rot=90, x=unit(0.88, "npc"))

i.e. adding some space between levelplot and colorkey.  The
x,y positions of the grid.text call need fine-tuning once the plot is
close to finalised.  

Does anyone have a better solution for vertical colorkeys?  e.g. can the
plot objected be interrogated to work out what the central x,y value is?


Thanks, Stephen

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Adding title to colorkey

Ricardo Pietrobon
Stephen, for ggplot2 you might want to check http://goo.gl/0Wx0B

On Sat, Jun 16, 2012 at 4:40 AM, Stephen Eglen <[hidden email]>wrote:

>
> A recent paper on visualisation (in Neuron, a leading neuroscience
> journal) surveyed how well previous articles in this journal labelled their
> graphs (e.g. axis labelling and describing their error bars).  Of
> particular interest is that (only) 40% of plots labelled what their
> colorkey was showing (variable and units).
>
> The paper is at http://dx.doi.org/10.1016/j.neuron.2012.05.001
>
> R is not yet that prominent (compared to matlab) in Neuroscience, so I
> doubt many of the graphs were generated by levelplot() and friends.
> However, how can the colorkey be labelled?  I notice that this topic has
> been raised before, e.g.
>
>  http://tolstoy.newcastle.edu.au/R/e16/help/11/11/2281.html
>
> For now, I've done:
>
> library(lattice)
> library(grid)
> levelplot(matrix(1:9,3,3),
>          par.settings = list(layout.widths = list(axis.key.padding = 4)))
> grid.text('title here', y=unit(0.5, "npc"),
>          rot=90, x=unit(0.88, "npc"))
>
> i.e. adding some space between levelplot and colorkey.  The
> x,y positions of the grid.text call need fine-tuning once the plot is
> close to finalised.
>
> Does anyone have a better solution for vertical colorkeys?  e.g. can the
> plot objected be interrogated to work out what the central x,y value is?
>
>
> Thanks, Stephen
>
> ______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

        [[alternative HTML version deleted]]

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Adding title to colorkey

Deepayan Sarkar
In reply to this post by Stephen Eglen
On Sat, Jun 16, 2012 at 2:10 PM, Stephen Eglen
<[hidden email]> wrote:

>
> A recent paper on visualisation (in Neuron, a leading neuroscience
> journal) surveyed how well previous articles in this journal labelled their
> graphs (e.g. axis labelling and describing their error bars).  Of
> particular interest is that (only) 40% of plots labelled what their
> colorkey was showing (variable and units).
>
> The paper is at http://dx.doi.org/10.1016/j.neuron.2012.05.001
>
> R is not yet that prominent (compared to matlab) in Neuroscience, so I
> doubt many of the graphs were generated by levelplot() and friends.
> However, how can the colorkey be labelled?  I notice that this topic has
> been raised before, e.g.
>
>  http://tolstoy.newcastle.edu.au/R/e16/help/11/11/2281.html
>
> For now, I've done:
>
> library(lattice)
> library(grid)
> levelplot(matrix(1:9,3,3),
>          par.settings = list(layout.widths = list(axis.key.padding = 4)))
> grid.text('title here', y=unit(0.5, "npc"),
>          rot=90, x=unit(0.88, "npc"))
>
> i.e. adding some space between levelplot and colorkey.  The
> x,y positions of the grid.text call need fine-tuning once the plot is
> close to finalised.
>
> Does anyone have a better solution for vertical colorkeys?  e.g. can the
> plot objected be interrogated to work out what the central x,y value is?

This is slightly simpler:

levelplot(matrix(1:9,3,3), ylab.right = "title here",
          par.settings = list(layout.widths = list(axis.key.padding = 0,
                                                   ylab.right = 2)))

There really should be a function allowing easy construction of
complex legends combining simpler ones. There is currently only
mergedTrellisLegendGrob in latticeExtra (not very robust) which can be
used as follows:

library(latticeExtra)

p <- levelplot(matrix(1:9,3,3))
p$legend$right <-
    list(fun = mergedTrellisLegendGrob(p$legend$right,
                                       list(fun = textGrob,
                                            args = list("title here",
rot = -90)),
                                       vertical = FALSE))
p

-Deepayan

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Adding title to colorkey

Stephen Eglen
>
> This is slightly simpler:
>
> levelplot(matrix(1:9,3,3), ylab.right = "title here",
>           par.settings = list(layout.widths = list(axis.key.padding = 0,
>                                                    ylab.right = 2)))

That's good enough for me - thanks!

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Loading...