将文本添加到点阵条形图中的面板

2023-12-04

我尝试向具有多个面板的格子条形图中的条形添加标签。我最终得到了太多的标签(每个标签都在每个面板中)。

这是我的代码:

library(lattice)
data(iris)

barchart(seq(1,50) ~ Petal.Width + Petal.Length | Species, data = iris, stack = TRUE,
         panel=function(x, y, ...) {
               panel.barchart(x, y, ...);
               ltext(x=iris$Petal.Width/2, y=y, labels=iris$Petal.Width, cex = 0.5);
               ltext(x=iris$Petal.Width + iris$Petal.Length/2, y=y, labels=iris$Petal.Width, cex = 0.5);
         }
)

我该如何正确地做到这一点?

奖金问题:
除了它没有按预期工作之外,我认为我的代码效率不太高(尤其是seq(1,50) and Petal.Width + Petal.Length)。有没有更好的办法?

先感谢您!!!


这里的根本问题是如何向堆叠条形图添加标签lattice。答案提供在这个问题,但由于链接的答案没有多个面板,我在此处使用基本 R 重新创建了一个更简单的答案:

您必须按如下方式修改面板功能:

  • 计算每个 y 值的 x 值的累积和
  • 这是一个经典的拆分、应用、组合问题。您可以使用plyr为此(如链接的答案中所示),或者,正如我所说明的,split and do.call:

xx <- do.call(c, unname(lapply(split(x, y), function(t)cumsum(t)-t/2)))

代码:

barchart( 1:10 ~ Petal.Width + Petal.Length | Species, 
          data = iris[c(1:10, 51:60, 101:110), ], 
          stack = TRUE,
          panel=function(x, y, ...) {
            panel.barchart(x, y, ...)
            xx <- do.call(c, unname(lapply(split(x, y), function(t)cumsum(t)-t/2)))
            ltext(xx, y=y, labels=x)
         }
)

enter image description here

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

将文本添加到点阵条形图中的面板 的相关文章

  • 如何在 R 中执行近似(模糊)名称匹配

    我有一个专门用于生物学期刊的大型数据集 该数据集是由不同的人长时间编写的 因此 数据不采用单一格式 例如 在 作者 栏中我可以找到John Smith Smith John Smith J等 但它们是同一个人 我连最简单的动作都做不了 例如
  • 为什么 sapply 的缩放速度比样本大小的 for 循环慢?

    假设我想采用向量 X 2 1 N 并将 e 计算为每个元 素的指数 是的 我认识到最好的方法就是通过向量化 exp X 但这样做的目的是将 for 循环与 sapply 进行比较 我通过逐步尝试三种方法 一种使用 for 循环 两种以不同方
  • 我可以使用哪个 R 函数来查找两条线的交点?

    我刚刚研究了 stackoverflow 上所有的 在 R 中寻找交集 问题 它们要么是关于曲线 要么是关于分布像这个 https stackoverflow com questions 20519431 finding point of
  • 如何在 R 中的 for 循环内将值存储在向量中

    我正在开始使用 R 但我对以下问题感到非常沮丧 我试图将 for 循环内完成的某些计算的值存储到我之前定义的向量中 问题是如何进行索引 因为for循环迭代代码的次数取决于用户的输入 所以变量i不一定要从1开始 它可以从80开始 for举个例
  • 更新 R6 对象实例中的方法定义

    如何更新 R6 类实例的方法定义 正如我所期望的 S3 使用当前的方法定义 对于 R5 参考类 我可以使用 myInstance myInstance copy 在 R6 中 我尝试了 myInstance myInstance clone
  • 闪亮的应用程序包:css 和所有 www/ 目录内容

    我正在尝试将 Shiny 应用程序转换为 R 包 但我在处理有关 www 目录以及 松散 文件的所有问题时遇到了问题 我闪亮的应用程序运行得很好 但是当我尝试 打包它 时 它不起作用 我闪亮的应用程序目录 my shiny app R ut
  • 在网格中制作一个矩形图例,并标记行和列

    我有一个 ggplot 我将因子映射到填充和 alpha 如下所示 set seed 47 the data lt data frame value rpois 6 lambda 20 cat1 rep c A B each 3 cat2
  • 在ggplot中设置y轴中断

    我在代码中设置中断时遇到困难 我尝试添加breaks seq 0 100 by 20 但似乎无法让它正常工作 本质上我希望 Y 轴从 0 到 100 每 20 个刻度一次 YearlyCI lt read table header T te
  • dplyr:连接中的 NSE (by)

    我很难弄清楚如何使用 dplyr left join 和 NSE 连接两个表 问题是我无法为 by 提供正确的值 我想我现在已经找到了解决方案 但感觉我正在以一种额外复杂的方式来做 因此 如果您知道更简单 更优雅的解决方案 请告诉我 这就是
  • 要在子集中显示的非数字条目的维恩图

    我有以下数据框 SET1 SET2 SET3 par1 par2 par1 par2 par3 par2 par3 par4 par5 我想制作一个维恩图 其中所有这些 parX 元素都显示在各自的子集中 即作为标签 而不仅仅是重叠元素的数
  • 平滑连续 2D 点

    UPDATE 感谢 user20650和 李哲源Zheyuan Li 这是我想出的解决方案 Example data set df 3600 observations points Create a vector of the cumula
  • 使用数据帧的 R 中的 EWMA 波动性

    我正在尝试从一系列股票每日收益中获取 EWMA 波动性 这些收益来自一个名为base retorno diario Data IBOV ABEV3 AEDU3 ALLL3 BBAS3 BBDC3 BBDC4 1 2000 01 04 0 0
  • 将维基百科中的表格加载到 R 中

    我正在尝试从以下 URL 将最高法院法官表加载到 R 中 https en wikipedia org wiki List of Justices of the Supreme Court of the United States http
  • 如何像在facet_grid中一样在facet_wrap中定位条带标签

    我想在使用时删除多余的条带标签facet wrap 并用两个变量进行分面 并且都是自由尺度的 例如 这个facet wrap下图的版本 library ggplot2 dt lt txhousing txhousing year in 20
  • StatET调试工具

    我想我只是很密集 但我似乎无法弄清楚如何在 Eclipse 中的 R 中使用调试工具 StatET 插件 有人有关于这个主题的任何提示或教程吗 StatET 2 00 现在对高级 可视化调试提供实验性支持 需要 Eclipse 3 6 或
  • R 数据结构的运算效率

    我想知道是否有任何关于操作效率的文档R 特别是那些与数据操作相关的 例如 我认为向数据框添加列是有效的 因为我猜您只是向链接列表添加一个元素 我想添加行会更慢 因为向量保存在数组中C level你必须分配一个新的长度数组n 1并将所有元素复
  • 将整个包传递给雪簇

    我正在尝试并行化 使用snow parLapply 一些依赖于包 即除snow 调用函数中引用的对象parLapply必须使用显式传递给集群clusterExport 有没有办法将整个包传递到集群 而不必显式命名每个函数 包括用户函数调用的
  • 是否有weighted.median()函数?

    我正在寻找类似形式的东西weighted mean 我通过搜索找到了一些解决方案 这些解决方案写出了整个函数 但希望有一些更用户友好的解决方案 以下软件包都有计算加权中位数的函数 aroma light isotone limma cwhm
  • 更改绘图区域背景颜色

    我想使用我们公司的颜色在 R 中制作一个图表 这意味着所有图表的背景应为浅蓝色 但绘图区域应为白色 我正在寻找答案 发现绘制一个矩形就可以完成这项工作 几乎 然而 绘图区域现在是白色的 并且图形不再可见 这可能吗 getSymbols SP
  • 斯皮尔曼相关性和联系

    我正在一小组配对排名上计算斯皮尔曼的 rho 斯皮尔曼因处理领带不当而闻名 例如 取2组8个排名 即使两组中有6个是平局 相关性仍然很高 gt cor test c 1 2 3 4 5 6 7 8 c 0 0 0 0 0 0 7 8 met

随机推荐

  • Live555框架生成错误

    我正在尝试构建框架Live555图书馆 我从以下位置获取了库文件here按照这个SO的回答我已多次尝试根据该答案生成它 它只是给出以下错误 Applications Xcode app Contents Developer Platform
  • Spring Cloud Dataflow 类型转换在处理器组件中不起作用?

    我有一个可以转换的处理器byte 有效负载进入MyClass有效负载 Slf4j EnableBinding Processor class public class MyDecoder ServiceActivator inputChan
  • 如果 Observable 已完成,我是否需要取消订阅 Observable?

    假设我有一个Observable 热门 未完成 我订阅了它 通常当我完成时Subscription我必须取消订阅它以防止内存泄漏 let subject new Subject const sub subject subscribe Nee
  • 如何将 ObservableCollection 绑定到 WPF 中的复选框列表框

    让我先声明一下我对 C 和 WPF 都很陌生 我正在尝试连接一个集合Boolean值到包含 6 个复选框的容器 并在按下按钮时存储这些值的状态 我假设有一种简单的方法可以做到这一点 因为将复选框绑定到集合似乎是一件非常自然的事情 但到目前为
  • XSLT 将字段连接在一起

    我正在尝试过滤特定字段并连接另一个字段 Input
  • 如何使用Pivot_longer将宽类型数据重塑为具有多个变量的长类型数据

    我想问如何将以下数据框从宽类型重塑为长类型 宽类型数据如下 重塑前的宽类型数据 long 类型数据 即我想要获取的数据帧 如下所示 整形后的Long类型数据 如果您能给我使用更长的枢轴来完成此操作的提示 我将非常感激 我可以通过 BLS 和
  • 图表的中心

    给定一棵无向树 其无权边具有 N 个顶点和 N 1 个边 并且数量为 K 找到 K 个节点 以便树中的每个节点与 K 个节点中的至少一个节点的距离在 S 范围内 另外 S 必须是尽可能小的 S 因此 如果 S 我尝试解决这个问题 但是 我觉
  • 在现有 Java 7 代码中使用 Java 8 可选

    我有一项作业 需要将以下 Java 8 之前的代码转换为 Java 8 代码 以下只是一种让我很难完成的方法 public static List
  • 嵌套 mysql 查询的性能损失

    什么是性能损失SELECT FROM Table VS SELECT FROM SELECT FROM Table AS A AS B 我的问题是 首先 SELECT 是否涉及表中行的迭代 或者它只是将所有行作为一个块返回而不进行任何迭代
  • C 中是否有类似于 Java 字符串 'charAt()' 方法?

    我正在尝试将一段代码从 Java 转换为 C 但我被困在这里 试图在每个位置获取一个字符 char ch line while pos lt line length ch line charAt pos C 中有没有类似的东西可以转换行ch
  • django xlsxwriter 中的日期时间问题

    我正在尝试在 django 视图中创建导出到 Excel 的功能 如下所示 def export myreport request sd ed from xlsxwriter workbook import Workbook import
  • 使用 Google Maps API 根据地址显示房屋的街景

    我正在尝试使用 Google 地图根据地址显示房屋的街景 我创建了一个jsfiddle基于此tutorial 小提琴正在显示默认的初始地址 但我不知道按下按钮时如何将新地址传递到街景代码中 这是 HTML h3 Enter an Addre
  • jQuery ajax 安全性

    我有以下 ajax 调用 它检查用户是否是付费会员 如果是 则相应地运行某些功能 这可行 但我担心安全性 如果有人在控制台强制中更改此 ajax 代码怎么办 button无需执行任何操作即可成功运行功能 我可以在仍然使用 jQuery aj
  • 根据 Symfony 中的另一个字段值验证一个字段

    我在 Symfony 表单中有两个相关字段 object status and cryopreservation method 第一个不能为空 并存储三个可能的选择之一 liquid solid or cryopreserved 仅当记录有
  • 为什么调试模式和运行模式下的保留计数不同?

    我知道 ARC 和 MRC 是如何工作的 但我在测试下面的代码时感到困惑 我不知道为什么会发生这种情况 为什么同一个问题在调试模式和运行模式下的保留计数不同 NSMutableArray a NSMutableArray array a a
  • 让画布无限大

    我目前正在使用画布 在上面画了一些感兴趣的区域 它们由正方形组成 可以通过鼠标单击来移动 即 每次我在画布上单击时 所选区域将以我的光标位置为中心 我当前的问题是我想添加以下功能 当我单击画布边缘附近 左或右 时 如果正方形的一部分不在画布
  • 将新行添加到数据表

    我有一个DataGrid绑定到具有一张表和一列 FooTable 和 FooName 的数据库 使用以下代码 我可以绑定DataGrid to DataTable并显示数据库数据 但是当我每次添加新行时DataSet Add Click 没
  • JAXB - 具有递归依赖性的编组

    有人尝试用递归引用封送 JAXB 对象吗 我有以下课程 public class A private Long id private String name private List a aList 我想将其编组为 a a a a a a
  • 列表视图行布局的动态变化也会影响其他行

    我正在使用 ListView 每个列表元素上都有几个按钮 当单击一行上的按钮时 该按钮应该消失 单击时单击的按钮消失 没关系 问题是其他一些列表元素按钮也消失了 例如 当我单击第一个元素按钮时 它也会影响第 6 11 16 个元素中的按钮
  • 将文本添加到点阵条形图中的面板

    我尝试向具有多个面板的格子条形图中的条形添加标签 我最终得到了太多的标签 每个标签都在每个面板中 这是我的代码 library lattice data iris barchart seq 1 50 Petal Width Petal Le