R中绘图标签大小的问题

Problems with the size of the labels of the plots in R

我对绘图标签的大小有疑问。所以,这是代码:

column1 <- c(0.18936045, 0.55010315,  0.23474801, 0.02578839)
column2 <- c(0.20522653, 0.51235168, 0.26060781, 0.02181398 )

example_data <- 
  data.frame(
    rowNames = c('[-2.34898,-0.83219]', '(-0.83219,0.684599]', '(0.684599,2.20139]', '(2.20139,3.71818]'),
    column1 = column1,
    column2 = column2
  )

plot(data = example_data, column1 ~ column2, xlab = "Marginal probs scaledsci",
     ylab = "Actual probs from data", pch = 20, col = 'blue')
text(data = example_data, column1 ~ column2, labels = rowNames, cex = .6, pos = 2.99, col = 'red')

这是我得到的情节: plot obtained

所以,我想让所有带有标签的点都可见。那么,有人可以帮我解决这个问题吗?

如果您想按照您使用 pos 参数定义的方式保持相对于点的文本位置,一种选择是增加 x 轴范围的限制(特别是在左侧), 例如:

xlim2 <- {r2=diff(range(column1))*.6; c(mean(column1)-r2, max(column1))}

plot(data = example_data, column1 ~ column2, xlab = "Marginal probs scaledsci",
     ylab = "Actual probs from data", pch = 20, col = 'blue', xlim=xlim2)
text(data = example_data, column1 ~ column2, labels = rowNames, cex = .6, pos = 2.99, col = 'red')

对于情节我更喜欢ggplot。当我 运行 遇到标签位置问题(与数据点重叠等)时,我经常添加包 ggrepel 的功能。示例如下。

library(ggplot2)
library(ggrepel)
ggplot(example_data, aes(x = column1, y = column2)) + geom_point(size = 4, col = "blue") + labs(x = "Marginal probs scaledsci", y = "Actual probs from data") + geom_text_repel(label = example_data$rowNames, col = "red", nudge_y = 0.02) +
theme_bw() +  theme(text = element_text(size = 15))

nudge_y 参数将您的标签移动 0.02 个单位的 y-variable。它是可选的,但在我看来看起来更好。