R 如何在气泡图中用不同颜色显示图例中的精确值
我有以下数据:R 如何在气泡图中用不同颜色显示图例中的精确值,r,ggplot2,R,Ggplot2,我有以下数据: RW GA Freq 0 0 9 0 3 1 0 14 1 2 30 1 15 30 2 24 30 7 30 29 16 30 30 29 我想为这些数据生成一个气泡图,为此我编写了以下R脚本: df <- read.csv("/home/Desktop/data.csv") p <- ggplot(df, aes(x=RW,
RW GA Freq
0 0 9
0 3 1
0 14 1
2 30 1
15 30 2
24 30 7
30 29 16
30 30 29
我想为这些数据生成一个气泡图,为此我编写了以下R脚本:
df <- read.csv("/home/Desktop/data.csv")
p <- ggplot(df, aes(x=RW, y=GA, size=Freq)) + geom_point(alpha=0.7) +
scale_size(range = c(1, 10), name="Freq", limits=c(1,30), breaks=c(1,10,30))
df为了展开图例,您需要定义所需的中断,在本例中,我使用了unique
函数来收集值列表
library(ggplot2)
df<-structure(list(RW = c(0L, 0L, 0L, 2L, 15L, 24L, 30L, 30L),
GA = c(0L, 3L, 14L, 30L, 30L, 30L, 29L, 30L),
Freq = c(9L, 1L, 1L, 1L, 2L, 7L, 16L, 29L)),
class = "data.frame", row.names = c(NA, -8L))
lbreaks<-sort(unique(df$Freq))
p <- ggplot(df, aes(x=RW, y=GA, size=Freq)) + geom_point(alpha=0.7) +
scale_size(range = c(1, 10), name="Freq", limits=c(1,30), breaks=lbreaks)
print(p)
谢谢是否可以给每个圆圈赋予不同的颜色?
ggplot(df, aes(x=RW, y=GA, size=Freq, color=as.factor(Freq))) + geom_point(alpha=0.7) +
scale_size(range = c(1, 10), name="Freq", limits=c(1,30), breaks=lbreaks) +
scale_color_discrete(name="Freq", breaks=lbreaks)