使用 ggplot2 在 R 中绘制箱线图

2024-02-02

我是 R 新手,一直在尝试制作箱线图。显示了我正在使用的部分数据

            h1          h2          h3          h4          h5          h6          h7          h8          h9         h10
1  0.003719430 0.002975544 0.003049933 0.003421876 0.003421876 0.003347487 0.003645042 0.003496264 0.007364472 0.009075410
2  0.003400540 0.002749373 0.003038781 0.003328188 0.003328188 0.003400540 0.003472892 0.003400540 0.007741656 0.009333398
3  0.003741387 0.002918282 0.003142765 0.003367248 0.003367248 0.003367248 0.003666559 0.003516904 0.008081396 0.008156223
4  0.003870634 0.002884002 0.003187581 0.003339370 0.003567055 0.003415265 0.003794739 0.003491160 0.008348426 0.007741268
5  0.003782963 0.002950711 0.003177689 0.003480326 0.003404667 0.003404667 0.003707304 0.003631645 0.008927793 0.007414608
6  0.003643736 0.002884624 0.003264180 0.003416002 0.003491913 0.003416002 0.003871469 0.003795558 0.009033428 0.007135649
7  0.003718600 0.003035592 0.003111482 0.003339151 0.003566821 0.003566821 0.003642710 0.003870380 0.008120209 0.008044319
8  0.003819313 0.002979064 0.003284609 0.003360995 0.003590154 0.003437382 0.003895699 0.003590154 0.008326102 0.007791398
9  0.003899334 0.002981844 0.003211216 0.003364131 0.003669961 0.003440589 0.003746419 0.003669961 0.008410328 0.007569295
10 0.003828488 0.002986220 0.003292499 0.003445639 0.003522209 0.003522209 0.003598778 0.003598778 0.008422673 0.007810115

当我使用默认的boxplot命令然后这就是我得到的

boxplot(df)

我一直在尝试使用以下方法生成相同数据的箱线图ggplot2但它给出了一个我无法解决的错误。这是我尝试过的。

library(ggplot2)
df <- readRDS('data.Rda')
ggplot(df) + geom_boxplot()

这是错误

Don't know how to automatically pick scale for object of type data.frame. Defaulting to continuous
Error: Aesthetics must either be length one, or the same length as the dataProblems:df[, 6:15]

我看到了ggplot2 文档 http://docs.ggplot2.org/0.9.3.1/geom_boxplot.html for geom_boxplot并意识到(从示例中)我需要重新排列我的数据,例如

col1        col2
h1   0.003719430
h1   0.003400540
h1   0.003741387
h1   0.003870634
h1   0.003782963
h1   0.003643736
h2   0.002975544
h2   0.002749373
h2   0.002918282
h2   0.002884002
h2   0.002950711
h2   0.002884624
...

并使用类似的东西

ggplot(df, aes(factor(col1), col2)) + geom_boxplot()

但这是一项繁重的工作。我相信一定有某种方法可以自动执行此操作,但我找不到。任何帮助表示赞赏。


你是对的ggplot需要重新调整您的数据,但使用该包并不难reshape2:

library(reshape2)
df <- melt(df)
ggplot(df, aes(x=variable, y=value)) + geom_boxplot()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 ggplot2 在 R 中绘制箱线图 的相关文章

随机推荐

  • Spring Boot 消耗过多 RAM

    我在 Spring Boot 中创建了一些服务 我有 11 个 fat jar 并将它们部署在 docker 容器中 我怀疑每个 jar 都消耗了 1 到 1 5 GB 的 RAM 而没有任何使用 我通过运行以下命令来检查 RAM dock
  • EL 和协变返回类型

    我有这些课程 public abstract class Unit public abstract UnitType getType public class Item extends Unit protected ItemType typ
  • C# 与非托管 C++ 互操作性的延续传奇

    经过一天的头撞墙之后 我恳求帮助 我有一个非托管 C 项目 它被编译为 DLL 我们就这样称呼它吧光热发电项目 它目前在非托管环境中运行 另外 我还创建了一个WPF项目 该项目将被称为WPF项目 该项目是一个简单且目前几乎是空的项目 它包含
  • 向 Angular 4 添加第三方资源

    一般来说 我更喜欢添加第三方资源 angular cli json styles bower components animate css animate css bower components chosen chosen css bow
  • Android 上的关键字激活语音识别

    是否可以在您自己的应用程序中使用 google now 这个很酷的语音激活功能 所以我想要的是用户不必通过按下按钮或其他东西来触发激活 像那样 我宁愿有一个由关键字激活的自动语音识别功能 例如 当 google now 打开时 您只需说 g
  • Android:在 ActionBarSherlock 库中 getSupportActionBar() 始终返回 null

    我正在尝试使用动作栏夏洛克 https github com JakeWharton ActionBarSherlock库来为我的 Android 应用程序中的选项卡提供向后兼容的 ActionBar 支持 因此我下载了最新版本 构建了演示
  • 无法在项目 inv-project 上执行目标 org.codehaus.mojo:rpm-maven-plugin:2.0.1:rpm (default-cli)

    我在创建 Maven 项目的 RPM 时收到以下错误 我能够成功打包 Jar 但 RPM 创建失败 Note 我正在 Windows 7 上尝试 WARNING operable program or batch file INFO INF
  • 在哪里存储要执行的 SQL 命令

    由于内联 mysql 查询 我们面临代码质量问题 自己编写的 mysql 查询确实会使代码变得混乱 并且还会增加代码库等 我们的代码充满了类似的东西 beautify ignore start jshint ignore start var
  • 使 Meteor 方法同步

    我一直在尝试使这个功能同步 我读过几篇关于异步的 Stack Overflow 帖子 但我无法理解如何使其同步 到目前为止 它是异步的 因此在进入回调函数之前它会返回未定义 我从客户端调用它 Meteor call screenName f
  • 从 docker 容器连接到 SQL Server 数据库

    我的机器上安装了 docker for windows 有一个针对 net core 1 0 0 的控制台应用程序尝试访问在不同虚拟机上运行的 SQL Server 数据库 我可以从我的计算机上 ping 运行 SQL Server 的虚拟
  • 实体框架多对多映射上的软删除

    我有一个多对多 EF 映射 类似于下面的示例 我使用 EF 代码优先方法 因此我的映射类继承 EntityTypeConfiguration this HasMany a gt a KPIs WithMany Map a gt a ToTa
  • 具有不完整类型目标 C 的变量

    我试图将枚举作为方法签名的一部分 但在 h 文件中出现了这个可怕的错误 Declaration of enum CacheFile will not be visible outside this function 我的 h 文件中有这个
  • Flutter 中垂直 ScrollView 内的水平 ListView

    我现在试图实现一个非常常见的行为 即在另一个可同时滚动的小部件中拥有一个水平列表 想象一下 IMDb 应用程序的主屏幕 所以我想要一个可以垂直滚动的小部件 上面只有很少的项目 在它的顶部 应该有一个水平的ListView 随后是一些名为mo
  • 在 LINQ 查询中将 DateTimeOffset 转换为 DateTime

    当我通过 linq 查询从该表中获取数据并使用时 我的表中有 DateTimeOffset 列 from c in this dbContext SomeTable where c Id someId select new SomeMode
  • 如何自定义 Eclipse 工具栏(Kepler 或一般工具栏)

    我尝试自定义 Eclipse Kepler JavaEE 中的工具栏已经有一段时间了 最终在给定透视图 例如 主 JavaEE 透视图 中按照我想要的方式配置工具栏后 当我切换到不同的透视图 例如 调试透视图 然后再切换回来时 它完全混乱了
  • 模式匹配不等式

    我想从不平等的实例中提取论据 以下不起作用 知道为什么以及如何解决它吗 Inequality 1 Less x Less 2 Inequality a c e gt a c e Inequality 1 Less x Less 2 Hold
  • JBoss AS 7:日志记录

    我对 JBoss AS7 和日志记录有点挣扎 尽管我的问题是一个非常普遍的问题 但我在网络上找不到任何相关内容 默认日志目前如下所示 11 57 29 950 INFO stdout http 0 0 0 0 8081 78 2484089
  • 在 Go 中安装 exp/html

    看起来 Go 还不支持 HTML Web 解析工具 包 尽管它已经通过以下方式提供了 XML 抓取encoding xml 那么我该如何安装exp htmlGo 中的包 据我所知 所有的答案 至少我在网上搜索了10分钟后偶然发现的 都没有返
  • Visual Studio 的评论重花

    是否有内置命令或工具可以在 Visual Studio 中重排 C 注释 有时 一段代码需要多行注释 经过大量编辑后 您必须在适当的位置手动插入换行符 以免它超出编辑器窗口的右边缘 我希望能够通过一个键命令来完成此操作 使用 Visual
  • 使用 ggplot2 在 R 中绘制箱线图

    我是 R 新手 一直在尝试制作箱线图 显示了我正在使用的部分数据 h1 h2 h3 h4 h5 h6 h7 h8 h9 h10 1 0 003719430 0 002975544 0 003049933 0 003421876 0 0034