gpt4 book ai didi

R ggplot2 具有 reshape (融化功能)选择性地绘制数据集

转载 作者:行者123 更新时间:2023-12-01 22:55:20 29 4
gpt4 key购买 nike

我正在使用 ggplot 绘制多个数据集,但是我想绘制它们以便每个数据集都有自己的 geom_line功能,以便我可以将线条分开并在需要时隐藏它们。

 ggplot(MeanFrameMelt, aes(x=variable, y=value, 
color=Legend, group=Legend)) + geom_line()

使用包reshape中的melt函数转换后的输入表:
Legend        variable  value
table_A.txt V1 0.008927491
table_B.txt V1 0.009080929
table_C.txt V1 0.008513332
table_D.txt V1 0.008337751
table_A.txt V2 0.008957742
table_B.txt V2 0.009100265
table_C.txt V2 0.008508966

表 A 应该是一个 geom_line (图表上的线)表 B 秒 geom_line等等。这是可能的还是我必须回去改变以前数据框的融化?

编辑:
好的,这是融化功能:
library(plyr)
library(reshape)
MeanFrameMelt <- melt(MeanFrame2, id.vars="Legend")

我给你的数据每条线只有两个点,所以想象一下每个表(A、B、C 和 D)都有数百个点,因此这张图上有四条线。我希望能够用一个复选框关闭每一行,但为此我需要为每一行设置一个唯一标识符,这将允许我执行此操作。所以我在想的是做一个单独的 + geom_line(for table A) + geom_line(for table B) + geom_line(for table C)...
我希望这能澄清一些想法。

Edit2:这就是图表现在的样子,之后也应该是这样的,但是有 4 geom_line调用而不是现在的调用:

enter image description here

最佳答案

我认为这接近你想要的:

ggplot(MeanFrameMelt, aes(x=variable, y=value, 
color=Legend, group=Legend))+ geom_line(aes(linetype=Legend))

编辑 OP澄清后

使用 ggplot2(也可以使用 Lattice),您可以为每一层组合数据源和子集

例如,这里我选择只显示 2 行
library(ggplot2)
ggplot(dat, aes(x=variable, y=value, ,
color=Legend, group=Legend))+
geom_line(subset= .(Legend %in% c('table_A.txt','table_D.txt')))

enter image description here

您可以将复选框绑定(bind)到要显示的行列表。
 geom_line(subset= .(Legend %in% visibleCheckedList))

关于R ggplot2 具有 reshape (融化功能)选择性地绘制数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14167055/

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