美文网首页
瞎折腾1

瞎折腾1

作者: 123678 | 来源:发表于2021-03-21 21:23 被阅读0次

    通过绘制一些图,用来加深和理解一些函数和语法!!!菜鸟一名,用于个人记录,比较乱。

    图片.png

    1 使用R中的基础函数

    library(reshape2)
    
    df <- data.frame(TwoWAF=5.5,Fourwaf=1,SixWAF=1.2)
    df_new <-  melt(df)
    
    barplot(df_new$value,width = c(1,1,1),ylim = c(0,7),axes=F,col = "black",border = "black",ylab = "Copy number/10ng of total RNA")
    arrows(x0=0.75,y0=0,x1=0.75,y1=6,angle = 90,lwd = 3, length = 0.5)
    arrows(x0=1.9,y0=0,x1=1.9,y1=1.5,lwd = 3, length = 0.5,angle = 90)
    arrows(x0=3.1,y0=0,x1=3.1,y1=1.5,lwd = 3, length = 0.5,angle = 90)
    axis(side = 2,labels =T)
    axis(side = 4,labels = T)
    points(x=c(0.75,1.9,3.1),y=c(5.6,1.5,3),col="red",pch=16)
    lines(x=c(0.75,1.9,3.1),y=c(5.6,1.5,3),col="red",lwd=2)
    axis(side = 1,at=c(0.75,1.9,3.1),labels = c("2WAF","4WAF","6WAF"))
    mtext("FPKM", side=4, line=3, cex.lab=1,las=1, col="blue")
    box()
    
    图片.png

    2 使用ggplot2

    library(ggplot2)
    library(reshape2)
    ## 创建数据集
    df <- data.frame(TwoWAF=5.5,Fourwaf=1,SixWAF=1.2)
    df_new <- melt(df)
    p <- ggplot(df_new,mapping = aes(x=variable,y=value))+
      geom_bar(stat = "identity",col="black",fill="black")+
      geom_segment(aes(x=1,y=0,xend=1,yend=6),arrow = arrow(length =  unit(50,"points"),angle = 90))+
      geom_segment(aes(x=2,y=0,xend=2,yend=1.5),arrow = arrow(length =  unit(50,"points"),angle = 90))+
      geom_segment(aes(x=3,y=0,xend=3,yend=1.5),arrow = arrow(length =  unit(50,"points"),angle = 90))+
      geom_point(mapping = aes(x=c(1),y=c(5.6),color="red")+
      geom_point(mapping = aes(x=2,y=1.5),color="red")+
      geom_point(mapping = aes(x=3,y=3),color="red")+
      geom_line(mapping = aes(x=c(1,2,3),y=c(5.6,1.5,3)),color="red",lwd=1)+
      geom_text(mapping = aes(x=c(1,2,3),y=c(5.6,1.5,3)),label = c("5.6","1.5","3"),hjust=0,nudge_x = 0.02)+theme_test()+
        theme(legend.position = "none")+
        
        p <- p + theme_test()
        p <- p + labs(x=" ",y="Copy number/10ng of total RNA")
        p
    
    图片.png

    总结
    1 没有解决基础函数绘制双坐标轴时怎么使两个坐标轴长度相同,标尺不同。
    2 ggplot2 怎么绘制双坐标轴。
    3 感觉使用Excel或者origin等更加方便。

    相关文章

      网友评论

          本文标题:瞎折腾1

          本文链接:https://www.haomeiwen.com/subject/vcbocltx.html