R 在ggplot中子集和高亮显示多个数据点
我希望生成一个条形图,其中以不同方式突出显示多个数据点范围。下面的问题与我想做的很接近,只是我不想对数据点的一个范围进行子集设置和高亮显示,而是想对多个数据点范围进行子集设置,并生成一个不同颜色的条形图 我使用了这段代码(根据上面的问题改编)以红色突出显示10到30之间的数据子集R 在ggplot中子集和高亮显示多个数据点,r,ggplot2,R,Ggplot2,我希望生成一个条形图,其中以不同方式突出显示多个数据点范围。下面的问题与我想做的很接近,只是我不想对数据点的一个范围进行子集设置和高亮显示,而是想对多个数据点范围进行子集设置,并生成一个不同颜色的条形图 我使用了这段代码(根据上面的问题改编)以红色突出显示10到30之间的数据子集 a <- 1:50 b <- rnorm(50) mydata <- data.frame(a=a,b=b) mydata[10:30,] ggplot(mydata,aes(x=a,y=b)) +
a <- 1:50
b <- rnorm(50)
mydata <- data.frame(a=a,b=b)
mydata[10:30,]
ggplot(mydata,aes(x=a,y=b)) + geom_point(colour="blue") + geom_point(data=mydata[10:30,], aes(x=a, y=b), colour="red")
a我想,如果您希望数据的不同子集使用不同的颜色,那么这些子集代表不同的组。在ggplot
中处理此问题的通常方法是创建一个组变量。在ggplot中,您可以轻松地为您的组设置颜色美学
library(ggplot2)
a <- 1:50
b <- rnorm(50)
mydata <- data.frame(a=a, b=b)
mydata$group <- "a"
mydata$group[1:9] <- "b"
mydata$group[10:30] <- "c"
mydata$group[40:50] <- "d"
ggplot(mydata,aes(x=a,y=b, col = group)) +
geom_point() +
scale_color_manual(values=c("blue", "green", "red", "cyan"), guide = FALSE)
我想,如果您希望数据的不同子集使用不同的颜色,这些子集代表不同的组。在ggplot
中处理此问题的通常方法是创建一个组变量。在ggplot中,您可以轻松地为您的组设置颜色美学
library(ggplot2)
a <- 1:50
b <- rnorm(50)
mydata <- data.frame(a=a, b=b)
mydata$group <- "a"
mydata$group[1:9] <- "b"
mydata$group[10:30] <- "c"
mydata$group[40:50] <- "d"
ggplot(mydata,aes(x=a,y=b, col = group)) +
geom_point() +
scale_color_manual(values=c("blue", "green", "red", "cyan"), guide = FALSE)
正如@Alex提到的,您可以使用组
变量来选择正确的颜色
使用geom\u条(stat=“identity”)
并通过fill
为geom\u条更改颜色
:
a正如@Alex提到的,您可以使用group
变量来选择正确的颜色
使用geom\u条(stat=“identity”)
并通过fill
为geom\u条更改颜色
:
a
a <- 1:50
b <- rnorm(50)
mydata <- data.frame(a=a,b=b)
mydata$group <- "a"
mydata$group[1:9] <- "green"
mydata$group[10:30] <- "red"
mydata$group[40:50] <- "cyan"
ggplot(mydata,aes(x=a,y=b, fill = group)) +
geom_bar(stat = "identity") +
scale_fill_manual(values=c("a" = "black", "green" = "green", "red" = "red", "cyan" = "cyan"), guide = FALSE)