簡體   English   中英

如何在ggplot2中繪制雙軸?

[英]How to draw dual axes in ggplot2?

我是新手。 我想畫一個雙坐標折線圖,其中橫坐標代表D,左縱坐標代表R,右縱坐標代表M和A。我的數據集和代碼在下面,我想控制左縱軸坐標范圍是(0.9-1.0),右邊是(0.1-0.5),請問這個怎么辦?

data<-data.frame(R=c(0.9649789,0.9700804,0.9632690,0.9523244,0.9339738),
             M=c(0.2465927,0.2263204,0.2520991,0.2982259,0.3614747),
             A=c(0.1427684,0.1428706,0.1642165,0.1937662,0.2353444),
             D=c(20,15,10,5,2))

p2<-ggplot(data,
           aes(x = D,y=R))+
     geom_line(color="#6FB585")+
     geom_point(size=3,color="#6FB585")+
     scale_y_continuous(name = 'R',
                 sec.axis = sec_axis(~.*0.25, name = 'M and A'))+
     geom_line(aes(y=M,x=D), color="#E8BF80")+
     geom_point(aes(y=M, x=D),size=3,color="#E8BF80")+
     geom_line(aes(y=A,x=D), color="#A8BF85")+
     geom_point(aes(y=A, x=D),size=3,color="#A8BF85")


  

這可能是從以下內容開始的:

ggplot(data,
           aes(x = D,y=R))+
    geom_line(color="#6FB585")+
    geom_point(size=3,color="#6FB585")+
    scale_y_continuous(name = 'R',
                       sec.axis = sec_axis(~(.-0.875)/0.25, name = 'M and A'))+
    geom_line(aes(y = M*0.25+0.875, x= D), color="#E8BF80") +
    geom_point(aes(y=M*0.25+0.875, x=D),size=3,color="#E8BF80")+
    geom_line(aes(y=A*0.25+0.875,x=D), color="#A8BF85")+
    geom_point(aes(y=A*0.25+0.875 , x=D),size=3,color="#A8BF85")

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM