绘制三变量折线图

时间:2019-07-29 02:37:49

标签: r line-plot

我需要按照以下dataset绘制包含2条线的折线图:

enter image description here

我需要图表中的每一行来匹配技术。 X和Y的值分别是Release和Add。我需要生成的图形类似于下图中的图形:

enter image description here

要绘制第一行,我尝试过:

plot(IrisChangeModules[IrisChangeModules$Technique=="aop"]$Added, IrisChangeModules[IrisChangeModules$Technique=="aop"]$Release, type = "l")

2 个答案:

答案 0 :(得分:0)

首先创建有序发行版int
IrisChangeModules$release_n = 1:nrow(IrisChangeModules)

现在创建一个空白图,type="n"表示实际上没有任何图。 plot(Added~release_n,data=IrisChangeModules,type="n",xaxt = "n")

使用原始变量创建轴标签(如果发行的版本超过4,则可能需要更新at)。 axis(1,at=1:4,labels=IrisChangeModules$Release)

需要添加行

lines(Added~release_n,data=IrisChangeModules[IrisChangeModules$tech=="dop",],type='l',col="green")
lines(Added~release_n,data=IrisChangeModules[IrisChangeModules$tech=="aop",],type='l',col="red")

添加图例,如果添加更多行,请确保要更新

legend(1,90, 
       legend=c("dop", "aop"),
       col=c("green", "red"), 
       lty=1, 
       cex=0.8)

答案 1 :(得分:0)

使用ggplot(虽然不是base r解决方案),获得所需输出的一种方法是:

library(ggplot2)

ggplot(dataset, aes(x=Release, y=Added, group=Technique)) + geom_line(aes(linetype = Technique, color=Technique)) + geom_point(aes(color = Technique)) + theme_bw()

给定虚拟数据的输出如下: sample_output

您可以使用ggplot的不同参数来定位图例和图的其他方面。