次のようなデータフレームmdata
があります。
>head(mdata)
ID variable value
SJ5444_MAXGT coding 4.241920
SJ5426_MAXGT coding 4.254331
HR1383_MAXGT coding 4.244994
HR5522_MAXGT missense 4.250347
CH30041_MAXGT missense 4.303174
SJ5438_MAXGT utr.3 4.242218
そして、私は次のようなバイオリンプロットをプロットしようとしています:
x1<- mdata$value[mdata$variable=='coding']
x2<- mdata$value[mdata$variable=='missense']
x3<- mdata$value[mdata$variable=='utr.3']
vioplot(x1, x2, x3, names=as.character(unique(mdata$variable)), col="red")
title("Violin Plot: Log10 values")
しかし、次のような別のデータフレームndata
があります。
>head(ndata)
ID variable value
SJ5444_MAXGT coding 17455
SJ5426_MAXGT coding 17961
HR1383_MAXGT coding 17579
HR5522_MAXGT missense 17797
CH30041_MAXGT missense 20099
SJ5438_MAXGT utr.3 17467
基本的に mdata$value は次のとおりです。
mdata$value = log10(ndata$value)
だから私はヴァイオリンのプロットを大丈夫にすることができます。しかし、mdata$value ではなく ndata$value に一致するように Y 軸のラベルを変更する必要があります。mdata$value をプロットしていますが、ndata$value から取得した Y 軸のラベルが必要です。参考までに、これは実際のデータのサブセットであり、実際のデータの最小値と最大値は12と36937であり、次を使用してボックスプロットにプロットする方法を知っています:
axis(side=2,labels=round(10^(seq(log10(min(ndata$value)),log10(max(ndata$value)),len=5))),at=seq(log10(min(ndata$value)),log10(max(ndata$value)),len=5))
しかし、ヴァイオリン プロットの ndata$value と一致するように Y 軸ラベルをプロットすることはできません。助言がありますか?
PSタグが見つからなかったか、タグ付けvioplot
できviolinplot
ませんでした。