带有int,num和factor的ggplot2数据帧

时间:2019-01-25 10:02:36

标签: r ggplot2

我具有以下表格格式的数据:

  • 温度C:0,12,19,24,24,24
  • 盐度PPT:18.5、33、7、7、18.5、33
  • MOR:E,E,E,A,A,A

具有结构:

'data.frame':   6 obs. of  3 variables:
 $ TemperatureC: int  0 12 19 24 24 24
 $ SalinityPPT : num  18.5 33 7 7 18.5 33
 $ MOR         : Factor w/ 2 levels "A","E": 2 2 2 1 1 1

我想获得一个点图,其盐度和温度分别在x和y轴上以相应的xy坐标表示死亡率(A或E)。

我一直在尝试使用ggplot2使用以下代码:

morg<- ggplot(data = mor, mapping = aes(x = TemperatureC, y =     SalinityPPT)) 


morg + geom_point(aes(color = MOR))

此外,我尝试将数字转换为间隔,但到目前为止没有任何效果。

非常感谢!

1 个答案:

答案 0 :(得分:0)

这里有两个选项:名称缩写。您可以在原始数据集中使用名称。

一个:

df<-data.frame(Temp=c(0,12,19,24,24,24),Salinity=c(18.5, 33, 7, 7, 18.5, 33),
               MOR=c(rep("E",3),rep("A",3)))
library(tidyverse)
ggplot(df,aes(Temp,Salinity,col=MOR))+geom_point()

两个:

df %>% 
  gather("ID","Val",-MOR) %>% 
  ggplot(aes(ID,Val,col=MOR))+geom_point()