在 ggplot 中自定义图例

2024-04-21

我需要帮助使用 ggplot2 自定义图表。下面是我正在使用的代码和生成的图表:

> p=ggplot(a2,aes(x=grid,y=median))+geom_line(size=1.3)+
    geom_line(aes(x=grid,y=lower,linetype=2,colour='red'),size=1.3)+
    geom_line(aes(x=grid,y=upper,linetype=2,colour='red'),size=1.3)+
    geom_line(aes(x=trueX,y=trueY,linetype=1,colour='blue'),size=.8)+
    geom_line(aes(x=grid,y=xDens,linetype=1),size=.5)+
    geom_point(data=a1,aes(x=X,y=Y),size=1)

首先,红色和蓝色看起来与应有的颜色不符。其次,我想用四个条目自定义图例:

  1. 适合(黑线)
  2. Conf Int(红色虚线)
  3. 真实曲线(蓝线)
  4. X 密度(小黑线)

我已经玩了一段时间但无法弄清楚。将不胜感激的建议。

我可能需要重新排列我的数据以获得我想要的,这是我现在拥有的预览(忽略带有点的数据集 a1):

> head(a2[,c(1,2,4,5,6,7,8)])
     lower    upper   median      grid   trueX     trueY    xDens
1 26.65933 28.83431 27.54782 -4.845770 -3.998449 27.73697 0.02803692
2 26.65933 28.77224 27.54284 -4.826273 -3.967264 27.71877 0.02902979
3 26.65933 28.77224 27.54284 -4.806776 -3.910030 27.68470 0.02953585
4 26.65933 28.77224 27.54284 -4.787279 -3.898646 27.67782 0.03056721
5 26.65933 28.77224 27.54284 -4.767782 -3.891712 27.67361 0.03162419
6 26.65933 28.77224 27.54284 -4.748285 -3.890767 27.67304 0.03270666

可能这离你想要的很近:

样本数据:

> d
     lower    upper   median      grid     trueX    trueY      xDens
1 26.65933 28.83431 27.54782 -4.845770 -3.998449 27.73697 0.02803692
2 26.65933 28.77224 27.54284 -4.826273 -3.967264 27.71877 0.02902979
3 26.65933 28.77224 27.54284 -4.806776 -3.910030 27.68470 0.02953585
4 26.65933 28.77224 27.54284 -4.787279 -3.898646 27.67782 0.03056721
5 26.65933 28.77224 27.54284 -4.767782 -3.891712 27.67361 0.03162419
6 26.65933 28.77224 27.54284 -4.748285 -3.890767 27.67304 0.03270666

code:

d2 <- melt(subset(d, select = -c(trueX)), id = "grid")
ggplot(d2, aes(grid, value, colour = variable, linetype = variable, size = variable)) +
  geom_line() +
  scale_colour_manual("", values = c("red", "red", "black", "blue", "black"), breaks = levels(d2$variable)) +
  scale_linetype_manual("", values = c(2, 2, 1, 1, 1), breaks = levels(d2$variable)) +
  scale_size_manual("", values = c(0.5, 0.5, 0.5, 0.5, 0.25), breaks = levels(d2$variable))

output:

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

在 ggplot 中自定义图例 的相关文章

  • 按不规则时间间隔对数据进行分组求和(R语言)

    我正在看这里的 stackoverflow 帖子 R 计算一组内的观察次数 https stackoverflow com questions 65366412 r count number of observations within a
  • 使用 RDCOMClient 搜索 Outlook 收件箱

    我尝试使用 RDCOMClient 在 Outlook 收件箱中搜索电子邮件中的特定主题 然后获取附件 我在一封电子邮件上进行了这项工作 但由于主题包含日期元素 我需要搜索成为一个类似的子句 但不太清楚这适合我的下面的查询 outlook
  • 排序因素与水平

    有人能解释一下 R 中 ordered 参数的用途吗 R says ordered逻辑标志来确定级别是否应被视为有序 按给定的顺序 所以如果我有一个名为名称的因素并设置ordered TRUE names lt factor c fred
  • 如何自动启动我的 ec2 实例、运行命令然后将其关闭?

    我想每周对 redshift postgres 数据库中的数据运行一次机器学习模型 我使用以下命令将 R 脚本设置为休息 apiplumbr然后我将其设置为一项任务来管理pm2 我有它 所以任务会在ec2实例启动然后继续运行 要让 R 脚本
  • 如何定义“f_n-chi-square”函数并使用“uniroot”求置信区间?

    I want to get a 95 confidence interval for the following question 我已经写了函数f n在我的 R 代码中 我首先使用 Normal 随机采样 100 个样本 然后定义函数h
  • 从 R 中的方差分析 (glm) 中提取残余偏差

    我在 R 中安装了一个 glm 模型并采用了方差分析表 我需要提取 残余偏差 列 但它会产生错误 以下是代码 创建数据 counts lt c 18 17 15 20 10 20 25 13 12 outcome lt gl 3 1 9 t
  • 从 df 中提取具有两列的重叠行对

    我想找出这两个表之间哪些对重叠 gt dput data1 structure list Name x c MDH1 MDH1 IDH2 IDH2 IDH2 IDH2 IDH2 IDH2 IDH2 SCOALB SCOALB CSY4 CS
  • 用表达式分割轴标签

    我有一个带有包含表达式的长标签的图 我想将其分成两行 在表达式中添加 n 结果不符合预期 ylabel lt expression A very long label with text and n expression alpha bet
  • 融化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
  • 将第 N 行上的 NA 行插入 data.frames 列表,其中 N 来自列表

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

    抛硬币 成功 你赢100 否则你输50 你会一直玩 直到你口袋里有钱a 的价值如何a在任何迭代中都被存储 a lt 100 while a gt 0 if rbinom 1 1 0 5 1 a lt a 100 else a lt a 50
  • rpart“as.character(x) 中的错误:无法强制类型 'builtin' 为类型 'character' 的向量”消息是什么意思?

    我一直在用头撞rpart几天了 尝试为我拥有的这个数据集制作分类树 我认为现在是时候询问生命线了 我确信这是我没有看到的愚蠢的事情 但这里是我一直在做什么 EuropeWater lt read csv file paste Users a
  • 从 n,k 维矩阵数组中减去 n,k 维矩阵

    如果我有一个数组A A lt array 0 c 4 3 5 for i in 1 5 set seed i A i lt matrix rnorm 12 4 3 如果我有矩阵 B set seed 6 B lt matrix rnorm
  • 如何在 Caret 中绘制随机森林(护林员)树

    我生成了如下所示的随机森林树 并尝试绘制它 但出现错误 我在哪里犯了错误 我怎样才能以正确的方式绘制它 Actmodel lt train Activity Section Author data CB1 method ranger trC
  • 如何对数字进行四舍五入并使其显示零?

    R 中将数字四舍五入到小数点后 2 位的常用代码是 gt a 14 1234 gt round a digits 2 gt a gt 14 12 但是 如果该数字的前两位小数位为零 则 R 会在显示中抑制零 gt a 14 0034 gt
  • purrr::可能函数可能无法与map2_chr函数一起使用

    我怀疑这是 purrr 包中的错误 但想先在 StackOverflow 中检查我的逻辑 在我看来 possibly功能在内部不起作用map2 chr功能 我正在使用 purrr 版本 0 2 5 考虑这个例子 library dplyr
  • 使用officer R导出时如何提高ggplots的分辨率

    我想将图表导出到 PPT 并使用Officer 包来实现相同的目的 但是 图表的默认分辨率较低 我想更改它 我目前正在使用以下电话 ph with gg p1 type chart res 1200 其中 p1 是 ggplot 对象 运行
  • 不同编程语言中的浮点数学

    我知道浮点数学充其量可能是丑陋的 但我想知道是否有人可以解释以下怪癖 在大多数编程语言中 我测试了 0 4 到 0 2 的加法会产生轻微的错误 而 0 4 0 1 0 1 则不会产生错误 两者计算不平等的原因是什么 在各自的编程语言中可以采
  • 实现 XGboost 自定义目标函数

    我正在尝试使用 XGboost 实现自定义目标函数 在 R 中 但我也使用 python 所以有关 python 的任何反馈也很好 我创建了一个返回梯度和粗麻布的函数 它工作正常 但是当我尝试运行 xgb train 时它不起作用 然后 我
  • 如何在 Shiny 中提取动态生成的输入值?

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

随机推荐

  • 在 Jest .toMatchObject 中包含 toBeCloseTo

    我正在测试一个对象是否与一组字段匹配 但其中一个是浮点 我需要使用 toBeClearTo https jestjs io docs en next expect tobeclosetonumber numdigits 怎么可能在一段时间之
  • r 中不包括 NA 的列长度

    假设我有一个data frame如下 a b c 1 5 NA 6 2 NA NA 7 3 6 5 8 我想找到每列的长度 不包括 NA 答案应该是这样的 a b c 2 1 3 到目前为止 我已经尝试过 is na Gives TRUE
  • Excel公式从日期中减去天数

    Excel中有没有办法让公式执行如下操作 12 20 2010 180 这需要特定日期 本例中为 12 20 2010 并减去 180 天 假设原始日期位于单元格 A1 中 DATE YEAR A1 MONTH A1 DAY A1 180
  • 为什么 jquery 脚本不工作?

    为什么 jQuery 脚本可以在我的 jsfiddle 中运行 但不能在我的页面中运行 我所做的 尝试了不同版本的 JQuery 制作了脚本 所以我有这个测试页面 头部部分
  • 如何使用 Xcode 5 本地化我的应用程序?

    这是关于的后续问题 和答案 如何使用 Xcode 4 本地化我的应用程序 https stackoverflow com questions 5349066 how to localize my app with xcode 4 11282
  • Angular 2:实现自定义上下文菜单

    我正在实现 Angular 2 属性指令 以允许我向元素添加自定义上下文菜单 如下所示 p Hello world p 该指令添加了一个鼠标事件处理程序来捕获右键单击 其想法是构建一个上下文菜单 将其添加到 DOM 然后在用户完成操作时销毁
  • Clojure gen-class 返回自己的类

    我现在正在使用 Clojure 创建一个类对象 它有一个返回对象本身的方法 用Java编写的 我想要制作的对象是这样的 class Point public double x public double y public Point dou
  • 静态与非静态方法

    假设您有一些可以在非静态类中设为静态的方法 例如 private double power double a double b return Math Pow a b 您认为将方法签名更改为静态有什么好处吗 在上面的例子中 private
  • docker-compose 相当于 docker run --init 吗?

    根据https github com krallin tini using tini https github com krallin tini using tini tini内置于docker中 可以通过传递 init标记为docker
  • docker 容器中 PostgreSQL 的权限问题

    我正在尝试使用 PostgreSQL 运行一个 docker 映像 该映像配置了一个用于持久数据的卷 docker compose yml version 3 1 services db image postgres restart alw
  • 启动 StepFunction 并退出不会触发执行

    我有 Lambda 函数tranportKickoff它接收输入 然后将输入发送 代理到阶跃函数 下面的代码does运行 我没有收到任何错误 但同时步骤函数没有执行 对于设计也很重要 我不希望transportKickoff函数等待步骤函数
  • Mongoose Population: CastError: 路径“_id”处的值“[object Object]”转换为 ObjectId 失败

    遇到一个CastError在 Mongoose 中填充嵌套 ObjectId 引用时 值 显然是valid 只要它们在保存到架构时不会被阻止 有兴趣在服务器端解决此问题以防止将来出现格式错误的数据 但是 我知道不从客户端保存这些值是一个好主
  • java 是否存在只有键没有值的哈希结构?

    我正在寻找一种无需值即可对键进行哈希处理的结构 查询时 如果找到密钥 则应返回 true 否则返回 false 我正在寻找类似的东西Hashtable
  • 获取符合条件的组合

    问题 我有一个表 我需要在其中提取行 或列 如果我转置表 的所有有效组合 列中只有值 或 并且当组合中的至少一行中有 时 组合被认为是有效的 也就是说 所有行中带有 的任何组合都是无效的 示例表 Guns P 01 P 02 P 03 P
  • React 路由器匹配失败

    使用有什么好处Match and Miss组件来自react router over Router成分 我似乎找不到任何关于此的文档反应路由器文档 https github com ReactTraining react router tr
  • R外部接口

    我想实现一些用 C 代码编写的 R 包 C 代码必须 将数组 任何类型 作为输入 生成数组作为输出 大小不可预测 实现数组传递的最佳实践是什么 目前 C 代码被调用 C 它通过指针直接从 R 访问数组 不幸的是 无法对输出执行相同的操作 因
  • 如何检查java方法的字节码长度

    目前 我参与了一个大型遗留项目 其中包含许多巨大的类和生成的代码 我希望找到所有字节码长度大于 8000 字节的方法 因为 OOTB java 不会优化它 我发现这样的手动方式 Java 中的特定方法有多少字节的字节码 https stac
  • 如何从 gdb 命令提示符执行外部命令?

    我正在使用 gdb 调试程序 每当我错过断点或决定添加另一个观察点时 我必须终止该进程并重新运行它 为了将现有的 gdb 附加到它 我使用attach
  • 使用 VS2010 Professional 从 TFS 在线删除项目(TFSDeleteProject 不在我的计算机上!)

    我有 Visual Studio 2010 Professional 并且一直在 Visualstudio com 上使用 TFS 服务 我读了这个问题及其答案 https stackoverflow com questions 13635
  • 在 ggplot 中自定义图例

    我需要帮助使用 ggplot2 自定义图表 下面是我正在使用的代码和生成的图表 gt p ggplot a2 aes x grid y median geom line size 1 3 geom line aes x grid y low