On 09.06.2011 16:51, Karthik Kota wrote:
Hi

I am relatively new to R and am trying to figure out to plot 3d scatter plot 
using defined colors based on x-axis and y-axis values.  Right now in the code 
below, I assign colors based on certain values in the names of the x-axis.  Now 
if I want to extend the condition to assign a color based on the names of both 
x-axis and y-axis values, what should I be doing? Any help or ideas would be 
greatly appreciated.

For e.g. in my 3 column matrix below, if I want to assign "red" to all the values whose 
first column and second column contain "Anterior_nares" and  assign black to any other 
combination.


Both question and answer are not really scatterplot3d related: You probably want

col <- ifelse(grepl("_Anterior_nares", xlabels) & grepl("_Anterior_nares", ylabels), "red", "black")

Best,
Uwe Ligges



Thanks!
Karthik

library(scatterplot3d)

chd1=read.table(file="test.out", header=F, sep="\t")
col=as.vector(chd1[,1])
xlabels=as.vector(chd1[,1])
ylabels=as.vector(chd1[,2])

mycols<-c("red","blue","green","chocolate","orange", "brown")
col[grep("_Stool", xlabels) ]<-mycols[1]
#col[grep("_Stool", xlabels)&&  grep("_Stool", ylabels) ]<-mycols[1]
col[grep("_Tongue_dorsum", xlabels) ]<-mycols[2]
col[grep("_Posterior_fornix", xlabels) ]<-mycols[3]
col[grep("_Anterior_nares", xlabels) ]<-mycols[4]
col[grep("_Buccal_mucosa", xlabels) ]<-mycols[5]
col[grep("_Supragingival_plaque", xlabels) ]<-mycols[6]


png(file="3dplot_test.png", w=700,h=700)

scatterplot3d(chd1[, 1], chd1[, 2], chd1[, 3], main="test", xlab="sample", ylab="sample", 
zlab="kmers", color=col,type="p")
dev.off ()


my test.out matrix looks something like this:

A011132_Anterior_nares  A011263_Anterior_nares  50130
A011132_Anterior_nares  A011397_Stool   34748
A011132_Anterior_nares  A012291_Tongue  40859
A011132_Anterior_nares  A012663_Buccal_mucosa   76213
A011132_Anterior_nares  A013155_Anterior_nares  36841
A011132_Anterior_nares  A013269_Anterior_nares  45619
A011132_Anterior_nares  A013637_Anterior_nares  56995
        [[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.

______________________________________________
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.

Reply via email to