将文本标签添加到 ggplot2 散点图

Posted

技术标签:

【中文标题】将文本标签添加到 ggplot2 散点图【英文标题】:Adding text labels to ggplot2 scatterplot 【发布时间】:2012-10-12 22:36:42 【问题描述】:

有没有一种简单的方法可以将文本标签添加到图表上的圆圈?我无法使用 directlabels 包执行此操作,因为我收到错误:

direct.label.ggplot(p, "first.qp") 中的错误:需要颜色美学来推断默认的直接标签。"

这是图表:

这是我一直在使用的代码:

library(ggplot2)
library(directlabels)
#my data set:
oc <- read.csv("http://www.columbia.edu/~mad2200/oc.csv")
oc$percent_women <- oc$W_employment/(oc$M_employment+oc$W_employment)
oc$size <- oc$W_employment+oc$M_employment
p <- ggplot(oc, aes(M_w_earnings, W_w_earnings, label = as.character(Occupational.Group)))
p + geom_point(aes(size = size, colour=percent_women)) + scale_size_continuous(range=c(0,30)) + #scale_area()+
#geom_point(aes(colour = oc$percent_women)) + 
coord_equal() +
scale_colour_gradient(high = "red")+
ylim(700, 1700) +
xlim(700, 1700) +
geom_abline(slope=1) +
labs(title = "Income Disparity by Occupation and Gender") +
ylab("Women's Weekly Earnings in $") +
xlab("Men's Weekly Earnings in $")

【问题讨论】:

mnel 问了什么。并查看ggplot2 中的geom_text() 以获取文本注释。 @Maiasaura,我想他想注释 Occipational.Group(给定 p 的定义)(我问过要标记什么文本) 【参考方案1】:

geom_text(aes(label=Occupational.Group), size=3) 添加到绘图中。不过,您需要使用尺寸。

【讨论】:

非常感谢!这运作良好。我还在将 geom_dl 添加到绘图中并得到了标签,但发现更改字体大小真的很困难。这是一个更好的解决方案。

以上是关于将文本标签添加到 ggplot2 散点图的主要内容,如果未能解决你的问题,请参考以下文章

R语言ggplot2可视化绘制散点图(scatter plot)使用gghighlight包突出高亮散点图中的特定数据点并添加文本标签(highlight and text annotation)

R语言ggplot2可视化绘制散点图(scatter plot)使用gghighlight包突出高亮散点图中的特定数据点并自定义添加彩色文本标签(color text annotation)

R数据可视化初阶-散点图散点图矩阵相关系数

100天精通Python(可视化篇)——第82天:matplotlib绘制不同种类炫酷散点图参数说明+代码实战(二维散点图三维散点图散点图矩阵)

R语言使用ggplot2包的快速可视化函数qplot绘制散点图(设置每个数据点的文本标签信息)实战

r 散点图散点图R.