By luck I was able to solve my own problem! (Big "pheeeew.") As a reference, I simple change my value of z in image.plot to be X[,n:1], where X = t(lower). Everything else remains the same.
Cheers, Manussawee On Tue, Feb 22, 2011 at 10:03 AM, Manussawee Sukunta < msuku...@illinoisalumni.org> wrote: > To R community: > > I've been pulling my hair for the past few days over this issue now, and I > may be at the point where I just can't spot my error. So I thought to reach > out to the community and hope someone could kindly help me. > > I'm trying to create a correlation matrix and plot it. However, I'm trying > to create a hybrid of correlation matrix from two different periods, say > longer term vs shorter term correlations. I find correlation matrix for > both periods and then replace one with the other, separating by the > diagonal. Say the sample, after merging the data sets, is: > > > sample > 1 2 3 4 5 > 1 1.0000000 -0.7929869 0.5533907 0.3394069 -0.88815356 > 2 0.4344728 1.0000000 -0.3423528 -0.1710087 0.80005311 > 3 0.5271340 -0.2136791 1.0000000 0.6494039 -0.33841405 > 4 0.2199821 -0.3731925 0.4257412 1.0000000 -0.08108044 > 5 0.7100858 0.5146790 0.3749563 -0.2263762 1.00000000 > > I then generate my plot as follows (adaptation from assetsCorImagePlot > function in fAssets package): > n <- ncol(sample) > names <- colnames(sample) > image.plot(x=1:n, y=1:n, z=sample[,n:1], col=rainbow(20, start=0, end=.6, > alpha=.8), axes=F, main='', xlab='', ylab='') > X <- t(sample) > require(fields) > coord <- grid2d(1:n, 1:n) > for (i in 1:(n * n)) { > text(coord$x[i], coord$y[n * n + 1 - i], round(X[coord$x[i], coord$y[i]], > digits = 2), col = colors()[285], cex = 0.7) > } > axis(2, at = n:1, labels = names, las = 2, cex.axis=0.8) > axis(3, at = 1:n, labels = names, las = 0, cex.axis=0.8) > box() > invisible() > > I get a nice plot with colors ranging from blue (being 1) to red (being > negative). However, after looking at the plot I notice that some of the > grid's color is not in accordance to the legend shown. For example, 0.71 > would be shown as red, which should indicate negative number according to > the legend. Or 0.65 and -0.35 share the same color on the image plot, which > shouldn't be. > > I'm not sure how to solve this issue. I searched the internet and R site > search, but nothing that I could find had help. I hope someone could help > me here. I'd greatly appreciate it. > > Thank you, > Manussawee > > p.s. I'm using Windows 32-bit R.2.10-1. > > [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org 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.