【问题标题】:Graphing using r and points (pch)使用 r 和点 (pch) 绘图
【发布时间】:2019-01-17 22:39:43
【问题描述】:

我的 R 代码会怎样?我不想看到条形图,我只想看到绘图字符(pch):

plot(Graphdata$Sites,ylim=c(-1,2.5), xlab="sites",
          ylab="density frequency",lwd=2)
points(Graphdata$A,pch=1,col="blue",lwd=2)
points(Graphdata$B,pch=2,col="green",lwd=2)
points(Graphdata$C,pch=3,col="red",lwd=2)
points(Graphdata$D,pch=4,col="orange",lwd=2)
legend("topright",
       legend=c("A","B","C","D"),
       col=c("red","blue","green","orange"),lwd=2)

我的部分数据如下所示:

     Sites     A     B     C     D
    1     A 2.052 2.268 1.828 1.474
    2     B 0.549 0.664 0.621 1.921
    3     C 0.391 0.482 0.400 0.382
    4     D 0.510 0.636 0.497 0.476
    5     A 0.214 0.239 0.215 0.211
    6     B 1.016 1.362 0.978 0.876
......................................
.....................................

我想要根据pch而不是线的形式的图例。

【问题讨论】:

  • 您的数据中Sites 列的含义有点混乱。如果A 列中的值来自站点A,Site 列提供什么信息?当我查看您的数据时,我无法判断值 0.549 是否应该来自站点 A、站点 B(行)或完全来自其他东西。
  • 如果plot 的第一个参数是一个因子,那么默认的绘图类型是条形图。如果您想要不同类型的绘图,则需要查看绘图函数并以不同方式指定代码。
  • A、B、C、D、A、B 在站点 @Joran 下

标签: r graphing


【解决方案1】:

条形图正在发生,因为您正在绘制 Sites 列的因子。仅绘制点:

library(reshape2)
library(ggplot2)
#plots 6 categorical variables
Graphadata.m = melt(t(Graphdata[-1]))
ggplot(Graphadata.m,aes(Var2,value,group=Var2)) + geom_point() + ylim(-1,2.5)

如果您希望它改为绘制 4 个分类变量:

Graphdata.1 = t(Graphdata[-1])
colnames(Graphdata.1) = c("A","B","C","D","A","B")
Graphdata.m = melt(Graphdata.1)
ggplot(Graphdata.m,aes(Var2,value,group=Var2)) + geom_point() + ylim(-1,2.5)

编辑: 在基础 R 中:

plot(1,xlim=c(1,4),ylim=c(-1,2.5), xlab="sites",ylab="density frequency",lwd=2,type="n",xaxt = 'n')
axis(1,at=c(1,2,3,4),tick=T,labels=c("A","B","C","D"))
points(Graphdata$A,pch=1,col="blue",lwd=2)
points(Graphdata$B,pch=1,col="green",lwd=2)
points(Graphdata$C,pch=1,col="red",lwd=2)
points(Graphdata$D,pch=1,col="orange",lwd=2)

【讨论】:

  • 我不是说我只想画点@desc。我只想要 pch 而我不想要那里的条形图。告诉我如何摆脱条形图,这是我的问题??
  • @Stackuser,你的问题(如上面提到的42)是你的第一个情节是一个因素,它默认为条形图。因此,您可以使用ggplot,如此处答案中所述,或者如果您设置使用基础图,请参阅上面的编辑。
猜你喜欢
  • 1970-01-01
  • 2019-08-21
  • 2012-12-30
  • 2023-04-09
  • 2018-08-14
  • 1970-01-01
  • 2016-09-10
  • 2012-06-30
  • 2014-02-28
相关资源
最近更新 更多