[R] Plot dataframe with color based on a column value

Rui Barradas ru|pb@rr@d@@ @end|ng |rom @@po@pt
Sun Jan 24 18:45:26 CET 2021


Hello,

Base R:

colrs <- rainbow(length(unique(ROI$Z)))
roi_wide <- reshape(ROI, v.names = "Y", timevar = "Z", idvar = "X", 
direction = "wide")
matplot(roi_wide, type = "l", lwd = 3, lty = "solid", col = colrs)


Hope this helps,

Rui Barradas

Às 14:48 de 24/01/21, Luigi Marongiu escreveu:
> Hello
> is it possible to color the data of a dataframe according to the
> values of one column?
> I have a dataframe that OI have subdivided into X and Y, with a third
> Z with the sample number. I would like to plot Y~X but coloring using
> Z. But I would like to use base R and not lines.
> Is that possible?
> Thank you
> 
> ```
> d <- 2
> K <- 10^13
> A1_0 <- 1
> A2_0 <- 100
> A3_0 <- 500
> A4_0 <- 10000
> PCR <- function(initCopy, dupRate, Carry) {
>    ROI_T = initCopy
>    A = array()
>    for (i in 1:45) {
>      ROI_TplusOne <- ROI_T * dupRate * (1 - ROI_T/Carry)
>      A[i] <- ROI_TplusOne
>      ROI_T <- ROI_TplusOne
>    }
>    return(A)
> }
> A1 <- PCR(A1_0, d, K)
> A2 <- PCR(A2_0, d, K)
> A3 <- PCR(A3_0, d, K)
> A4 <- PCR(A4_0, d, K)
> # store results and plot
> Z <- c(rep(1, 45), rep(2, 45), rep(3, 45), rep(4, 45))
> X = rep(1:45,4)
> Y = c(A1, A2, A3, A4)
> ROI <- data.frame(Z, X, Y)
> plot(Y ~ X, data = ROI, type = "l", lwd = 3)
> ```
> 
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> 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.
>



More information about the R-help mailing list