gpt4 book ai didi

r - 在ggvis中动态选择组

转载 作者:行者123 更新时间:2023-12-04 11:13:55 24 4
gpt4 key购买 nike

所以我尝试使用 ggvis 来可视化以下数据因为我希望能够看到不同的客户和不同的客户组合。我想使用线图,然后能够选择两个或三个并在图中同时查看它们。问题是我无法确切地说出我正在查看哪些。每次我尝试一些不同的东西;我遇到了别的事情。见下文,数据名为m3

customer   score    model
a 0.437 1
a 0.471 2
a 0.036 3
b 0.455 1
b 0.371 2
b 0.462 3
c 0.280 1
c 0.042 2
c 0.279 3
d 0.282 1
d 0.470 2
d 0.246 3
e 0.469 1
e 0.500 2
e 0.303 3
f 0.290 1
f 0.387 2
f 0.161 3
g 0.075 1
g 0.111 2
g 0.116 3

尝试 1:有了这个,我可以看到线条,但是如果我选择两个客户,我会收到一个奇怪的警告,我真的无法分辨哪些线条属于谁。它也下降了第二个 model观察双方客户。
m3 %>% ggvis(x=~factor(model),y=~score)%>% 
filter(customer == eval(input_select(choices = as.character(m3$customer),multiple=TRUE,label='Select which Domains to view'))) %>%
layer_lines()

Plot 1

尝试 2:现在我可以看到发生了什么。不过还是不对。第二个镜头只是选择了“a”和“c”。
m3 %>% ggvis(x=~factor(model),y=~score)%>% 
filter(customer == eval(input_select(choices = as.character(m3$customer),multiple=TRUE,label='Select which Domains to view'))) %>%
layer_lines() %>% layer_text(text:= ~customer)

Plot 2

Plot 2: View 2

我仍然无法正确处理。我也试过使用 add_legendlayer_linesstroke论证我是否可以让图例显示不同颜色选择了哪些客户,然后将图例与颜色和相应名称放在一边,但这根本不起作用。这对 ggvis 来说太多了吗? ?还是我完全错过了什么?

最佳答案

尝试这个:

m3 %>% 
#group by customer in order to separate them
group_by(customer) %>%
#the normal ggvis call
ggvis(x=~factor(model),y=~score) %>%
#filter in the same way that you did
#but add unique in order to pick one customer
#also make sure you use %in% instead of == in order to
#select multiple customers. == was the reason for the warning you received
#in your code
filter(customer %in% eval(input_select(choices = unique(as.character(m3$customer)),
multiple=TRUE,
label='Select which Domains to view'))) %>%
#add layer_paths with the stroke argument in order for
#different customers to have different colours (and a legend)
layer_paths(stroke = ~customer)

输出:

enter image description here

正如您在图片中看到的,您有一个包含所有客户的图例,您可以看到绘制的三个选定的客户(b、c 和 d)。情节每次都会根据您的选择而改变。我也用 layer_paths而不是 layer_lines因为我发现它效果更好。

关于r - 在ggvis中动态选择组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33898917/

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