I'm new to R (and stack overflow) and would appreciate any help! I haven't been able to find a solution from other questions. I'm trying to:
- Assign 2 different continuous color gradients in the x and y direction based on different variables. (plot1 in code below)
- Retain these color assignments for a different plot of different variables of the same data frame. (plot2 in code below)
I have only been able to manage assigning color based on one variable as shown below.
Example:
####set up data####
#using ggplot2 package
library(ggplot2)
df <- data.frame(c(1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4),
c(1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4),
c(256, 4, 196, 16, 144, 36, 100, 64, 81, 49, 121, 25, 169, 9, 225, 1),
c(0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610))
colnames(df) <- c("X", "Y", "V1", "V2")
####plot1: Simple plot of V1 vs V2#####
#I would like the color to go towards blue as V1 increases on x axis (as it is now)
#I would also like the color to go towards red as V2 increases on y axis
#Ideally, when both x and y are large, it would be some purple color
plot1 <- ggplot(df, aes(x=V1, y = V2, color= V1)) + geom_point()+
scale_color_continuous(low="black", high="light blue")+
labs(y= "V2: I want this to go from black --> red", x = "V1: black--> blue")
plot1
####plot2: plot of x vs y but with color assignment same as plot1####
#The position based on X and Y is correct but,
# I'd like to have the color assigned based on V1 and V2 (same as plot1)
plot2 <- ggplot(df, aes(x=X, y=Y, color=V1)) + geom_point()+
scale_color_continuous(low="black", high="light blue")
plot2