我正在尝试更改NA值的点大小。无法更改geom_point中na.values的点大小
ggplot(dataframe, aes(col1, col2)) +
geom_text(aes(label=col4),size=0.5, hjust=0, vjust=0) +
geom_point(aes(color = col3), size=1)
我需要的灰色(NA),以显示较小的和白色的颜色。
我正在尝试更改NA值的点大小。无法更改geom_point中na.values的点大小
ggplot(dataframe, aes(col1, col2)) +
geom_text(aes(label=col4),size=0.5, hjust=0, vjust=0) +
geom_point(aes(color = col3), size=1)
我需要的灰色(NA),以显示较小的和白色的颜色。
有几种方法可以做到这一点,最简单的方法可能是调用geom_point
两次,根据该列值进行子集化。
library(ggplot2)
set.seed(12341234)
dataframe <- data.frame(col1 = rnorm(10, mean = 2, sd = 3),
col2 = rnorm(10, mean = 4, sd = 2),
col3 = c(rep("A", 4), rep("B", 4), NA, NA))
ggplot(dataframe[!is.na(dataframe$col3),],
aes(x = col1,
y = col2)) +
geom_point(aes(color = col3),
size = 4) +
geom_point(data = dataframe[is.na(dataframe$col3),],
color = "blue",
size = 8) +
scale_color_manual(breaks = c("A", "B"),
values = c("black", "red"))
注意这将陷入困境的传说(如果你需要一个)。
另一种选择是用“NA”等替代NA值。
谢谢,但也不适合我的数据集。我得到一个错误:错误在'[.default'(dataframe $ col3,: 维数不正确 –
没有一个代表数据集,我的答案不起作用,这将是很难排除故障。 –
请在您的问题中包含[可重现的示例](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)。请注意,您需要将变量映射到'size'才能使用'scale_size_manual'。这意味着在'aes'里面移动'size'。一旦你这样做,看看'scale_size_manual'的文档以获取如何使用它的例子。 – aosmith
我正在尝试对我的数据框进行二次采样,以给出一个适当的可重现示例。但是,尽管我可以用完整的数据运行一个情节,但是我不能在子集中运行。 –