[英]R- how to plot multiple overlaying graphs/scatterplots?
我正在研究一个机器学习问题,试图将使用两种不同的ML方法的预测与原始测试值进行比较,并查看它们的比较结果,并试图将结果可视化。 我已经完成了2个单独的散点图(在测试值和预测值之间),但是我想查看这些值之间的差异。 因此,我尝试将数据细分为使用第一个ML算法的100个ytest值,100个预测值(ymle_predict)和使用第二个ML算法的100个预测值(ymap_predict)。
我希望我的x轴代表每个数据点,而y轴代表该数据点的3个不同值(ytest,ymle_predict和ymap_predict)。
假设我们有:
ytest<- c(1, 2, 3, 4, 5, 6, 7 )
ymle_predict<-c(1.1, 2.1, 3.1, 4.1, 5.1, 6.1, 7.1 )
ymap_predict <- c(1.2, 2.2, 3.2, 4.2, 5.2, 6.2, 7.2 )
其中值是按顺序排列的,因此ymle_predict中的第二个元素代表ytest中第二个元素的数据点预测。
我想看看这些点之间如何变化,就像说我们如何看到不同股票(随即每种颜色用不同的颜色)随时间变化的重叠图一样。 但是,这里的时间不是x轴,而是一个计数器变量,例如:
i<- c(1,2,3,4,5,6,7)
我曾尝试将这些元素放入数据框,但这并没有帮助我提出任何答案。
使用ggplot和dplyr:
library(ggplot2)
library(dplyr)
df <- data.frame(ytest = c(1, 2, 3, 4, 5, 6, 7 ),
ymle_predict = c(1.1, 2.1, 3.1, 4.1, 5.1, 6.1, 7.1 ),
ymap_predict = c(1.2, 2.2, 3.2, 4.2, 5.2, 6.2, 7.2 ),
i = c(1,2,3,4,5,6,7))
df.plot <- df %>%
gather(results, value, -c("i"))
ggplot(df.plot, aes(x=i, y=value, color=results)) +
geom_point()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.