• 登录
Skip to content

一起大数据-技术文章心得

一起大数据网由数据爱好者发起并维护,专注数据分析、挖掘、大数据相关领域的技术分享、交流。不定期组织爱好者聚会,期待通过跨行业的交流和碰撞,更好的推进各领域数据的价值落地。

Menu
  • 首页
  • 大数据案例
  • 数据&电子书
  • 视频
    • Excel视频
    • VBA视频
    • Mysql视频
    • 统计学视频
    • SPSS视频
    • R视频
    • SAS视频
    • Python视频
    • 数据挖掘视频
    • 龙星计划-数据挖掘
    • 大数据视频
    • Machine Learning with Python
  • 理论
    • 统计学
    • 数据分析
    • 机器学习
    • 大数据
  • 软件
    • Excel
    • Modeler
    • Python
    • R
    • SAS
    • SPSS
    • SQL
    • PostgreSQL
    • KNIME
  • 技术教程
    • SQL教程
    • SPSS简明教程
    • SAS教程
    • The Little SAS Book
    • SAS EG教程
    • R语言教程
    • Python3教程
    • IT 技术速查手册
    • Data Mining With Python and R
    • SAS Enterprise Miner
  • 问答社区
  • 我要提问
Menu
《R数据科学》ggplot2图形标签与注释

《R数据科学》ggplot2图形标签与注释

Posted on 2021年1月16日

作者:灰常不错

标签

要想将探索性图形转换为解释性图形,最容易的办法就是加上一些标签。可以使用labs()函数来添加标签,以下示例为图形添加了一个标题:

ggplot(mpg,aes(displ,hwy))+geom_point(aes(color=class))+geom_smooth(se=FALSE)+labs(title = paste('Fuel efficiency generally decreases with','engine size'))

要想添加更多的文本,可以使用另外两个实用的标签

  • subtitle可以在标题下以更小的字体添加更多的附加信息。
  • caption可以在图形右下角添加文本,常用于描述数据来源:
ggplot(mpg, aes(displ, hwy)) +geom_point(aes(color = class)) +geom_smooth(se = FALSE) +labs(title = paste("Fuel efficiency generally decreases with","engine size"), subtitle = paste("Two seaters (sports cars) are an exception","because of their light weight"), caption = "Data from fueleconomy.gov")

 

我们还可以使用labs()函数替换坐标轴和图例中的标题

ggplot(mpg,aes(displ,hwy))+geom_point(aes(color=class))+geom_smooth(se=FALSE)+labs(x = "Engine displacement (L)", y = "Highway fuel economy (mpg)",colour = "Car type")

 

还可以使用数学公式代替字符串文本,用quote()代替””,再使用?plotmath命令可查看可用选项:

ggplot(df,aes(x,y))+geom_point()+labs(x=quote(sum(x[i]^2,i==1,n)),y=quote(alpha+beta+frac(delta,theta)))

注释

有时我们需要对特定的观测添加标签,此时可以使用geom_text()函数。用dplyr筛选出mpg数据集每类汽车中效率最高的型号并作注释:

library(dplyr)
data <- mpg %>% group_by(class) %>% filter(row_number(desc(hwy))==1)
ggplot(mpg,aes(displ,hwy))+geom_point(aes(color=class))+geom_text(aes(label=model),data=data)

为了解决标签之间重叠的问题,可以使用geom_label()函数,它可以为文本加上文本框,并且通过调节nudge_y参数,可以让标签位于数据点正上方:

ggplot(mpg,aes(displ,hwy))+geom_point(aes(color=class))+geom_label(aes(label=model),data=data,nudge_y = 2,alpha=0.5)

这样的效果好一些,但如果仔细查看左上角,就会发现2个标签几乎完全重叠。此时可以借助ggrepel包来调整标签的位置,避免重叠:

library(ggrepel)
ggplot(mpg,aes(displ,hwy))+geom_point(aes(color=class))+geom_point(data=data,size=3,shape=1)+geom_label_repel(aes(label=model),data=data)

有时可以直接将标签放在图形上填充不同的颜色,以代替图例:

class_avg <- mpg %>% group_by(class) %>% summarise(displ=median(displ),hwy=median(hwy))
ggplot(mpg,aes(displ,hwy,color=class))+geom_label_repel(aes(label=class),data=class_avg,size=6,label.size = 0,segment.colour = NA)+geom_point()+theme(legend.position = 'none')

 

推荐访问


数据分析交流:数据分析交流
Excel学习: Excel学习交流
Python交流:一起学习Python(数据分
SQL交流:一起学习SQL(数据分析
微博:一起大数据

最新提问

  • SQL Chat
  • sql server 不允许保存更改。您所做的更改要求删除并重新创建以下表。您对无法重新创建的表进行了更改或者启用了”阻止保存要求重新创建表的更改”选项。
  • 偏相关分析
  • 复相关系数
  • 【R语言】熵权法确定权重
  • 如何破解Excel VBA密码
  • 解决 vba 报错:要在64位系统上使用,请检查并更新Declare 语句
  • 基于 HuggingFace Transformer 的统一综合自然语言处理库
  • sqlserver分区表索引
  • Navicat连接数据库后不显示库、表、数据

文章标签

ARIMA CBC Excel GBDT KNN Modeler Mysql pandas PostgreSQL python python数据可视化 R SAS sklearn SPSS SQL SVM Tableau TensorFlow VBA 主成分分析 关联规则 决策树 协同过滤 可视化 因子分析 大数据 大数据分析 推荐系统 数据分析 数据可视化 数据挖掘 数据透视表 文本挖掘 时间序列 机器学习 深度学习 神经网络 结构方程 统计学 联合分析 聚类 聚类分析 逻辑回归 随机森林
©2023 一起大数据-技术文章心得 | Design: Newspaperly WordPress Theme