ggplot:同时通过“geom_rect”排列因子顺序并突出显示区域

2023-12-31

首先,指定分类变量顺序的方法ggplot是重新排序它的级别data.frame。其次,要在我们可以使用的任何绘图上突出显示一个区域geom_rect。这里需要注意的是,不要将数据传递给geom_rect,否则它不允许我们设置alpha,因此网格线将不可见。现在有2种情况:

  • 如果我们将数据传递给geom_rect(或到顶层ggplot()),订单与中的一致data.frame,但正如我提到的,矩形不会是透明的
  • 如果我们只将数据传递给geom_point图层,ggplot 按字母顺序重新排列离散变量

如何同时拥有这两个标准,即具有预定义的顺序并在所需位置具有透明矩形?

奖金问题:如何在离散变量处有一个矩形,其边缘位于网格线之间,即通过调整0.5? vjust and hjust这里不使用参数(正如警告告诉我们的那样)。以及如何使矩形填充整个垂直空间(为此我们需要定义ymax as the n+1第一个因子水平,该水平不存在)。

require(ggplot2)

ex <- data.frame(a = factor(letters[1:10]),
                 b = factor(rep(c('b', 'a'), 5)),
                 c = rep(letters[1:5], 2))

ex$a <- factor(ex$a, levels = ex$a[order(ex$b)])

ggplot(
    # uncomment this to see the other failure:
    # ex, aes(y = a, x = c)
) +
    geom_rect(
        aes(
            xmin = 'b',
            xmax = 'd',
            ymin = 'd',
            ymax = 'j'
            ),
        alpha = 0.2
    ) +
    geom_point(
        data = ex,
        aes(
            y = a,
            x = c
        )
    )

我能做的最好的事情就是避免data问题通过使用annotate相反(数据自由层)。你需要以某种方式放置geom_point首先,但我不知道为什么。看起来比例是由第一层决定的,即使我已经提供了数据和映射ggplot.

ggplot(data = ex, aes(y = a, x = c)) +
    geom_point() +
    annotate(xmin = 'b', xmax = 'd', ymin = -Inf, ymax = Inf, geom = 'rect', alpha = 0.2)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ggplot:同时通过“geom_rect”排列因子顺序并突出显示区域 的相关文章

  • 将 R 与 Rsruby 集成

    我想知道是否有人有将 R 集成到 Rails 中的经验 特别是在 heroku 上 我熟悉 rsruby gem 它是 ruby 与 R 事实上的 也许是唯一的 绑定 但是有关将 R 与 Rails 集成的文档即使不是不存在 也是很少的 比
  • 为什么“str_extract”只捕获其中一些值?

    我有一个表 其中有一个 会员类型 列 其中包括我们多年来使用的无数不同的会员级别 example lt data frame membership c Legacy Payment ID 3564 Payment Record 0 Peri
  • rollapply用于累积窗口[关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我试图弄清楚如何在数据窗口上使用 R rollapply 该窗口从数据的开头累积扩展 在时间 t 滚动应用应使用 1 t
  • ggplot2:图例下方的中心图例而不是面板区域

    ggplot默认情况下 图例位于面板下方居中 这在某些情况下确实令人沮丧 请看下面的例子 ggplot diamonds aes cut fill clarity geom bar coord flip theme legend posit
  • R 的 read.csv 在第一列名称前面加上垃圾文本[重复]

    这个问题在这里已经有答案了 我已将数据从 SQL Server Management Studio 中的结果网格导出到 csv 文件 csv 文件看起来正确 但是当我使用 read csv 将数据读入 R 数据帧时 第一个列名称前面带有 如
  • 根据特定行中的值对列重新排序。

    我在数据框中有以下数据 aa bb cc 1 3 4 5 2 5 4 3 3 7 8 6 100 33 63 55 我需要根据最后一行中的值对列重新排序 这种转变的结果将是 bb cc aa 1 4 5 3 2 4 3 5 3 8 6 7
  • 在闪亮应用程序的 DT::datatable 中添加、删除和编辑行

    我有下面闪亮的应用程序 我可以通过按添加新行Add基于闪亮的小部件选择 我可以通过按选择并删除一行Delete我想将它们与单击一行的功能结合起来 然后在按Edit 例如 如果我单击第二行 然后更改Security Type小部件来自Stoc
  • 在r中拆分数据并将所有拆分文件保存在csv中

    我有一个名为 data 的数据集 Model Garage City Honda C Chicago Maruti B Boston Porsche A New York Honda B Chicago Honda C New York 它
  • 将 12 小时字符时间转换为 24 小时

    我有一个包含字符格式时间的数据集 我试图将其从 12 小时格式转换为 24 小时格式 我做了一些搜索 但我发现的所有内容似乎都假设字符已经采用 24 小时格式 这是我工作时的一个例子 times lt c 9 06 AM 4 42 PM 3
  • 如何在 R 中“推断”面板数据的值?

    我有一个带有 NA 值的面板数据 如下所示 uid year month day value 1 1 2016 8 1 NA 2 1 2016 8 2 NA 3 1 2016 8 3 30 4 1 2016 8 4 NA 5 1 2016
  • 从每小时中提取/子集分钟值

    我的数据框包含以下格式的日期值YYYY MM DD HH MM SS跨越 125000 多行 按分钟细分 每行代表一分钟 1 2018 01 01 00 04 00 2 2018 01 01 00 05 00 3 2018 01 01 00
  • 如何从R中串扰的filter_select中删除(全部)?

    我遵循图 16 7 的示例https plotly r com client side linking html https plotly r com client side linking html并且无法弄清楚为什么有一个名为 全部 的
  • dplyr:带引号变量名的 mutate 的标准评估

    我将如何使用mutate 我的假设是我正在寻找标准评价就我而言 因此mutate 但我对此并不完全有信心 当使用接受变量名列表的函数时 如下所示 createSum function data variableNames data gt m
  • 关于子组的新列和另一列中的百分比范围

    我有一个如下所示的示例 df df test lt data frame Group Name c Group1 Group2 Group1 Group2 Group2 Group2 Group1 Sub group name c A A
  • mlogit:需要 TRUE/FALSE 时缺少值

    我有来自离散选择实验 DCE 的数据 该实验研究了来自不同行业的个人的招聘偏好 我已经格式化为长格式 我想使用 mlogit 进行建模 我已导出数据 并且可以使用 asclogit 命令在 Stata 中成功运行模型 但在 R 中运行时遇到
  • 使用 2 个向量参数翻转函数

    我想对需要 2 个向量参数的函数应用滚动 这是使用 data table 的示例 不起作用 library data table df lt as data table cbind data frame x 1 100 y 101 200
  • 从受密码保护的站点读取信息

    我一直在 R 教程中使用 readLines 从网站上抓取信息 我现在希望从我自己的网站提取数据 特别是 awstats 数据 但是该域受密码保护 有没有一种方法可以通过用户名和密码传递我需要的特定 awstats 数据的 url url
  • 更新两组单选按钮 - 闪亮

    我问了这个问题 反应式更新两组单选按钮 闪亮 https stackoverflow com questions 35040579 update two sets of radiobuttons reactively shiny 昨天 但也
  • 使用 roxygen2 导入两个同名函数

    我是 CRAN 包的维护者 在加载时收到以下消息 checking whether package qdap can be installed 10s 10s WARNING Found the following significant
  • 如何通过组度量的平均值在 df 内排列 dplyr:: 组?

    借鉴吴卡拉的设计https stackoverflow com a 26555424 9350837 https stackoverflow com a 26555424 9350837答案 我希望根据各个组汇总测量的平均值对分组 df 进

随机推荐

  • 将拍摄图像的背景颜色从相机更改为白色

    我正在开发一个应用程序 用户可以在其中捕获一些图像 然后他会将背景颜色更改为白色 与 FotoFuze org 的做法相同 我想知道如何将背景颜色更改为白色而不丢失对象数据 为此 我经历了一些事情 例如检测背景颜色 并将背景色的像素编辑为透
  • Excel vba 代码停止工作(变量未定义)

    免责声明 我不是程序员 我把时间花在服务器故障上 我只是一个低级管理员 我们有一个在 Office 2003 中创建的 Excel 电子表格 其中包含 vba 代码 我们最近使用了 Office 2007 电子表格继续正常工作 但是 安装
  • 使用 WaitForMultipleObjects 等待多个线程

    我正在使用WaitForMultipleObjects函数等待多个线程的完成 但我做错了什么 因为结果不是预期的 请参阅此示例代码 type TForm1 class TForm Memo1 TMemo Button1 TButton pr
  • teamcity 构建项目无法启动 MSBuild.exe。路径中存在非法字符

    我正在尝试在 teamcity 中构建一个项目 它将执行 TFS 的签出 并且文件位于构建服务器本地 如果我在服务器上手动运行构建命令 它会起作用 C WINDOWS Microsoft NET Framework v4 0 30319 m
  • 如何在 Ruby 中修复这个多行正则表达式?

    我的 Ruby 正则表达式在多行模式下无法正常工作 我正在尝试将 Markdown 文本转换为 Redmine 中使用的 Textile eque 标记 问题出在我用于转换代码块的正则表达式中 它应该找到任何以 4 个空格或制表符开头的行
  • Bitbucket git 凭证(如果已通过 Google 注册)

    我在 bitbucket org 上有一个帐户 是通过使用我的 Google 帐户注册创建的 现在 每次登录时 我只需单击 使用 Google 登录 即可 如何从 git 命令行访问我的存储库 它要求我输入用户名和密码 我有用户名 但没有密
  • python multiprocessing - 将子进程日志发送到在父进程中运行的GUI

    我正在编写的一些分析代码之上构建一个接口 用于执行一些 SQL 并处理查询结果 我想向用户公开此分析代码中围绕许多事件的日志记录 因为分析代码运行时间相当长 并且因为我不希望 UI 阻塞 所以到目前为止我已经通过将分析函数放入其自己的线程中
  • 类型“boolean”不可分配给类型“ObservableInput<{}>”

    我正在开发 Angular 6 项目 我正在为我的routeGuards 使用 canDeactivate 并使用弹出窗口来显示路线留下消息 但问题出在我的价格表守卫服务上悬停 flatMap isAllow gt Error 类型 isA
  • 让文本穿过 div

    好的 这是一项调查 其中 div 是图表 就像您在 Facebook 上看到的那样 基本上 div style border 1px solid black width 300px div style width 100px This te
  • 通过 google play 更新应用程序时下载内容?

    所以这是我第一次发送我的应用程序的更新 我不知道通过 google play 更新应用程序时实际会发生什么 以下是一些我无法得到答案的问题 实际更新了什么以及这个过程如何工作 即更新完成时的方法或回调 共享首选项文件会发生什么情况 名称值对
  • 属性或枚举或静态最终

    当涉及到在名称 值对中声明预定义常量时 我 一直在 java util Properties enums 或具有 public static final 值的单独类之间随机选择 为了供将来参考 我需要一些关于采取哪种方法的指南 Thanks
  • MSDN 上的 101 LINQ 示例中的这段代码是否存在错误? (更新:已修复)

    NOTE 查理 卡尔弗特 https stackoverflow com users 253576 ccalvert下面回复说 101 个 LINQ 示例现已更新为正确的代码 MSDN Visual C 开发人员中心有一个名为101 个 L
  • 任务中的基本容器已退出

    我正在尝试使用 aws ecs 配置我的 docker hub 映像 我在运行任务时创建了存储库 集群和任务 但在任务退出 1 中收到错误作为基本容器 在尝试获取确切的错误详细信息时 我发现我的一些变量显示为未配置 找到错误所附的屏幕截图
  • 如何删除旧的订阅

    我有 3 年的订阅 我只想删除 2 年未使用的旧订阅和孤儿订阅 下面的脚本显示了所有订阅 计划 创建时间 上次执行时间 对于缺乏归属表示歉意 您可以使用它来查找要转储的订阅位置 并使用 Kavins 指示手动删除它们 SSRS SUbscr
  • 如何使用 sympy 定义条件函数?

    我希望能够定义一个表达式 该表达式获取定义变量的所有值并将表达式计算为0当它没有定义时 与此类似 import numpy as np import sympy as sp def expr k1 k2 x y sp symbols x y
  • VB.NET - 计算两个日期之间的天数(排除)

    我正在尝试计算两个日期之间的天数 不包括星期六 and Sundays 到目前为止我已经写了这段代码 Dim startDay As Integer Dim endDay As Integer Dim days As Integer Dim
  • Elastic Search 匹配短语查询 -> 输出不可预测

    示例文档 id 5 title Quick Brown fox jumps over the lazy dog genre fiction Mapping movies mappings properties genre type text
  • Jupyter Notebook 和之前的输出

    有什么方法可以在不重新运行程序的情况下查看以前的输出吗 例如 我让机器学习算法过夜 早上我就得到了结果 但是 由于某种原因 当我在原始代码上按 Enter 时 它再次开始运行 原始输出消失了 输出存在于特定的上下文中 即单元 并且只要内核仍
  • 什么事件捕获 DataGridViewCell 中组合框中的值更改?

    我想在 a 中的值发生更改时处理该事件ComboBox in a DataGridView cell 有的是CellValueChanged事件 但直到我单击事件内的其他位置后 该事件才会触发DataGridView 一个简单的ComboB
  • ggplot:同时通过“geom_rect”排列因子顺序并突出显示区域

    首先 指定分类变量顺序的方法ggplot是重新排序它的级别data frame 其次 要在我们可以使用的任何绘图上突出显示一个区域geom rect 这里需要注意的是 不要将数据传递给geom rect 否则它不允许我们设置alpha 因此