用线条绘制一个图形,一个因子和数据点仅绘制R中的另一个因子

时间:2015-12-03 03:36:39

标签: r plot ggplot2

我使用以下代码使用ggplot2进行了以下操作:

graph

ggplot(data=d, aes(x=Characteristic, y=Rating, group=Factor, colour=Factor)) +
geom_point() +
geom_line()+
ylim(0,10)+
xlab("Characteristics") + theme(text = element_text(size=20))

我只想用线连接两个因子(A-H)的数据点,其他因素只需要数据点(没有连接线)。 我怎样才能做到这一点?

我的数据采用以下形式:

     Factor Characteristic Rating
1       A             OA      7
2       B             OA      6
3       C             OA      5
4       D             OA      4
5       E             OA      5
6       F             OA      6
7       G             OA      7
8       H             OA      1
9       A             HS      7
10      B             HS      2
11      C             HS      5

1 个答案:

答案 0 :(得分:3)

使用ifelse在您的数据框中添加标识符,并使用dplyr过滤您的数据:

d$lc <- ifelse(d$Factor %in% c("A", "H"), "line", "point")

ggplot(data=d, aes(x=Characteristic, y=Rating, group=Factor, colour=Factor)) +
geom_point() +
geom_line(data=filter(d, d$lc == "line"), aes(x=Characteristic, y=Rating, group=Factor, colour=Factor))

应该做的伎俩。

相关问题