2016-03-24 8 views
-1

ggternを使用して三元プロットを生成しようとしています。ggtern三元プロットの軸を調整する

私のデータの範囲は、x、y、zの各変数が0〜1000です。私は自分のデータを表現するために軸の長さを100以上に伸ばすことが可能かどうか疑問に思った。

+1

ようこそスタックオーバーフロー! [良い質問をする方法](http://stackoverflow.com/help/how-to-ask)と[再現可能な例を与える方法](http://stackoverflow.com/questions/)の情報をお読みください。 5963269)。これは他の人があなたを助けることをはるかに容易にします。 – zx8754

答えて

1

私はggternでこれを行うための直接的な解決策はないと思います。 、統一への合計は、濃度

library(ggtern) 

df = data.frame(x = runif(50)*1000, 
       y = runif(50)*1000, 
       z = runif(50)*1000, 
       Group = as.factor(round(runif(50,1,2)))) 

ggtern() + 
    geom_point(data = df, aes(x/10, y/10, z/10, color = Group)) + 
    labs(x="X", y="Y", z="Z", title="Title") + 
    scale_T_continuous(breaks = seq(0,1,0.2), labels = 1000*seq(0,1,0.2)) + 
    scale_L_continuous(breaks = seq(0,1,0.2), labels = 1000*seq(0,1,0.2)) + 
    scale_R_continuous(breaks = seq(0,1,0.2), labels = 1000*seq(0,1,0.2)) 
2

@Nevromeが正しい道の上に、あなたのポイントはまだすなわち、「組成物」としてプロットされますされていますが、のラベルを変更することができます。しかし、簡単な回避策は、このようになります。 0から1000の範囲を示すために軸を使用します。

library(ggtern) 
set.seed(1) 
df = data.frame(x = runif(10)*1000, 
       y = runif(10)*1000, 
       z = runif(10)*1000) 
breaks = seq(0,1,by=0.2) 
ggtern(data = df, aes(x, y, z)) + 
    geom_point() + 
    limit_tern(breaks=breaks,labels=1000*breaks) 
関連する問題