gpt4 book ai didi

r - 将数据添加到包含在输入数据集中但不直接在 vis 中的 ggvis 工具提示

转载 作者:行者123 更新时间:2023-12-04 01:39:46 25 4
gpt4 key购买 nike

这是我的输入数据集:

> names(breakingbad.episodes)
[1] "season" "episode" "epnum" "epid" "title"
[6] "url.trakt" "firstaired.utc" "id.tvdb" "rating" "votes"
[11] "loved" "hated" "overview" "firstaired.posix" "year"
[16] "zrating.season" "src"

我的 ggvis ,我正在使用以下变量 firstaired.posixrating :
> str(breakingbad.episodes[c("firstaired.posix", "rating")])
'data.frame': 62 obs. of 2 variables:
$ firstaired.posix: POSIXct, format: "2008-01-21 02:00:00" "2008-01-28 02:00:00" "2008-02- 11 02:00:00" ...
$ rating : num 87 85 84 84 83 90 87 85 88 83 ...

我成功创建了我的 ggvis带有包含 rating 的工具提示像这样的信息:
> breakingbad.episodes %>% 
ggvis(x = ~firstaired.posix,
y = ~rating,
fill = ~season) %>%
layer_points() %>%
add_axis("x", title = "Airdate") %>%
add_axis("y", title = "Rating") %>%
add_legend("fill", title = "Season") %>%
add_tooltip(function(data){paste0("Rating: ", data$rating)}, "hover")

但我实际上希望工具提示包含更多数据,例如 epid变量,所以我试过:

add_tooltip(function(data){paste0("Rating: ", data$rating, "\n", "Epid: ", as.character(data$epid))}, "hover")

…使用 as.character()因为 epid是一个有序的因素——但工具提示的部分是空的。 (我还注意到我打算插入的换行符 \n 丢失了,但这是一个不同的问题)。

看起来这个问题的原因是 vis通过管道我的数据集创建的对象 ggvis不包含我想要显示的信息,至少这就是我通过查看 str() 的输出来收集的原因关于第一个例子。

编辑:我解决了那个换行问题,所以没有必要指出我 ?add_tooltip ——完全忘记了。

编辑:接受的答案工作正常,尽管它不允许我在工具提示中放置任意变量,但这几乎是我的用例所需要的,谢谢!
这是我最后所做的:
breakingbad.episodes <- transform(breakingbad.episodes, id = paste0(epid, " - ", title))

breakingbad.episodes %>%
ggvis(x = ~firstaired.posix,
y = ~rating,
fill = ~season,
key := ~id) %>%
layer_points() %>%
add_axis("x", title = "Airdate") %>%
add_axis("y", title = "Rating") %>%
add_legend("fill", title = "Season") %>%
add_tooltip(all_values, "click")

最佳答案

是的,这是可能的。通常客户端只发回实际在图中的数据列。要获取其他列,您应该使用一个键来索引原始数据:这是一个简单的可重现示例

library(ggvis)
mtc <- mtcars
mtc$id <- 1:nrow(mtc)

all_values <- function(x) {
if(is.null(x)) return(NULL)
row <- mtc[mtc$id == x$id, ]
paste0(names(row), ": ", format(row), collapse = "<br />")
}

mtc %>% ggvis(x = ~wt, y = ~mpg, key := ~id) %>%
layer_points() %>%
add_tooltip(all_values, "hover")

关于r - 将数据添加到包含在输入数据集中但不直接在 vis 中的 ggvis 工具提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24519980/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com