在散点图上绘制5组数据

时间:2016-02-17 23:04:55

标签: r ggplot2

我在一个图上需要五组数据。我需要x轴为激光雷达,y轴为FPC。

我正在使用ggplot2。到目前为止,我有以下代码:

setwd("C:/r/LIDAR_FPC")

AllLidarvsFPC.df <- data.frame(read.csv("AllLidarvsFPC.csv"))
AllLidarvsFPC = read.csv("AllLidarvsFPC.csv", header=TRUE)

library(ggplot2)

p <- ggplot(AllLidarvsFPC.df, aes(AllLidarvsFPC.df[,1], AllLidarvsFPC.df[,2])) + 
     geom_point() + 
     scale_x_continuous(limits=c(-30,100), breaks=c(-30, -20, -10, 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100)) + 
     scale_y_continuous(limits=c(-10,120), breaks=c(-10, 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100))`

p + 
labs(y = "2013 Percentage cover (%) derived from LiDAR") + 
labs(x = "2013 FPC (%) derived from Landsat") + 
stat_smooth(method = "lm", formula = y ~ poly(x, 5), size = 0.5, col="black")

但是,这只会绘制第一组数据:WildmanFPC。 我需要绘制所有FPC数据集!

enter image description here

1 个答案:

答案 0 :(得分:1)

由于没有可用的工作数据,我已经制作了一个示例数据框,向您展示如何将其应用于您的代码。 在未来,最好提供可重现的代码,这样可以加快响应速度。

library(ggplot2)
library(reshape2)

df <- data.frame(LIDAR=c(1,2,3,4), WildmanFPC=c(3,5,2,6), WestAlligatorFPC=c(5,6,7,12), SouthAlligator=c(12,7,1,0))
df_melt<-melt(df, id.vars = 'LIDAR')

ggplot(df_melt, aes(x=LIDAR, y = value, color= variable))+ geom_point()

enter image description here