2013-11-26 47 views
2

我似乎遇到縮放問題,在此處未找到任何答案。無法在箱形圖中獲得足夠的縮放比例

我用參數「HR」= Heartrate和「Phase」= Centrifuge Phase創建了一個boxplot。有階段0-9。

這是我到目前爲止。

boxplot(HR[Gender=="f"]~Phase[Gender=="f"],main="Heart Rate of Females",font.main=2, xlab="Phase", ylab="Heart Rate (beats/min)", axes=FALSE) 
axis(side=1,at=c(0, 1,2,3,4,5,6,7,8,9),labels=c(0,1,2,3,4,5,6,7,8,9), xlim=range(0:10), font.lab=4) 
axis(side=2,at=c(0, 60,70,80,90,100,110,120,130),labels=c(0, 60,70,80,90,100,110,120,130),las=1, font.lab=4) 

這一切似乎都很好。但是,我似乎無法解決讓相位0繪製在x軸上相應的0值上的問題。
相反,我在x軸的位置1上看到0相位,在x軸的位置2上看到相位1,等等,直到相位9不再在x軸上。

回答

0

我使用了您在另一個問題中提供的數據來重現您的boxplot代碼。

df <- data.frame(
    Phase = factor(c(0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9)), 
    HR = c(67, 70, 70, 73, 82, 83, 104, 106, 73, 86, 74, 65, 86, 82, 94, 108, 73, 81, 67, 68), 
    Gender = factor(c("female", "male", "female", "male", "female", "male", "female", "male", "female", "male", "female", "male", "female", "male", "female", "male", "female", "male", "female", "male")), 
) 

然後,我用R中的子集函數創建了第二個只有「女性」觀察值的數據框。

df2 = subset(df,df$Gender=="female") 

最後,我使用的箱線圖功能(如你沒有)來自R graphics包並正確顯示在x軸上所有階段。

boxplot(HR~Phase, data=df2, 
    main="Heart Rate of Females", 
    xlab="Phase", 
    ylab="Heart Rate (beats/min)", 
    ylim=c(60,130), 
    par(font.lab=4,font.main=2)) 

boxplot中只有橫線,因爲每個階段只有一個觀察點。

enter image description here