使用ggplot2和facet_wrap显示不同的轴标签

2024-04-20

我有一个包含不同变量和不同单位的时间序列,我想在同一个绘图上显示它们。

ggplot 不支持多轴(正如这里所解释的 https://stackoverflow.com/questions/3099219/plot-with-2-y-axes-one-y-axis-on-the-left-and-another-y-axis-on-the-right),所以我听从了建议并尝试用小平面绘制曲线:

x <- seq(0, 10, by = 0.1)
y1 <- sin(x)
y2 <- sin(x + pi/4)
y3 <- cos(x)

my.df <- data.frame(time = x, currentA = y1, currentB = y2, voltage = y3)
my.df <- melt(my.df, id.vars = "time")
my.df$Unit <- as.factor(rep(c("A", "A", "V"), each = length(x)))

ggplot(my.df, aes(x = time, y = value)) + geom_line(aes(color = variable)) + facet_wrap(~Unit, scales = "free_y", nrow = 2)

Here is the result: enter image description here

问题是只有一个 y 标签,表示“值”,我想要两个:一个带有“电流 (A)”,另一个带有“电压 (V)”。

这可能吗?


In ggplot2_2.2.1您可以使用以下命令将面板条移动为 y 轴标签strip.position论证中facet_wrap。使用此方法,您不会同时拥有条带标签和不同的 y 轴标签,但这可能并不理想。

将条带标签放置在 y 轴(“左”)上后,您可以通过给定一个命名向量来更改标签labeller用作查找表。

条带标签可以通过以下方式移到 y 轴之外strip.placement in theme.

删除条形背景和 y 轴标签,以获得具有两个窗格和不同 y 轴标签的最终图形。

ggplot(my.df, aes(x = time, y = value) ) + 
     geom_line( aes(color = variable) ) + 
     facet_wrap(~Unit, scales = "free_y", nrow = 2, 
                strip.position = "left", 
                labeller = as_labeller(c(A = "Currents (A)", V = "Voltage (V)") ) )  +
     ylab(NULL) +
     theme(strip.background = element_blank(),
           strip.placement = "outside")

enter image description here Removing the strip from the top makes the two panes pretty close together. To change the spacing you can add, e.g., panel.margin = unit(1, "lines") to theme.

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

使用ggplot2和facet_wrap显示不同的轴标签 的相关文章

  • 汇总表中各列的字符值比例

    在这种数据框中 df lt data frame w1 c A A B C A w2 c C A A C C w3 c C A B C B 我需要计算所有列中字符值的列内比例 有趣的是 以下代码适用于大型实际数据集 但对上述玩具数据会引发错
  • 如何从 R 数据框中提取关键字

    我是 R 中文本挖掘的新手 我想从数据框的列中删除停用词 即提取关键字 并将这些关键字放入新列中 我尝试制作一个语料库 但它对我没有帮助 df C3是我目前拥有的 我想添加栏目df C4 但我无法让它工作 df lt structure l
  • 如何将同一行中以逗号分隔的值拆分到R中的不同行

    我有一些数据来自谷歌表格 https forms gle rGQQL3tvA1PrE4dD8我想拆分以逗号分隔的答案 and 复制参与者的 ID 数据如下 gt head data names Q2 Q3 Q4 1 PART 1 fruit
  • 读取R中打开的Excel文件

    有没有办法将打开的Excel文件读入R 当Excel中打开一个excel文件时 Excel会对文件加锁 比如R中的read方法无法访问该文件 你能绕过这个锁吗 Thanks 编辑 这发生在带有原始 Excel 的 Windows 下 发生错
  • 如何定义“f_n-chi-square”函数并使用“uniroot”求置信区间?

    I want to get a 95 confidence interval for the following question 我已经写了函数f n在我的 R 代码中 我首先使用 Normal 随机采样 100 个样本 然后定义函数h
  • R - 与 SpatialPolygonsDataFrame 对象相交的 SpatialLinesDataFrame 列表的嵌套循环

    我有一系列需要完成的步骤SpatialLinesDataFrame 此处的 线 基于对象与多特征中各个特征的关系SpatialPolygonsDataFrame 多边形 对象 简而言之 每个线列表元素源自单个面要素内部 并且可能会也可能不会
  • 如何使用 xpath 检查某个对象在网页中是否可见?

    我正在 R 中使用 RSelenium 包来进行网络抓取 有时加载网页后 需要检查某个对象在网页中是否可见 例如 library RSelenium open a browser RSelenium startServer remDr lt
  • 使用大矩阵操作

    我必须使用 big matrix 对象 并且无法计算某些函数 让我们考虑以下大矩阵 create big matrix object x lt as big matrix matrix sample 1 10 20 replace TRUE
  • 融化R中的下半矩阵

    如何融化下半三角形加对角矩阵 11 NA NA NA NA 12 22 NA NA NA 13 23 33 NA NA 14 24 34 44 NA 15 25 35 45 55 A lt t matrix c 11 NA NA NA NA
  • dplyr 返回每个组的全局平均值,而不是每个组的平均值

    有人可以解释一下我在这里做错了什么 library dplyr temp lt data frame a c 1 2 3 1 2 3 1 2 3 b c 1 2 3 1 2 3 1 2 3 temp gt group by temp 1 g
  • 将第 N 行上的 NA 行插入 data.frames 列表,其中 N 来自列表

    经过几个小时后 我发现自己无法解决以下问题 我有一个数据框列表 我想分别向每个 DF 插入 而不是替换 一行或多行 NA 始终至少一行 要插入的 NA 数量存储在单独的列表中 为了说明这一点 我有以下两个列表 list of datafra
  • 获取函数的命名空间

    我正在开发一个包 我希望在其中向对象添加编辑历史记录 该包允许其他包注册用于编辑对象的函数 我正在寻找一种方法来记录注册用于编辑的函数的包的版本 问题是 给定一个函数 如何从导出的位置获取包 我的想法是调查它的搜索路径 但是search 仅
  • randomForest 包在删除一个预测类时的奇怪行为

    我正在运行一个随机森林模型 它产生的结果从统计角度来看对我来说完全没有意义 因此我确信有些东西mustrandomForest 包的代码出现错误 至少在模型的本次迭代中 预测 左侧变量是具有 3 种可能结果的政党 ID 民主党 独立党 共和
  • 如何在 Caret 中绘制随机森林(护林员)树

    我生成了如下所示的随机森林树 并尝试绘制它 但出现错误 我在哪里犯了错误 我怎样才能以正确的方式绘制它 Actmodel lt train Activity Section Author data CB1 method ranger trC
  • 将字符串列拆分为多个虚拟变量

    作为 R 中 data table 包的相对缺乏经验的用户 我一直在尝试将一个文本列处理为大量指示符列 虚拟变量 每列中的 1 表示特定的子字符串是在字符串列中找到 例如我想处理这个 ID String 1 a b 2 b c 3 c 进入
  • 列出 R 数据文件的内容而不加载

    我有时用print load myDataFile RData 当我加载数据文件时列出它的内容 有没有办法列出内容而不加载数据文件中包含的对象 我认为如果不加载对象就无法做到这一点 解决方案可能是使用包装器将 R 对象保存到save 该函数
  • purrr::可能函数可能无法与map2_chr函数一起使用

    我怀疑这是 purrr 包中的错误 但想先在 StackOverflow 中检查我的逻辑 在我看来 possibly功能在内部不起作用map2 chr功能 我正在使用 purrr 版本 0 2 5 考虑这个例子 library dplyr
  • 警告消息 - 来自 dummies 包的 dummy

    我正在使用 dummies 包为分类变量生成虚拟变量 其中一些变量具有两个以上类别 testdf lt data frame A as factor c 1 2 2 3 3 1 B c A B A B C C C c D D E D D E
  • 在R中循环子文件夹

    我正在 R 环境中包含多个子文件夹的文件夹中工作 我想要循环遍历多个子文件夹 然后在每个子文件夹中调用 R 脚本来执行 我想出了下面的代码 但我的代码似乎添加了 到子文件夹列表 我收到错误 文件中的错误 文件名 r 编码 编码 无效的 描述
  • 如何在 Shiny 中提取动态生成的输入值?

    我正在创建一个闪亮的应用程序 它将根据客户的不同功能为客户生成分数 在我闪亮的应用程序中 我提供了 checkboxGroupInput 来选择所需的功能 根据所选功能 应用程序将动态地将 numericInput 添加到 Web ui 以

随机推荐

  • ASP.NET Identity,持久性 cookie - 是内置的类似的东西吗?

    我们正在使用Cookie身份验证提供者并希望实施 记住账号 我们的应用程序中的功能将像这样工作 无论是否 记住账号 复选框是否被选中 令牌过期时间应始终设置为 30 分钟 SlidingExpiration 打开 如果用户没有选中 记住我
  • Spring Security 页面无法在 Chrome 上的 Iframe 中打开

    我正在使用 Spring Boot Spring Security 和 jdk 1 8 当我尝试在 Chrome 上的 iframe 中打开任何安全的 Thymleaf 页面时 它每次都会将我重定向到登录页面 它在 Firefox 和 IE
  • 是否有一个 jQuery 选择器/方法来查找 n 级的特定父元素?

    考虑以下 HTML 如果我有对 元素的 JSON 引用 那么在这两种情况下如何获取对外部 元素的引用 table tr td td tr table
  • 使用 IIS 6 进行 Web 部署时出现问题

    我已经尝试使用 Visual Studio 2010 中的 Web 部署选项发布到安装了 Windows Server 2003 的 IIS 6 服务器很长时间了 我已在服务器上安装了 Web 部署代理 启动了服务并遵循此链接中的所有说明
  • 为什么 CSS 中的背景:url 不适用于 Django?

    我的导航栏有以下 CSS 代码 footer navigation background 1841c8 url images nav background gif height 40px padding 0 0 0 20px 但是 当我启动
  • 一个域上的 ProxyPass 和 DocumentRoot

    假设我有以下配置
  • 如何在 Objective-C (iPhone) 中连接字符串? [复制]

    这个问题在这里已经有答案了 可能的重复 如何在 Objective C 中连接字符串 https stackoverflow com questions 510269 how do i concatenate strings in obje
  • Pycharm:遇到调试点时如何专注于编辑器

    我使用的是mac Pycharm版本为2018 2 4社区版 当我使用调试器运行调试会话并命中调试点时 我必须使用鼠标单击编辑器才能在编辑器上键入代码 如果我不这样做并直接敲击键盘 Mac 会发出一些 bing 声 表明键盘输入对任何应用程
  • SignalR:连接建立时服务器如何正确订阅组

    我已经查看了几个地方 但仍然找不到关于如何使用组的明确说明 我正在使用组进行过滤 仅将消息传递给客户端子集 我想将客户端加入服务器端的组OnConnected事件 客户端不需要知道它属于哪个组 问题 我是否也应该覆盖OnReconnecte
  • Firebase google-services.json 文件

    我对 Firebase google services json 文件有疑问 每次我添加或更改某些内容时 例如 如果我添加新的 SHA1 指纹 是否需要再次下载该文件并将其放在 Android 项目的应用程序文件夹中 或者只使用第一次创建的
  • 更改 Firebase 电子邮件不会更新providerData

    我在我的 iOS 应用程序中使用 Firebase 用户使用 Firebase 的电子邮件和密码身份验证登录 目前 我正在创建允许用户更改电子邮件和密码的功能 我注意到使用成功更改电子邮件地址后changingEmailForUser 电子
  • CSS 边距为负而不移动父容器

    我正在尝试进入此页面 http musicaladvocacy org http musicaladvocacy org 显示 Home 灰色渐变中的白色容器 的区域向上移动约 60 px 但正如您所看到的 它同时将父容器向上移动 我只是想
  • 单选按钮上的 jQuery .change()

    我一定在这里遗漏了一些明显的东西 我无法理解 改变 http api jquery com change 触发单选按钮 我有下面的代码here http bjmarine net test html
  • CSS 图像精灵

    使用CSS图像精灵的唯一好处是减少http请求吗 或者还有其他好处吗 还有一种简单的方法可以确定要显示精灵的哪个区域的时间吗 正如您所说 主要优点之一是减少对服务器的请求数量 提高响应时间 特别是在加载大量小图像时 但这并不是人们使用精灵的
  • 计算 R 中数值向量的位数

    我在 R 中有一个数字向量 c 0 9 0 81 我想提取该向量中每个元素的位数 该命令将返回 在这种情况下 1 and 2因为数字是9 and 81 有方便的方法吗 另外 如果结果是1 如何扩展到两位数 例如 我希望返回的向量是 c 0
  • 坚持/提交在 Spring JPA JUnit 的测试环境中不起作用

    我正在尝试设置基本的 JPA 插入测试 但数据库中没有保存任何内容 数据库是Postgresql Hibernate 用作持久性提供者 提前谢谢了 Entity public class Currency Id GeneratedValue
  • 使用 Node.js 中的 fast-csv 包读取和写入 CSV

    我正在尝试编写一个简单的节点程序 该程序读取 csv 文件 提取列 比如第二列 并将其写入另一个 CSV 文件 我正在将内容读取到数组中 然后将该数组写入文件 每一步的阶段和数据 输入文件 123 456 789 abc def ghi 2
  • 如果不创建插件,则无法在 eclipse 中使用 JFace 和 SWT

    免责声明 这是 NET GUI 试图解决 JAVA 问题的典型案例 问题描述 我正在尝试使用 JFace 和 SWT 构建一个非常简单的 GUI 代码很简单 有很多教程 但不那么简单的是我似乎无法让 JFace 和 SWT 在插件项目之外工
  • React 元标签不适用于 Facebook

    我已经克隆了该应用程序https github com alanbsmith react node example https github com alanbsmith react node example并尝试使用反应头盔 https
  • 使用ggplot2和facet_wrap显示不同的轴标签

    我有一个包含不同变量和不同单位的时间序列 我想在同一个绘图上显示它们 ggplot 不支持多轴 正如这里所解释的 https stackoverflow com questions 3099219 plot with 2 y axes on