我想在散点图中仅标记自定义选定的点。 我试过:
ggplot(mtcars, aes(x=wt, y=mpg)) +
geom_text(label=rownames(mtcars))
但我只想标记以下名称:
Merc 450SE
Cadillac Fleetwood
Lincoln Continental
Chrysler Imperial
Fiat 128
Honda Civic
Toyota Corolla
Fiat X1-9
Porsche 914-2
Lotus Europa
预期输出将是:
您可以在使用
geom_text
时对数据进行子集化。为了避免重叠问题,您可以使用 ggrepel包中的
geom_text_repel
:
library(ggrepel)
show.names <- c('Merc 450SE',
'Cadillac Fleetwood',
'Lincoln Continental',
'Chrysler Imperial',
'Fiat 128',
'Honda Civic',
'Toyota Corolla',
'Fiat X1-9',
'Porsche 914-2',
'Lotus Europa')
ggplot(mtcars, aes(x=wt, y=mpg)) +
geom_point() +
geom_text_repel(data=mtcars[rownames(mtcars) %in% show.names,],
label=show.names)