在ggplot中使用geom_vline()复制图例

2023-12-09

我想创建这个图形:

aux_graf = structure(list(lines = structure(c(2L, 2L, 1L, 3L), .Label = c("h0", 
"ic", "median"), class = "factor"), values = c(21.19755, 23.06978, 
24, 22.13366)), .Names = c("lines", "values"), row.names = c(NA, 
-4L), class = "data.frame")

dadosGraf = structure(list(dados = c(18.7997, 20.5035, 18.6214, 19.9192, 
21.117, 20.8353, 17.527, 17.078, 17.6197, 21.4255, 18.7545, 19.2026, 
18.4187, 20.7641, 21.0553, 17.5905, 18.7561, 18.9772, 20.3084, 
18.8988, 19.1688, 19.2898, 22.059, 18.5854, 17.8896, 21.1609, 
26.1371, 21.4737, 30.9934, 22.8421, 24.4133, 20.4137, 25.5475, 
21.8791, 22.6706, 24.7531, 25.7219, 22.6389, 26.2308, 26.7998, 
28.4708, 26.9941, 25.1489, 24.6179, 27.0194, 25.0589, 22.1119, 
20.3069, 23.6758, 27.1201, 29.6136, 25.9948, 18.223, 23.7336, 
22.4208), y2 = 1:55), .Names = c("dados", "y2"), class = "data.frame", row.names = c(NA, 
-55L))

gp2 <- ggplot(data = aux_graf)+
       geom_vline(aes(xintercept = values, colour=lines, linetype=lines), show_guide=TRUE)+
       geom_point(data = dadosGraf, aes(x = dados, y=y2), size=3.2, shape=21, colour = 'black', fill = 'grey')+
       theme_bw()

enter image description here

现在,我只想更改标签、颜色和线型,但是当我这样做时,它会添加另一个图例,我不知道为什么。

gp2 + scale_color_manual(name = '', labels = c(ic = 'Limites I.C.', median = 'Mediana', h0 = 'Hipotese Nula'), values = c(ic = 'red', median = 'black',h0 = 'grey40'))
    + scale_linetype_manual(values=c(ic = 'dashed', median = 'solid',h0 = 'dotted'))

enter image description here

有什么帮助吗?谢谢!


您可以使用override.aes结合隐藏linetype传奇。和:

gp2 + 
  scale_color_manual(name = '', 
                     labels = c(ic = 'Limites I.C.', median = 'Mediana', h0 = 'Hipotese Nula'),
                     values = c(ic = 'red', median = 'black',h0 = 'grey40')) +
  guides(color = guide_legend(override.aes = list(linetype = c('dotted', 'dashed', 'solid'))),
         linetype = FALSE)

you will get this: enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在ggplot中使用geom_vline()复制图例 的相关文章

  • 在 R/ggplot2 中将字符串转换为函数参数的最佳方法? [复制]

    这个问题在这里已经有答案了 我正在开发一个闪亮的应用程序 用户可以选择可以使用 ggplot2 绘制哪些变量 但是我完全不确定将字符串 即要绘制的变量的名称 转换为合适的函数参数的最佳方法 考虑以下非常人为的 有效的示例 df lt dat
  • 删除 R 中的胡须和异常值

    我有连续的数据 我想用它来绘制R s plotly with a box or violin没有异常值和胡须的绘图 set seed 1 df lt data frame group c rep g1 500 rep g2 700 rep
  • 匹配向量内的向量

    I have vec1 lt c 0 0 0 1 1 0 1 1 1 0 0 1 vec2 lt c 1 1 我预计 magicFUN x vec1 y vec2 1 4 7 8 这意味着我想要一个完整向量在另一个向量内的位置 match
  • 如何规划庭院灯最有效的路线

    我正在尝试挂一些庭院灯 基于另一个问题 https cs stackexchange com questions 80134 christmas light route efficiency我问 我意识到我需要一种算法来解决路由检查问题 h
  • 不同的分位数:箱线图与小提琴图

    require ggplot2 require cowplot d iris ggplot2 ggplot d aes factor 0 Sepal Length geom violin fill black alpha 0 2 draw
  • corr.test 与 cor.test p 值

    我正在尝试使用 psych 包 psych 1 6 9 中的 corr test 但在使用 method spearman 时 它似乎给出了与 cor test 不同的 p 值 相关系数相同 但 p 值不同 我整理了一些示例代码和输出 如下
  • 哪种 LaTeX 包与 knit 一起使用以获得更多的表格控制?禁忌?

    我正在用 knitr 写一张更长的桌子xtable和tabular environment longtable 在 longtable 包中时print将它们纳入我的 Rnw file 问题是我对longtable环境控制不够 我有一些文本
  • R 中的 For 循环分配给数据框

    运行 for 循环后 我在分配给数据帧时遇到问题 当我使用 print 时 它给出了我的价值 有什么解释吗 salesdate lt rep seq from as Date 2013 12 19 to as Date 2013 12 23
  • R:使用 as.formula 修复模型中的模型调用

    我有一个gls模型 其中我将公式 来自另一个对象 分配给模型 equation lt as formula aic obj row model gt equation temp avg I year 1950 mod1 lt gls equ
  • 如何在shell脚本中运行R代码?

    我有一个 R 文件 myfile R 我想使用 shell 脚本来运行它 我怎样才能做到这一点 我试过这个 bin bash Rscript myfile R 但它给了我这个错误 Rscript 找不到命令 我也尝试过这个 bin bash
  • R 包“raster”在搜索“terra”最新版本时无法上传

    我正在 Windows 10 中使用 RStudio 2021 09 2 中的 R 4 1 2 工作 我正在处理空间数据 包括矢量和栅格 但三天前命令库 栅格 开始向我发出此警告 错误 loadNamespace i c lib loc l
  • 是否可以在 R 中创建自定义 pch 形状?

    R 中的许多绘图函数都使用图形参数pch指定数据点的形状 根据R 文档 https www rdocumentation org packages graphics versions 3 6 2 topics points 有 26 个矢量
  • 当 header=TRUE 时 read.fwf 出错

    我的模拟数据如下所示 LastName Date email CreditCardNum AgeZip Amount Paul 21 02 14 email protected cdn cgi l email protection 4241
  • 根据第二个数据帧中的匹配创建新列

    如果有两个数据框 top3df http dpaste com 1709875 and qw qw lt structure list id structure 1 25 Label c w01 w02 w03 w04 w05 w06 w0
  • 将英寸高度的字符向量转换为厘米?

    我得到一个字符向量 tibble H c 6 2 5 10 5 5 5 1 5 5 5 4 我想将其转换为厘米 请告知我该怎么做 有几种方法可以使用 1 阅读与fread粘贴到单个字符串后 library data table fread
  • ggplot2:图例中的斜体

    我正在尝试编辑图例中的标签 以便第一个标签 WT 为纯文本 而后续 7 个标签为斜体 我一直在使用element text face c plain rep italic 7 但这导致没有任何标签被转换为斜体 我有点困惑为什么它不起作用 因
  • 通过排列进行多组测试

    我有一个 df 其中包含与两个实验相关的两组值 value 1 和 value 2 一个实验包含两组 0 和 1 另一个实验包含三组 0 1 2 test group Value 1 Value 2 AA 0 15 1 11 2 AA 0
  • 如何将带有几行代码的字符数组转换为 data.frame?

    我有以下数组 my list lt c Jan 01 Dec 31 00 00 24 00 Jan 01 Jun 30 12 00 18 00 Jul 06 Dec 31 09 00 19 00 导致以下结果的最短代码是什么 x1 x2 x
  • 动态显示仪表板页面

    我有一个实用的闪亮应用程序 它使用shinydashboard包裹 新功能需要特定于用户的行为 例如 针对不同的用户名使用不同的数据集 因此我打算 显示登录表单 验证凭据并设置反应值LoggedIn to true如果成功的话 显示实际情况
  • 修改x轴刻度标签

    我正在尝试更改由生成的箱线图的 x 轴刻度标签ggplot2 x 轴是一个分类变量 HabFac 我想要的是将其刻度更改为 6 个化学品 A E 下面是我的代码 raw data read table Read data p TT ggpl

随机推荐

  • 如何使用 Javamail 访问其他邮箱(IMAP、Exchange 2010)

    我想通过 Javamail API 1 4 5 使用 IMAP 和普通登录来访问共享邮箱 不是文件夹 邮件服务器是 Exchange Server 2010 用户 用户1 电子邮件受保护 密码 xxxx 共享邮箱 电子邮件受保护 我已成功访
  • 为什么使用 Collection.empty[T] 而不是 new Collection[T]()

    我想知道是否有充分的理由使用Collection empty T 代替new Collection T 或相反 或者这只是个人喜好 Thanks Calling new Collection T 每次都会创建一个新实例 另一方面 Colle
  • Azure 应用程序网关出现错误 404,但后端探测正常

    我已经设置了应用程序网关 并在我的域中添加了 CNMAME 以指向应用程序网关的 DNS 名称 应用网关最终将指向3个站点 我创建了 3 个 Web 应用程序 并将每个应用程序添加到后端池中 我最初使用默认的 HTTP 设置 appGate
  • 使用 Selenium 使用 WindowHandles 跟踪和迭代选项卡和窗口的最佳方法

    我们正在与 Selenium webdriver 合作 为 Internet Explorer 11 进行 UI 测试 在测试的 Web 应用程序中 会弹出几个屏幕 在一些测试中 我们最终得到了三个浏览器窗口 因此也得到了三个 Driver
  • Django日月事件日期查询

    我有一个 Django 模型 如下所示 class Event models Model name model CharField etc date model DateField etc 我需要的是一种获取给定日期和月份的所有事件的方法
  • 在画布中创建多个可拖动的圆圈

    我在 HTML 画布中制作多个可拖动的圆圈时遇到问题 我真的不知道我做错了什么 希望有人能指出我的错误 这里是菜鸟 所以请不要猛烈抨击 我在这里附上了我的代码 var canvas document getElementById canva
  • 使用 Kivy 检索 MySQL

    我有一个 Kivy 代码 其输出是 我想更换Box No 从 MySQL 检索字符串 到目前为止 我已经尝试将 MySQL 实现到 python 脚本中 class RemoveScreen MyLayout def init self k
  • 为什么在 Android 模拟器中单击“调试”时 React Native 应用程序会崩溃?

    在 Android 模拟器中单击 调试 时 React Native 应用程序显示错误 尝试在空对象引用上调用接口方法 java lang String com facebook react bridge Cat alystInstance
  • 不使用 + 运算符将两个数字相加的最佳方法是什么?

    我和一个朋友正在反复玩脑筋急转弯 但我不知道如何解决这个问题 我的假设是某些按位运算符是可能的 但不确定 在 C 语言中 使用按位运算符 include
  • 如何在 Visual Studio 2019 中将清单文件添加到我的 C# 程序?

    我有一个简单的应用程序 我想强制在管理模式下运行 为此 我需要编辑清单文件 我看到教程显示通过单击 项目 gt 添加 gt 新项目 来添加它 但那里没有适合我的清单文件 我尝试制作自己的文件 并将其从项目属性设置为清单文件 但我不知道在那里
  • 传递给 readFileSync 的匿名函数不返回任何数据

    我写了一个简单的JS对象 它有功能csvFileToArray 函数应返回解析后的 CSV 数组 问题是我没有传递给匿名函数的输出readFileSync test1已正确记录到控制台 但是test2 is not 这是我第一次使用 nod
  • 如何使用 bash 从 URL 字符串获取维度

    我在 mac 上使用 bash 并有一个 URL 字符串 我想从包含如下尺寸的 URL 中提取宽度和高度值 url domain com project asset 300x250 july2 url domain com project
  • 使用 Office Web Apps,您可以通过 webdav 打开文档吗?

    我们正在将旧的桌面应用程序转换为支持网络的等效应用程序 然而 有一个功能造成了困难 即编辑 MS Word 文档 当前提出的解决方案是通过 WebDAV 发布 DOC 和 DOCX 文件 并使用自定义 ActiveX 组件启动 WinWor
  • scanf 一个大的十六进制值

    我在尝试使用 scanf 从用户处获取大的十六进制数字 12 个字符 时遇到问题 它似乎只得到最后8个字符 例如 ABFFFFFFFF将变成0000FFFFFFFF 这是我的代码 unsigned long long address sca
  • datetimepicker 在单击外部时将日期设置为今天的日期

    我到处寻找这个问题的答案 但没有运气 所以现在我不得不问 我有 Trent Richardson 的日期时间选择器 由于某种原因 设置的选项非常少 当我单击外部而不选择日期时 它会自动将日期字段设置为今天的日期 有人知道发生了什么事吗 这是
  • java进程中有很多线程

    为什么一个简单的 Java GUI 应用程序要创建这么多线程 Java 使用线程来做很多事情 当然是应用程序的主线程 应用程序启动的任何线程 例如 SwingWorker Swing 有一个单独的事件调度线程以及一些其他内务线程 计时器 其
  • 解码音频和视频并处理两个流——ffmpeg、sdl、opencv

    我的目标是独立处理 mpeg 2 文件的音频和视频 并保持两个流的同步性 视频时长最多约为 1 或 2 分钟 首先 按照这个post opencv 用于读取视频 并执行处理 ffmpeg 用于音频 SDL 用于播放两者 听起来很完美 考虑到
  • 如何删除正文周围的边距空间或清除默认的 css 样式

    我诚然是一个初学者 但在发布此内容之前我也做了相当多的搜索 我的 div 元素周围似乎有额外的空间 我还想指出的是 我尝试了 border 0 padding 0 等多种组合 但似乎没有什么可以消除空白 这是代码
  • 从字符串中删除特定标记

    我必须从字符串变量中删除特定标记 例如 如果字符串变量是这样的 GUID 456709876790 我需要删除 GUID 从字符串中分离出来 只需要 456709876790 如何做呢 两种选择 当你刚刚从start 你可以很容易地使用子字
  • 在ggplot中使用geom_vline()复制图例

    我想创建这个图形 aux graf structure list lines structure c 2L 2L 1L 3L Label c h0 ic median class factor values c 21 19755 23 06