2017-09-27 5 views
4

リニアモデルプロットを作成した後、軸に特定の方法でラベルを付ける方法を見つけることができませんでした。"as.numeric"ファクタに対して数値ベクトルをプロットするときに軸ラベルを変更する

私のデータは

Sample     ActB 
    Pre-Amp_Ctrl cDNA  5.607907144 
    Pre-Amp_Ctrl cDNA 10e-1 8.916634343 
    Pre-Amp_Ctrl cDNA 10e-2 12.6501345 
    Pre-Amp_Ctrl cDNA 10e-3 16.32385192 
    Pre-Amp_Ctrl cDNA 10e-4 20.30327678 
    Pre-Amp_Ctrl cDNA 10e-5 23.40471201 

私は通常

ggplot(NP, aes(x=NP$Sample, y=NP$actbct)) + 
    geom_point() 

私はこれを取得、これをプロットしたものである:サンプルは目盛りにラベル付けされている

enter image description here

を。

トレンドラインを追加しようとすると、因子ベクトルを "as.numeric"に変更する必要があり、ラベル付きティックが失われます。

ggplot(NP, aes(x=as.numeric(NP$Sample), y=NP$actbct)) + 
    geom_point() + 
    geom_smooth(method= "lm", color = "red") 

、代わりにこのイメージを取得する:

enter image description here

をもトレンドラインを持ちながら標識された試料を維持するために、任意の可能な方法は?私はExcelでそれを行うことができることを知っていますが、Rでそれを行うこともできることは素晴らしいことです。

答えて

3

ラベルを指定するにはscale_x_continuousを使用してください。彼らが長くなるにつれ、私は彼らの角度と位置も変えました。

NP <- read.csv("tmp", header = T) 

library(ggplot2) 
ggplot(NP, aes(as.numeric(Sample), ActB)) + 
    geom_point() + 
    geom_smooth(method = "lm", color = "red") + 
    scale_x_continuous(breaks = 1:nrow(NP), labels = NP$Sample) + 
    labs(x = "Sample") + 
    theme(axis.text.x = element_text(angle = 70, hjust = 1)) 

enter image description here

1
NP <- read.table(text=' 
Sample ActB 
"Pre-Amp_Ctrl cDNA" 5.607907144 
"Pre-Amp_Ctrl cDNA 10e-1" 8.916634343 
"Pre-Amp_Ctrl cDNA 10e-2" 12.6501345 
"Pre-Amp_Ctrl cDNA 10e-3" 16.32385192 
"Pre-Amp_Ctrl cDNA 10e-4" 20.30327678 
"Pre-Amp_Ctrl cDNA 10e-5" 23.40471201 
', header=T) 

library(ggplot2) 
    ggplot(NP, aes(x=NP$Sample, y=NP$ActB)) + 
    geom_point() + 
    geom_smooth(aes(x=as.numeric(NP$Sample), y=NP$ActB), method= "lm", color = "red") 

enter image description here

関連する問題