将文本标签添加到 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)
100天精通Python(可视化篇)——第82天:matplotlib绘制不同种类炫酷散点图参数说明+代码实战(二维散点图三维散点图散点图矩阵)