gpt4 book ai didi

r - 使用 ggplot2 盒装 geom_text

转载 作者:行者123 更新时间:2023-12-01 22:50:00 26 4
gpt4 key购买 nike

我正在使用 ggplot2 开发一个图形,其中我需要将文本叠加在其他图形元素上。根据文本下方元素的颜色,文本可能难以阅读。有没有办法在半透明背景的边界框中绘制geom_text?

我可以用plotrix做到这一点:

library(plotrix)
Labels <- c("Alabama", "Alaska", "Arizona", "Arkansas")
SampleFrame <- data.frame(X = 1:10, Y = 1:10)
TextFrame <- data.frame(X = 4:7, Y = 4:7, LAB = Labels)
### plotrix ###
plot(SampleFrame, pch = 20, cex = 20)
boxed.labels(TextFrame$X, TextFrame$Y, TextFrame$LAB,
bg = "#ffffff99", border = FALSE,
xpad = 3/2, ypad = 3/2)

但我不知道如何使用 ggplot2 获得类似的结果:

### ggplot2 ###
library(ggplot2)
Plot <- ggplot(data = SampleFrame,
aes(x = X, y = Y)) + geom_point(size = 20)
Plot <- Plot + geom_text(data = TextFrame,
aes(x = X, y = Y, label = LAB))
print(Plot)

如您所见,黑色文本标签无法感知它们与背景中的黑色 geom_points 重叠的位置。

最佳答案

development version of ggplot2包中有一个名为geom_label()的新geom,它直接实现了这一点。可以通过 alpha= 参数实现透明度。

ggplot(data = SampleFrame,
aes(x = X, y = Y)) + geom_point(size = 20)+
geom_label(data = TextFrame,
aes(x = X, y = Y, label = LAB),alpha=0.5)

enter image description here

关于r - 使用 ggplot2 盒装 geom_text,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7660893/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com