Woolner, Keith
2009-Oct-29 21:42 UTC
[R] How to create a "heatline" -- heatmap in one dimension?
Hi,
I'm trying to create a "heatmap" that is just a line segment.
That is,
a graphic that shows an interval and how a dependent variable varies
along that interval, with the value of the dependent variable shown by
color rather than on a y-axis.
The image() function produces something close to what I'm envisioning,
but rather than plotting color on a 2-D grid, I need a line where the
color carries the information about the other dimension. The following
example code gives a visual approximation of what I'm going for (using
image(), but by shrinking the y-axis down to make the result line-like):
x <- c(1:100)
y <- abs(40-x)
my.col <- heat.colors(10)
par(pin=c(par("pin")[1],.05))
image(x, 1, as.matrix(y), ylim=c(1,1), col=my.col,
xaxt="n",xlab="",
yaxt="n", ylab="", fg="transparent")
I will be generating several of these "heatlines" to plot on a 2-D
grid,
which will contain other information on it as well, and so also need to
be able to add the lines to an existing plot.
I've read the doc for stripplot(), contour(), image(), and checked the R
Graph Gallery (http://addictedtor.free.fr/graphiques/) to try to find
something similar, but haven't figured out the best way to do this, I
envision a function similar to segments(), where you can specify where
the line should be drawn, the line width (lwd), and other graphical
parameters, but where you can specify a vector of color values.
Is there a package that has such functionality already, and if not, what
would be most elegant way to approach it? If it matters, I'm running R
2.9.1 on XP 32-bit.
Thanks for any suggestions.
--
Keith
--
Keith Woolner
Manager, Baseball Research & Analysis
Cleveland Indians
216-420-4625
kwoolner@indians.com
[[alternative HTML version deleted]]
Jim Lemon
2009-Oct-29 22:32 UTC
[R] How to create a "heatline" -- heatmap in one dimension?
On 10/30/2009 08:42 AM, Woolner, Keith wrote:> Hi, > > > > I'm trying to create a "heatmap" that is just a line segment. That is, > a graphic that shows an interval and how a dependent variable varies > along that interval, with the value of the dependent variable shown by > color rather than on a y-axis. > > > > The image() function produces something close to what I'm envisioning, > but rather than plotting color on a 2-D grid, I need a line where the > color carries the information about the other dimension. The following > example code gives a visual approximation of what I'm going for (using > image(), but by shrinking the y-axis down to make the result line-like): > > > > x<- c(1:100) > > y<- abs(40-x) > > > > my.col<- heat.colors(10) > > par(pin=c(par("pin")[1],.05)) > > image(x, 1, as.matrix(y), ylim=c(1,1), col=my.col, xaxt="n",xlab="", > yaxt="n", ylab="", fg="transparent") > > > > > > I will be generating several of these "heatlines" to plot on a 2-D grid, > which will contain other information on it as well, and so also need to > be able to add the lines to an existing plot. > > > > I've read the doc for stripplot(), contour(), image(), and checked the R > Graph Gallery (http://addictedtor.free.fr/graphiques/) to try to find > something similar, but haven't figured out the best way to do this, I > envision a function similar to segments(), where you can specify where > the line should be drawn, the line width (lwd), and other graphical > parameters, but where you can specify a vector of color values. > > > > Is there a package that has such functionality already, and if not, what > would be most elegant way to approach it? If it matters, I'm running R > 2.9.1 on XP 32-bit. > > >Hi Keith, Maybe color.scale.line in the plotrix package will do what you want. Jim
Maybe Matching Threads
- Systemfit (was RE: How to force two regression coefficients to be equal but opposite in sign?)
- How the change the dimension of an individual cell [i.e. the cell corresponding to an observation in data matrix] in a heatmap.2?
- Heatmap, and heatmap.2 gave different figures for the same dataset
- heatmap-how to change the order of the rows (genes)
- heatmap question