2017-05-25 7 views
1

私はどのようにscale_continuous()expand引数が働くかを理解しようとしています。乗法与える長さ2の数値ベクトルggplot scale_continuousは引数をどのように拡張しますか?

および 膨張定数を添加剤:​​によります。これらの定数は、データがの軸から少し離れていることを保証します。デフォルト値は 連続変数の場合はc(0.05、0)、離散変数の場合はc(0、0.6)です。

これらは「拡張定数」であるため、実際の単位ではありません。実際の出力を予測するために、実際の測定値に変換する方法はありますか? 0以外のものは、動作するまで乱数を試してみます。これに近づくにはより適切な方法が必要です。

+0

「実際の単位」は何を意味しているのかよく分かりません(ピクセル、mm *など)?それは '拡大 'がどのように機能するかではない。あなたのデータの範囲に基づいてちょっとしたパディングを提供しようとしているだけです。 – neilfws

答えて

5

文書はかなり明確です。 limitsを手動で設定すると、より明確になります。

最初の引数は、その範囲の乗算に等しい拡張を与えます。

ggplot(mpg, aes(displ, hwy)) + 
    geom_point() + 
    scale_x_continuous(limits = c(1, 7), expand = c(0.5, 0)) 
# right most position will be 7 + (7-1) * 0.5 = 10 

第絶対膨張が軸の両端に付加与える:

ggplot(mpg, aes(displ, hwy)) + 
    geom_point() + 
    scale_x_continuous(limits = c(1, 7), expand = c(0.5, 2)) 
# right most position will be 7 + (7-1) * 0.5 + 2 = 12 

最後に、同一の膨張は、軸の両端に適用されます。

+0

これははるかに明確です。右または左にのみ適用する方法はありますか、はるかに複雑ですか? – burger

+2

@バーガー、私が知る限り、そのような選択肢はありません。しかし、手動で 'limits'を設定し、必要に応じてオプションで' expand'を 'c(0、0)'に設定することで回避できます。 – mt1022

+0

入力いただきありがとうございます。私は一定の「限界」を持っていないので、私はそれを動的に行うことを望んでいました。それが些細なことではないことが分かりました。 – burger

関連する問題