如何让ggstructure在ggplot2中生成图

时间:2011-12-08 02:58:00

标签: r ggplot2

我正在尝试了解如何在ggplot2中使用ggstructure。使用文档示例,我可以成功地使用示例代码:ggstructure(mtcars)。但是,我不能让ggstructure从我自己的数据中读取文件。例如:

我的数据如下:

colors,hue,saturation,vibrance
BLUE,10,2,100
RED,2,86,2
GREEN,45,23,11

我的代码如下所示:

library(ggplot2)
data <- read.table("/path/to/data", head=TRUE, sep=",')
ggstructure(data)

当我尝试用ggstructure绘图时,我得到了

Error: Non-continuous variable supplied to scale_fill_gradient2.
In addition: Warning messages:
1: In `[<-.factor`(`*tmp*`, ri, value = c(1L, 3L, 2L, NA, NA, NA)) :
invalid factor level, NAs generated
2: In `[<-.factor`(`*tmp*`, ri, value = c(1L, 3L, 2L, NA, NA, NA, NA,  :
invalid factor level, NAs generated
3: In `[<-.factor`(`*tmp*`, ri, value = c(1L, 3L, 2L, NA, NA, NA, NA,  :
invalid factor level, NAs generated

我也尝试将数据更改为连续数据,但这也产生了同样的问题。有人可以帮忙吗?感谢。

1 个答案:

答案 0 :(得分:1)

查看代码时,似乎ggstructure(它只是ggpcp的包装器)真的打算用于非连续数据。

平行坐标图函数ggpcp尝试重新缩放然后融化整个数据集。这会生成一个y变量,按原始数据集中的“变量”分组。如果你有混合的连续/分类变量,这意味着这将被强制转换为一个因素,你突然如何绘制它并不清楚。

简短的版本是如果你有混合的连续/分类变量,我认为你必须自己做些什么。