如何手动更改 ggplot2 中图例中的关键标签

2023-12-28

我正在准备要出版的情节。我创建了一个堆积箱形图来显示每组中患有血清阴性病例复杂积累的患者与非血清阴性患者的频率。图例使用数据框中的标签,这些标签适合我们正在从事该项目的人,但不适合发布。我想将这些名称更改为读者更容易理解的名称。

例如运行以下脚本

grp <- gl(n=4,k=20,labels=c("group a","group b","group c", "group d"))
value <- runif(n=80, min=10, max=150)
outcome <- cut(value,2)
data <- data.frame(grp,value,outcome)
ggplot(data, aes(grp, fill=outcome)) + geom_bar() +xlab("group") 
             +ylab("number of subjects") + labs(fill="Serologic response")

该代码创建了不适合发布的关键标签“(10.4,80]”和“(80,150]”。相反,我想要“双负”和“a 和/或 b 为正”。

我想我可以返回数据框并进行转换以获取具有正确标签的新变量。或者我可以重新标记我的因素 https://stackoverflow.com/questions/2339953/how-to-add-custom-series-labels-to-a-legend-in-rs-ggplot?不过,我更愿意在绘图时这样做。


标准方法是使用比例函数来更改组的显示标签。您可以更换您的ggplot打电话给

ggplot(data, aes(grp, fill=outcome)) + geom_bar() +xlab("group") +
  ylab("number of subjects") + 
  scale_fill_discrete("Serologic response", 
                      breaks=c("(10.1,79.9]","(79.9,150]"), 
                      labels=c("double negative", "positive for a and/or b"))

请注意,量表的标题已合并到scale_fill_discrete称呼。如果您愿意,也可以使用轴来完成此操作

ggplot(data, aes(grp, fill=outcome)) + geom_bar() +
  scale_x_discrete("group") +
  scale_y_continuous("number of subjects") + 
  scale_fill_discrete("Serologic response", 
                      breaks=c("(10.1,79.9]","(79.9,150]"), 
                      labels=c("double negative", "positive for a and/or b"))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何手动更改 ggplot2 中图例中的关键标签 的相关文章

  • 如何按定义的顺序将图像合并到一个文件中

    我有大约 100 张图像 png 我不想手动执行此操作 而是希望将它们按照定义的顺序 基于文件名 并排放置在一个 pdf 中 每行 12 个图像 有人有什么建议吗 我按照下面托马斯告诉我的方法尝试了 它把它们贴在旁边有一个黑边 我怎样才能去
  • R在Windows平台Rstudio上打印data.frames中的UTF-8代码

    当数据框中存在UTF 8字符时 将无法正常显示 例如 以下内容是正确的 gt U6731 1 朱 但是当我将其放入数据框中并打印出来时 它是 gt data frame x U6731 x 1
  • 为什么这个 R ggplot2 代码会显示一个空白的显示设备?

    虽然 SO 通常不用于帮助解决错误 但这个显示了特别简单且特别烦人的行为 如果你是一个ggplot2用户 您可以在 10 秒或更短的时间内重现它 正如这个 GitHub 问题 ggplot gtable 创建空白显示 https githu
  • 从数据框中绘制多条平滑线

    我对 R 比较陌生 我正在尝试绘制从 csv 文件加载的数据框 数据由 6 列组成 如下所示 xval col1 col2 col3 col4 col5 第一列 xval 由一系列单调递增的正整数 例如 10 40 60 等 组成 其他列
  • 如何为自定义 S3 类实现提取/取子集 ([ [<-, [[ [[<-)] 函数?

    我有一个自定义的 S3 类foo 它在正常的基础上添加了一些自定义行为data frame foo object lt data frame class foo object lt c foo data frame 对于这个类 还应该有一个
  • 当将遗传算法与 lme4 一起使用时,glmulti 无限期运行

    我在 R 中使用 glmulti 进行模型平均 我的模型中有大约 10 个变量 使得详尽的筛选不切实际 因此我需要使用遗传算法 GA 调用 method g 我需要包含随机效应 因此我使用 glmulti 作为 lme4 的包装器 此处提供
  • 需要在R中跳过不同数量的行

    我正在使用以下代码来处理我的数据 但最近我意识到使用skip 27 在数据开始之前跳过存储在我的文件中的信息 不是一个好的选择 因为每个文件中要跳过的行数不同我的目标是读取存储在多个文件夹中的各种txt文件 并非所有文件都有相同的列数 列的
  • case_when 与部分字符串匹配和 contains()

    我正在使用一个数据集 其中有许多名为 status1 status2 等的列 在这些列中 它表示某人是否豁免 完整 注册等 不幸的是 豁免投入并不一致 这是一个示例 library dplyr problem lt tibble perso
  • 如何将旋转的 NetCDF 转换回正常的纬度/经度网格?

    我有一个带有旋转坐标的 NetCDF 文件 我需要将其转换为正常的纬度 经度坐标 经度为 180到180 纬度为 90到90 library ncdf4 nc open dat nf 对于尺寸 它显示 1 5 variables exclu
  • rvest 函数 html_nodes 返回 {xml_nodeset (0)}

    我正在尝试抓取以下网站的数据框 http stats nba com game 0041700404 playbyplay http stats nba com game 0041700404 playbyplay 我想创建一个表格 其中包
  • 如何在 C++ 上检查某个键是否被按下

    我怎样才能检查 Windows 上是否按下了某个键 正如其他人提到的 没有跨平台的方法可以做到这一点 但在 Windows 上你可以这样做 下面的代码检查 A 键是否按下 if GetKeyState A 0x8000 Check if h
  • 无法编译包“maps”

    当我安装 maps 包时 安装中出现警告 ld warning ignoring file Library Developer CommandLineTools SDKs MacOSX10 14 sdk usr lib libSystem
  • 无法将“gather”输出的列名称更改为默认名称以外的任何名称

    我正在尝试使用gather in the tidyr包 但我无法更改默认名称的输出列名称 例如 df data frame time 1 100 a 1 100 b 101 200 df long df gt gather foo bar
  • 将整个包传递给雪簇

    我正在尝试并行化 使用snow parLapply 一些依赖于包 即除snow 调用函数中引用的对象parLapply必须使用显式传递给集群clusterExport 有没有办法将整个包传递到集群 而不必显式命名每个函数 包括用户函数调用的
  • 在 RGL 中将立方体绘制到 3D 散点图中

    我正在尝试向 3D 散点图添加较小的立方体 网格 具有指定边长 我希望立方体位于原点 我该怎么做呢 我已经玩过cube3d 但我似乎无法将立方体正确定位 也无法使其成为网格 因此我可以看到它包含的数据点 这是我所拥有的 library rg
  • R 中的数据框操作 - 将单元格向左移动并删除 NA

    我有一个数据框 其列由随机分布的值和 NA 组成 如下所示 a lt c S E NA S NA b lt c A NA M G K c lt c I NA NA NA L meh lt dataframe a b c 1 2 3 4 5
  • 使用“assign()”为列表项分配值

    首先了解一些背景 我写了一个中缀函数 本质上取代了这个习惯用法 x length x 1 lt y 或者简单地说x lt append x y 对于向量 这里是 lt function x y xcall lt substitute x x
  • 使用data.table进行聚合

    经过 SO 用户的多次建议后 我终于尝试将我的代码转换为使用data table library data table DT lt data table plate paste0 plate rep 1 2 each 5 id rep c
  • 更改绘图区域背景颜色

    我想使用我们公司的颜色在 R 中制作一个图表 这意味着所有图表的背景应为浅蓝色 但绘图区域应为白色 我正在寻找答案 发现绘制一个矩形就可以完成这项工作 几乎 然而 绘图区域现在是白色的 并且图形不再可见 这可能吗 getSymbols SP
  • 更改ggplot2中的字体

    曾几何时 我改变了我的ggplot2字体使用windowsFonts Times windowsFont TT Times New Roman 现在 我无法摆脱这一切 在尝试设置family in ggplot2 theme 当我用不同的字

随机推荐

  • 如何测试变量是否已设置?

    在PHP中 有一个isset功能 那么Java呢 我想我可以用 null对于对象 但是像这样的值类型呢 int Java 的编译器不允许您定义变量并在为其赋值之前使用它们 因此该问题不会以与 php 中相同的形式存在 EDIT 如果在您的情
  • 重新导入具有相同名称的不同Python模块

    我有一个 python 项目 需要能够运行外部脚本 这些脚本动态导入到具有多个模块的目录结构中 现在 由于这些脚本是独立编写的并且彼此不知道 因此它们通常使用相同的模块名称 这使得我在逐个导入它们时遇到问题 例如 这是我的目录结构 main
  • F# 惰性求值与非惰性求值

    我刚刚开始学习 F 所以如果这是基础的 请友善 我读过标记为惰性的函数仅计算一次 然后缓存 例如 let lazyFunc lazy 1 1 let theValue Lazy force lazyFunc 与每次调用时实际运行的此版本相比
  • 区分 ASP.NET MVC4 中的空参数和缺失参数

    我正在写一个API 我想允许 PUT 方法来更新资源 下面是代表资源的示例模型对象 var resourceToUpdate new TestResourceModel Id 5 Name testName Description desc
  • 根据当前时间戳生成 MySQL 每小时细分

    恐怕这可能是一个非常令人尴尬的简单问题 但此时我的思绪完全陷入了困境 我有一个表 存储不同人进行的活动的数量以及活动发生的时间 我想创建一个接受人员姓名作为参数的报告 并显示从当前时间戳开始的过去 24 小时内该人员每小时的活动数 now
  • 在 prolog 中表示线性函数

    我想编写复合项来表示 Y a b X 形式的总体中不同变量之间的线性关系 例如 对于由汽车组成的总体 燃料消耗 2 3 距离 我在声明该关系与人口 群体 有关时遇到问题 同时声明每个变量的值在对象内链接 即汽车 A 的燃油消耗是 2 3 汽
  • PySimpleGui:如何在文本框中输入文本?

    我正在通过参考教程来学习 PySimpleGui Link 1 https pysimplegui readthedocs io en latest tutorial and Link 2 https pysimplegui readthe
  • collectionView cellForItemAt 未被调用

    我有一个UITableView其中每个原型电池都有一个UICollectionView在里面 该集合视图应该是图像网格 我对 Swift 很陌生 已经在 google 上搜索了几个小时 并阅读了大量 StackOverflow 文章 但似乎
  • 枚举拳击和平等

    为什么这会返回 False public enum Directions Up Down Left Right static void Main string args bool matches IsOneOf Directions Rig
  • 如何使用 jQuery 解开所有父项?

    p span a href link a span p 我该如何打开一切 只留下 a href link a edit 抱歉 我应该提供更多信息 基本上 我试图瞄准所有a那是唯一的孩子span的周围是p标签 我希望以下内容能够解决问题 但它
  • BaseX REST API:设置自定义 HTTP 响应标头

    我想将以下 HTTP 标头包含到所有响应中BaseX REST API http docs basex org wiki REST Access Control Allow Origin 这可能吗 BaseX 在底层使用 Jetty 您可以
  • 如何向 java.sql.date 添加天数?

    这是我的程序 我尝试过 java sql Date logicalDate Calendar c Calendar getInstance c setTime logicalDate c add Calendar DATE 1 下面的行显示
  • Cakephp - 使用身份验证时在控制器中获取用户 ID

    这似乎是一个两步的过程 u this gt Auth gt user uid u User id 用户登录后是否会在某处设置变量 您可以使用 uid this gt Auth gt user id 查看api文档 https api cak
  • 如何测试两个移动的二维边界框的碰撞?

    OBB 具有位置 x y 速度 x y 和方向 矩阵 在定期更新的情况下 OBB 必须相互碰撞 返回被认为成功的移动部分 我查看了 GPWiki 上的多边形测试 http gpwiki org index php Polygon Colli
  • GWT 和 OSGi 集成问题

    我在将 GWT 集成到 OSGi Equinox 容器中时遇到问题 入口点网页运行 我看到我的第一页 但是 当我点击按钮实现服务器调用时 它没有运行 我使用 Firefox 并且有 firebug 然后 当我看到网络字段时 我收到下一条消息
  • 在 python-fastApi 中间件中引发异常

    我正在尝试验证 fastapi 中间件中的令牌 但这似乎不可能 我认为中间件需要进行下一次调用 尽管这不是必需的 我无法在这个 python fastapi 后端找到任何好的解决方案来一次性处理令牌 任何帮助表示赞赏 app middlew
  • 没有自动提交的 Git 合并

    是否可以做一个git merge 但没有提交 man git merge 是这样说的 With no commit perform the merge but pretend the merge failed and do not auto
  • NSOperationQueue 随机暂停?

    我有一个大量使用 NSOperationQueue 的应用程序 有时我注意到一些 NSOperationQueues 会 锁定 或随机进入 isSuspished 状态 即使我的代码从未调用 setSuspished 方法 这是不可能复制的
  • 构建向导的好模式?

    我通常使用一个TabControl并以某种方式隐藏选项卡并浏览它们 我很好奇这样做的其他方法 你可以使用一个集合Panel http msdn microsoft com en us library system windows contr
  • 如何手动更改 ggplot2 中图例中的关键标签

    我正在准备要出版的情节 我创建了一个堆积箱形图来显示每组中患有血清阴性病例复杂积累的患者与非血清阴性患者的频率 图例使用数据框中的标签 这些标签适合我们正在从事该项目的人 但不适合发布 我想将这些名称更改为读者更容易理解的名称 例如运行以下