删除 ggplot 中的图层图例

2023-12-21

另一个 ggplot 传奇问题!

我有一个表单的数据集

test <- data.frame(
  cond = factor(rep(c("A", "B"), each=200)), 
  value = c(rnorm(200), rnorm(200, mean=0.8))
)

因此,有两个组和一些值,我想绘制密度图。我还想在图中添加一条线,指示每个组的平均值,因此我:

test.cdf <- ddply(test, .(cond), summarise, value.mean=mean(value))

然后在 ggplot 中调用:

ggplot(test, aes(value, fill=cond)) + 
  geom_density(alpha=0.5) + 
  labs(x='Energy', y='Density', fill='Group') + 
  opts(
    panel.background=theme_blank(), 
    panel.grid.major=theme_blank(), 
    panel.grid.minor=theme_blank(), 
    panel.border=theme_blank(), 
    axis.line=theme_segment()
  ) + 
  geom_vline(data=test.cdf, aes(xintercept=value.mean, colour=cond), 
    linetype='dashed', size=1)

如果运行上面的代码,您会得到一个指示每个组的图例,还有一个代表平均指标 vline 的图例。我的问题是如何摆脱传说geom_vline()?


根据您使用的 ggplot2 版本,您会遇到此问题。在 R2.14.1 上使用 ggplot2 与 0.9.0 我得到这个图:

其中不包括 vline 的图例。在此版本的 ggplot2 中,您可以使用以下命令调整图例的出现show_guide:

ggplot(test, aes(value, fill=cond)) + 
  geom_density(alpha=0.5) + 
  labs(x='Energy', y='Density', fill='Group') + 
  opts(
    panel.background=theme_blank(), 
    panel.grid.major=theme_blank(), 
    panel.grid.minor=theme_blank(), 
    panel.border=theme_blank(), 
    axis.line=theme_segment()
  ) + 
  geom_vline(data=test.cdf, aes(xintercept=value.mean, colour=cond), 
    linetype='dashed', size=1, show_guide = TRUE)

这重现了你的问题。默认,show_guide = FALSE。在旧版本中,您可以添加legend = FALSE to geom_vline为了省略图例。添加legend = FALSE仍然有效 在当前版本中仍然有效,但它会引发警告:

Warning message:
In get(x, envir = this, inherits = inh)(this, ...) :
  "legend" argument in geom_XXX and stat_XXX is deprecated. Use show_guide = TRUE or show_guide = FALSE for display or suppress the guide display.

我建议升级ggplot2.

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

删除 ggplot 中的图层图例 的相关文章

  • Plotly legendgroup 用于子图,以便单个图例控制所有图表

    我在用着plotly in r生成许多 子图 下面显示了一个玩具示例 library shiny library dplyr library plotly Toy Example ui lt fluidPage h3 Diamonds pl
  • Mac OS Big Sur R 编译错误:ld:找不到 CoreFoundation 框架

    在我的 Xcode 自动更新到 12 4 后 我的 Rstudio 包编译中断并抛出以下错误 ld framework not found CoreFoundation collect2 error ld returned 1 exit s
  • R CMD 检查注意:导入字段中的命名空间未导入

    我继续得到以下 R CMD 检查 通过devtools check 对于我准备提交给 CRAN 的包 您可以查看该包的结果here https cran rstudio com web checks check results clustR
  • 从命令行运行 R 脚本

    我有一个文件 名为a r 它有一个chmod of 755 sayHello lt function print hello sayHello 我如何通过命令行运行它 Answer recommended by R Language col
  • 检索每组的“倒数第二个”数据

    我想检索每组的 倒数第二个 数据 目前 代码如下 使用 group modify 两次 有没有可用的功能 如何简单地使用当前代码 谢谢 所希望的结果在附图中的红色矩形中 library dplyr test data lt data fra
  • 将数据框中的变量强制为适当的格式

    我正在处理一个由多种不同数据类型 数字 字符 时间戳 组成的数据帧 但不幸的是它们都作为字符接收 因此 我需要动态且尽可能高效地将它们强制转换为 适当 的格式 考虑以下示例 df lt data frame val1 c 1 2 3 4 v
  • 使用 dplyr 计算组平均值,同时排除当前观察值

    Using dplyr 最好 我试图计算每个观察值的组平均值 同时从组中排除该观察值 看来这应该可以通过组合来实现rowwise and group by 但这两个功能不能同时使用 给定这个数据框 df lt data frame grou
  • 如何将 Summary() 输出从 R 复制到 Excel

    你能传输 复制a的输出吗summary方法 如下所示 到 Excel 工作表 gt summary p2p dt SKILL A p2p dt SKILL A Patch in c BVG1 Patch Skill Date TOR MWF
  • 在 R 中使用 k-NN 和分类值

    我希望对主要具有分类特征的数据进行分类 为此 欧几里得距离 或任何其他数值假设距离 不适合 我正在寻找 R 的 kNN 实现 其中可以选择不同的距离方法 例如汉明距离 有没有一种方法可以使用常见的 kNN 实现 例如具有不同距离度量函数的
  • Shiny:如何在数据表中显示条形图

    我想在数据表中显示条形图 这link http jsfiddle net annoyingmouse em27yod1 显示我想使用 javascript 做什么 我不了解 javascript 或 html 所以你能告诉我是否可以使用闪亮
  • 测试 PCA 图上簇的显着性

    是否可以在 PCA 图上测试 2 个已知组之间聚类的显着性 测试它们的接近程度或分布量 方差 以及簇之间的重叠量等 这是一种定性方法 使用ggplot 在簇周围绘制 95 置信椭圆 注意stat ellipse 使用二元 t 分布 libr
  • 将函数应用于因子相关子矩阵

    我有一个对称矩阵 数据框 看起来像 structure list HQ673618 1 c NA 90 8 89 8 89 6 89 8 88 9 87 8 88 2 88 3 HQ674317 1 c 90 8 NA 98 6 97 7
  • 如何在 R 中建立具有某些条件的排列[重复]

    这个问题在这里已经有答案了 我是 R 新手 有点困惑 假设我有一个向量 c 1 2 3 4 5 6 我想生成具有四个元素的排列 每个排列应涉及 1 和 5 谢谢 您可以使用permutations https www rdocumentat
  • 将不规则时间序列拆分为规则月平均值 - R

    为了确定季节性对能源使用的影响 我需要将计费数据库中的能源使用信息与每月温度进行调整 我正在使用一个计费数据集 其中包含不同长度以及开始日期和结束日期的账单 并且我希望获得每个月内每个帐户的月平均值 例如 我有一个计费数据库 具有以下特征
  • 包含 NA 的数据的聚类标准误差

    我无法使用 R 和基于此的指导对标准错误进行聚类post http thetarzan wordpress com 2011 06 11 clustered standard errors in r cl 函数返回错误 Error in t
  • 带有 rename_with 的 Purrr 地图

    我正在尝试清理数据集的名称 我用过janitor clean names 开始 但是 我仍然有缩写想用下划线分隔开 我有可以使用的代码rename with str replace x gh gh cols starts with gh 但
  • 如何在 ggplot2 图中有两个源标题? [复制]

    这个问题在这里已经有答案了 我正在尝试在 ggplot2 图中添加第二个标题 与这位经济学家制作此图的方式类似 这是我制作的一个基本图 我知道如何在右下角添加一个标题 但如何在左下角添加另一个标题 ggplot mtcars aes mpg
  • 如何在R中对多个时间序列应用dtw算法?

    Problem 我有不同车辆速度的时间序列 我的最终目标是根据不同车辆在时间上的速度相似性对它们进行聚类 因此 我基本上需要生成一个距离矩阵 其中每个单元格包含一对车辆速度时间序列之间的距离 我想使用动态时间扭曲 dtw 作为距离度量 所以
  • 如何在 purrr::map_df 之后使用映射向量添加列

    我使用 mtcars 数据集作为示例来说明我的问题 我对每种气缸类型进行了线性回归 并使用 map df 将所有模型结果放在一起 下面的代码和输出 我想要做的是添加另一列名为 圆柱体 4 4 6 6 8 8 我怎样才能在map df中做到这
  • 如何在 bookdown 定理或示例环境中使用内联 R 代码

    我使用 bookdown 生成 html 和 PDF 文档 如何在定理和示例环境中使用内联 R 代码的结果 这是我尝试过的 title Test output bookdown pdf book toc false html documen

随机推荐

  • 我可以使用always emplace 代替insert 来插入单个元素吗?

    我想知道是否可以一直使用emplace取代insert当向STL容器中插入单个元素时 例如set unordered set 从签名来看 emplace更简单并且不涉及重载 停止使用有什么问题吗insert并使用emplace每时每刻 注意
  • 如果设置精度,为什么 Android LocationManager 在位置更新开始之前有很长的延迟

    如果我将任何准确性设置为标准 则 LocationManager 需要很长时间才能开始更新位置 Criteria criteria new Criteria criteria setAccuracy Criteria ACCURACY FI
  • 如何在Python列表中的特定索引处插入元素

    我正在创建一个列表 其项目将按索引号映射 我尝试使用list insert 方法 但还是总是这样将第一个元素添加到第 0 个索引我想要第一个索引处的第一个元素 例如 somelist somelist insert 1 Jack somel
  • CodeIgniter - 仅返回一行?

    目前 如果我正在对数据库进行查询 则应该只返回一行 使用 query stuff query this gt db gt get ret query gt result return ret 0 gt campaign id 是否有 Cod
  • 正则表达式仅适用于数字

    我没有太多使用正则表达式 所以我遇到了困难 我想要正则表达式只验证该字段包含数字 但不关心有多少 应该批准77和2377吧 但不批准 77 43 或 xyz777 我怎样才能使用正则表达式得到这个 是这个表情吗 0 9 好与不好 没关系 你
  • 如何使用 git-extensions 获取图标覆盖

    我已经使用 svn 有一段时间了 但现在我已经转向 git 了 根据我的发现 Tortoise Git 并没有让你很好地理解 git 的工作原理 这就是我选择 git extensions 的原因 问题是我习惯了 Tortoise 为我提供
  • 如何判断我运行的是 JRuby 还是 Ruby?

    我有一个带有工厂方法的脚本 我想根据脚本是从 JRuby 还是从 Ruby 运行来返回某个类的不同实现 有人对我如何从脚本内部区分差异有任何想法吗 我最初的一些想法是 尝试 包含 Java 如果失败则返回 Ruby 实现 这个方法行不通 R
  • 使用 Selenium 时是否需要安装 Chrome 还是只安装 chromedriver?

    我尝试过搜索 但没有找到明确的答案 在 Windows Server 2016 上 实际未安装 Chrome 浏览器 我下载了正确的 chromedriver exe 并将其放置在 D Apps chromedriver exe 中 我已将
  • 在 F# 中开发 ASP.NET 和 ASP.NET MVC 应用程序的缺点?

    我想试一试在 F 中开发 ASP NET 和 ASP NET MVC 应用程序 我喜欢使用函数式语言 并且在我看来 函数式范例比命令式编程更适合 HTTP 和 Web 尽管 F 当然可以做到这两点 我只打算在一些个人项目中尝试使用 F 但我
  • subversion “您正在尝试从多个 subversion 工作副本提交文件”

    Subversion 在移动 删除文件夹时有非常奇怪的行为 我有这个错误Subversion 不可靠 请更新过时的项目 https stackoverflow com questions 4619761 subversion unrelia
  • JavaScript 性能:While 与 For 循环

    前几天在一次技术面试中 被问到的问题之一是 如何优化 Javascript 代码 令我惊讶的是 他告诉我 while 循环通常比 for 循环更快 这是真的吗 如果是的话 这是为什么 你应该反驳这个负面的while循环会更快 看 JavaS
  • nginx - 多个 django 应用程序同一域不同的 URL

    我想在一个域上为多个 django 项目 实际上是 django Rest API 应用程序 提供服务 但在单独的 url 上为每个项目提供服务 像这样 http test com app1 http test com app1 http
  • 在 vb .net、VS 2008 中使用 oledb 在 oracle 数据库中插入值

    Private Sub Button3 Click ByVal sender As System Object ByVal e As System EventArgs Handles Button3 Click Dim insertOk A
  • WCF WSHttpBinding SOAP 安全协商失败

    我有一个相当简单的 WCF 自托管服务 使用 WSHttpBinding 但它拒绝工作 如果服务和客户端在同一台计算机上运行 则没有问题 但是一旦我将服务移至 window server 2008 客户端的通信尝试就会失败 例外 Syste
  • 在 ListAdapter 上调用 notificationDataSetChanged

    我有一个ListAdapter如下所示 setListAdapter new ArrayAdapter
  • JAX-WS 与 JAX-RPC

    我编写了 2 个 Web 服务 一个使用 Jax WS 另一个使用 Jax RPC 他们只是返回一个字符串 我使用 jMeter 对两者进行了压力测试 奇怪的是 Jax RPC 的速度要快一些 我什么时候才能真正从 Jax WS 的性能方面
  • 获取 Google 地图 API 密钥

    我使用的是 Windows 7 我已尝试使用以下命令多次使用出现在 c users YOURUSER android 中的 debug keystore keytool list alias androiddebugkey keystore
  • Kendo UI 网格再次发回已插入的行

    我遇到了问题 当插入成功完成并且如果我继续插入另一行时 在下一次插入中它也会发送之前成功插入的行 所以它是这样的 在第一次插入时 该行被发送回 webAPI 并成功插入 在下一次插入时 发送两行 其中一行来自第一步 在第三次插入时 它发送前
  • 循环目录中的文件不起作用

    考虑这个简单的脚本 bin bash DIR 1 for f in DIR do if f txt then echo Filename is f fi done 我只想返回扩展名为 txt 的文件 使用以下命令调用脚本 script1 h
  • 删除 ggplot 中的图层图例

    另一个 ggplot 传奇问题 我有一个表单的数据集 test lt data frame cond factor rep c A B each 200 value c rnorm 200 rnorm 200 mean 0 8 因此 有两个