我正在做一个关于功能数据分析的项目,我正在尝试绘制高度的意大利面条图。我正在使用格子库中的xyplot。为什么y轴包裹在xyplot中?
这里我只为一个人绘制数据。如果绘制整个数据集,它看起来像一个粗线块。
我在R中的代码是:
xyplot(height ~ age|sex, p_data, type="l", group=id)
导致:
答案 0 :(得分:2)
在没有看到p_data
的情况下很难说,但根据轴标记我会猜测height
被视为因子变量。
运行is.factor(p_data$height)
,如果答案为TRUE
,请尝试
p_data$height <- as.numeric(levels(p_data$height))[p_data$height]
并重复你的情节。如果这不起作用,那么至少要让我们了解p_data
数据框的外观。
答案 1 :(得分:1)
height
变量被视为一个因子(分类变量)而不是连续的数字变量:
E.g。 - 我可以通过以下方式复制类似的问题:
p_data <- data.frame(height=c(96,72,100,45),age=1:4,sex=c("m","f","f","m"),id=1)
p_data$height <- factor(p_data$height,levels=p_data$height)
# it's all out of order cap'n!
p_data$height
#[1] 96 72 100 45
#Levels: 96 72 100 45
# same plot call as you are using
xyplot(height ~ age|sex, p_data, type="l", group=id)
如果你这样修理它:
p_data$height <- as.numeric(as.character(p_data$height))
....然后同一个调用给出了一个合适的结果:
xyplot(height ~ age|sex, p_data, type="l", group=id)