|R| Experts
1.08K subscribers
375 photos
35 videos
58 files
204 links
@R_Experts
🔴آمار علم جان بخشیدن به داده‌هاست.
🔷ارتباط با ما
@iamrezaei
لینک یوتیوب و اینستاگرام و ویرگول:
https://zil.ink/expertstv
加入频道
#Scatter_plot

Following is a csv file example, we will draw a Scatter Plot of the "Expression" and "Quality" values,
Let first read in the data from the file:

 > x <- read.csv("scatterplot.csv",header=T,sep="\t")
> x <- t(x)
> ex <- as.numeric(x[2,1:ncol(x)])
> qu <- as.numeric(x[3,1:ncol(x)])


Draw a Scatter Plot:

> plot(ex,qu)

If we want to draw different subtype in different color and symbol, we need more work like follows:

 > plot(ex,qu,col="white",xlab="Expression", ylab="Quality")
> points(ex[1:143],qu[1:143],col="red",pch=3,cex=.6) #Subtype A
> points(ex[144:218],qu[144:218],col="blue",pch=19,cex=.6) #Subtype B
> points(ex[219:ncol(x)],qu[219:ncol(x)],col="black",,pch=1,cex=.6) #Subtype C
> abline(lm(ex[144:218] ~ qu[144:218]),col="blue")

#regression expression ~ quality of BFollowing code can add a legend on the right:

  > layout(matrix(c(1,2), nrow = 1), widths = c(0.7, 0.3))
> par(mar = c(5, 4, 4, 2) + 0.1)
> plot(ex,qu,col="white",xlab="Expression", ylab="Quality")
> points(ex[219:ncol(x)],qu[219:ncol(x)],col="black",,pch=1,cex=.6)
> points(ex[144:218],qu[144:218],col="blue",pch=19,cex=.6)
> points(ex[1:143],qu[1:143],col="red",cex=.6,pch=3)
> abline(lm(ex[144:218] ~ qu[144:218]),col="blue")
> par(mar = c(5, 0, 4, 1) + 0.1)
> plot(ex,qu,axes=FALSE,ann=FALSE, col="white")
> legend(x=-2.5,y=1.2,c("A (n=146)","B (n=77)","C (n=85)"),cex=.8, pch=c(1,19,3),col=c("black","blue", "red"))


R package "scatterplot3d" can be used to draw 3D scatter plots, to install this package:

 > install.packages("scatterplot3d")


To draw a 3D scatter plot based on the "Expression", "Quality" and "Height" values:

  > library(scatterplot3d)
> hi <- as.numeric(x[4,1:ncol(x)])
> scatterplot3d(ex,qu,hi,pch=20,highlight.3d=T)

We can add more parameters like:

 scatterplot3d(ex,qu,hi,pch=20,highlight.3d=T,type="h")


@R_Experts