在 ggplot2 中的 aes() 函数中使用颜色

2023-12-15

我是新来的ggplot2。我想了解如何使用ggplot。我正在读 Wickham 的书,但仍在尝试如何使用aes()功能。在相关的线程中,我们讨论了我们应该尽量避免在内部使用变量aes()即“不要将常量放入aes()- 仅将映射映射到实际数据列。”

我的目标是观察当我们内部有颜色时 ggplots 的行为aes()用于标签(如 Wickham 的书中所述)并且还覆盖颜色以打印颜色。

我是这样开始的:

library(ggplot2)
data(mpg)
ggplot(mpg, aes(displ, hwy)) +
  geom_point() +
  geom_smooth(aes(colour = "loess"), method = "loess", se = FALSE) +
  geom_smooth(aes(colour = "lm"), method = "lm", se = FALSE) +
  labs(colour = "Method")

这可以很好地绘制图表并为其添加标签。然而,我对所使用的颜色不满意。因此,我再次尝试使用覆盖颜色:

windows()
ggplot(mpg, aes(displ, hwy)) +
  geom_point() +
  geom_smooth(aes(colour = "loess"), method = "loess", se = FALSE, color = "magenta") +
  geom_smooth(aes(colour = "lm"), method = "lm", se = FALSE, color = "red") +  
  labs(colour ="Method")

我添加了 color =“red”,我们可以看到labs() or aes(color())没有任何影响。为什么会出现这种情况?我很好奇。我会很感激的想法。


当您指定时,aes() gg_plot 外部的颜色不会将颜色信息视为数据的一部分(并且它会覆盖以前的信息),因此不再显示图例。

如果您想指定自己的颜色并将颜色信息保留为“相关数据”而不是“显示信息”,则应该添加scale_colour_manual()命令指定图例颜色并将颜色属性保留在aes:

ggplot(mpg, aes(displ, hwy)) +
    geom_point() +
    geom_smooth(aes(colour = "loess"), method = "loess", se = FALSE) +
    geom_smooth(aes(colour = "lm"), method = "lm", se = FALSE) +  
    labs(colour ="Method") + scale_colour_manual(values = c("loess" = "magenta", "lm" = "red"))

enter image description here

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

在 ggplot2 中的 aes() 函数中使用颜色 的相关文章

随机推荐

  • 页面请求中的 UTF-8 字节序列无效

    我在页面请求 永久链接 上收到 UTF 8 中的无效字节序列 我不知道为什么也无法重现它 但我确实遇到了很多这样的异常 A ArgumentError occurred in products index invalid byte sequ
  • URL解码混乱

    我有一个引用以下网址的数据库 http en wikipedia org wiki Herbert Gr F6nemeyer 然而 这似乎是一个错误的 URLEncoding 导致 HttpUtility UrlDecode 给我垃圾 和
  • 如何将 django Rest Framework json 查询结果连接到 dgrid/OnDemandGrid

    我的 JSON 存储 django Rest 框架 返回 count next previous 和 results 的键 count 是可用的行数 下一页 是下一页结果的 URL 例如 ids 26 50 previous 是上一页结果的
  • 获取在后台运行的 Java 运行时进程

    我正在编写一个java应用程序 我需要在正在运行的应用程序的整个生命周期中在后台运行一个进程 这是我所拥有的 Runtime getRuntime exec this works ok Process p Runtime getRuntim
  • 是否有一个真正有效的示例来显示 x86_64 上存储加载重新排序的副作用?

    众所周知 在 x86 64 上可以进行 Store Load 重新排序 如果 Store 和 Load 之间没有MFENCE 英特尔 64 和 IA 32 架构 8 2 3 4 可以将早期存储的负载重新排序到不同位置 还已知 在这样的示例中
  • 如何在导航周围创建径向渐变?

    看到围绕导航中心流动的径向渐变了吗 假设我做了一个div那就是导航 我将如何创建如图所示的渐变 注 看背景behind菜单 如果你谈论导航后面的浅棕色光芒 你可以使用 CSS3 来做到这一点 http jsfiddle net Jg8ZC
  • SignalR 自托管 Windows 服务,监听消息

    我正在尝试构建一个自托管 SignalR 的 Windows 服务 我已阅读过诸如此类的教程SignalR 在 ASP Net 上自托管 我注意到 至少看起来 它们是基于广播消息的 并且似乎找不到任何与聆听相关的内容 我需要收听服务内部的消
  • 为字符串创建距离矩阵

    我想加快以下代码的速度 有人能好心地提出一些建议吗 library dplyr library fuzzywuzzyR set seed 42 rm list ls options scipen 999 init FuzzMatcher n
  • Spring Boot 中的 Hystrix 仪表板问题

    我是 Hystrix 仪表板的新手 我已经用 Hystrix 编写了示例应用程序 我想查看 Hystrix 图表 命令指标流 但我收到以下错误 Circuit Unable to connect to Command Metric Stre
  • PDF 中的 JavaScript?

    我制作了一个可编辑的 PDF 供学生索取成绩单 现在 我想限制输入 例如 我只想要他们的 ID 号为数字 并且我只想要姓名字段中的字母 无特殊字符 等 此外 还有一个名为 最后就读年份 的输入 其中输入用户的最后一个学年上大学了 如果输入的
  • 从元素最小值的元组列表中提取元组的优雅方法

    我有一个元组列表 我希望从中得到索引处最小值的元组1 例如 如果我的列表如下 a a 2 ee 3 mm 4 x 1 我希望返回的元组是 x 1 目前我正在使用sorted函数得到这样的结果 min sorted a key lambda
  • 查找图中的连通分量[关闭]

    Closed 这个问题需要多问focused 目前不接受答案 如果我有一个无向图 作为顶点列表实现 如何找到它的连通分量 如何使用快速联盟 使用深度优先搜索 DFS 将所有单独的连接组件标记为已访问 dfs node u for each
  • 删除字符串中连续重复的单词

    我正在尝试编写一个函数来删除字符串中连续的重复单词 保留正则表达式找到的任何匹配项至关重要 换句话说 一只非常非常非常肮脏的狗 应该成为 一只非常脏的狗 我有一个似乎运行良好的正则表达式 基于这篇文章 b S b s 1 但是我不确定如何使
  • 如何从javascript中的值获取对象值的路径

    Example var someObject part1 name Part 1 txt example part2 name Part 2 size 15 qty 60 part3 name Part 3A size 10 qty 20
  • 使用 find 和 iconv 更改文件名

    我尝试使用以下脚本更改文件名 find dir type f exec mv echo iconv f UTF8 t ASCII TRANSLIT 为什么不起作用 我的意思是 当我有一个带有 这样的字符的文件时 它应该将其转换为 a ech
  • 如何在ListView中处理多个倒计时器?

    我有一个列表视图 带有自定义列表适配器 我需要在每一行上显示倒计时 例如 如果我的列表包含 4 个项目 则我将有 4 行 此时 我需要处理 4 个不同的倒计时 每行一个 因为时间不同 到目前为止 我按以下方式处理它 在自定义列表适配器中 在
  • 使用Python保留关键字作为变量名[重复]

    这个问题在这里已经有答案了 我正在尝试使用网络服务发送短信 这是网络服务文档的建议 response client service SendSMS fromNum 09999999 toNum 0666666666666 messageCo
  • Websockets 使用 asio c++ 库作为服务器,使用 javascript 作为客户端

    我使用 C 编写了服务器代码asio图书馆 我知道服务器代码可以工作 因为我使用同样用 C 编写并使用的客户端对其进行了测试asio 问题是 使用以下客户端 javascript 代码 连接不会被接受 我立即看到消息框Connection
  • TensorFlow:评估恢复图

    我正在尝试从检查点恢复图表 检查点是由创建的tf Supervisor 两者都有meta文件和检查点 我试图实现的是从单独的应用程序加载此图以运行某些操作 即重用现有模型 我按如下方式执行此操作 如此处所述 https www tensor
  • 在 ggplot2 中的 aes() 函数中使用颜色

    我是新来的ggplot2 我想了解如何使用ggplot 我正在读 Wickham 的书 但仍在尝试如何使用aes 功能 在相关的线程中 我们讨论了我们应该尽量避免在内部使用变量aes 即 不要将常量放入aes 仅将映射映射到实际数据列 我的