【问题标题】:hyperlinks to each row in flextableflextable 中每一行的超链接
【发布时间】:2019-04-02 15:58:12
【问题描述】:

我有一个数据框

df = data.frame("A" = c("a","b","c","d"), "B" = c(1,2,3,4), "link" = c("www.a.com", "www.b.com", "www.c.com", "www.d.com"))

A B 链接

a 1 www.a.com

b 2 www.b.com

c 3 www.c.com

d 4 www.d.com

我制作格式表

dt.ft <- regulartable(data = dt[, list(A, B, link)])

我想让“A”列中的值与“链接”列中的相应值超链接。

我试过了

compose(x = dt.ft, j = "A", value = as_paragraph( hyperlink_text(x = A, url = link)))

我收到以下错误:

$&lt;-.data.frame(*tmp*, "url", value = c(1L, 2L, 3L, 4L, 1L, 中的错误: 替换有16行,数据有4

如果表中只有 1 行,上面的 R 语句有效,但对多行无效。你能帮我么。 另外,链接后有什么方法可以隐藏/删除“链接”列。

【问题讨论】:

  • 谢谢,这是一个错误。我刚刚修好了。你介意测试一下github版本吗?
  • 谢谢。那行得通。此外,任何关于如何隐藏/删除“链接”列的建议。我首先将它放在表格中,因此我可以提供超链接信息。
  • 另外,我不知道它是如何工作的,但你是要发布固定版本还是唯一的方法是在开发版本上发布。
  • 我正在准备一个 cran 版本,所以你在最相关的时刻表达了这个问题 :)
  • 下面我都会回复

标签: r flextable formattable


【解决方案1】:

首先,有一个问题,0.5.2 版本应该会修复它。

library(flextable)

df = data.frame("A" = c("a","b","c","d"), "B" = c(1,2,3,4), "link" = c("www.a.com", "www.b.com", "www.c.com", "www.d.com"))
dt.ft <- flextable(data = df, col_keys = c("A", "B"))
dt.ft <- compose(x = dt.ft, j = 1, value = as_paragraph( hyperlink_text(x = A, url = link)))
dt.ft

该示例还显示了如何使用参数col_keys 选择要显示的列。

【讨论】:

  • 谢谢,对不起我的无知。但是现在发布了吗?我无法从 install.packages("flextable", version = "0.5.2") 获取 0.5.2 版本
  • 不,您可以通过几个步骤从 CRAN 获得最新版本。 1 我需要提交 2 包裹正在由 cran 团队或工具进行检查 3 如果没问题,它会继续 CRAN
猜你喜欢
  • 1970-01-01
  • 2012-05-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-18
  • 2016-05-16
  • 1970-01-01
相关资源
最近更新 更多