こんにちは、ggplot2でxのa番目の多項式のプロットを作成する簡単な関数を書いています。以下は、私のコードです:ggplot2の軸ラベルに文字と数値変数を混合する方法
PlotPower <- function(x,a){
y <- x^a
dat <- data.frame(x,y)
f <- function(x) x^a
ggplot(dat,aes(x,y)) + geom_point() + stat_function(fun = f, colour = "red") +
scale_x_continuous(breaks = pretty(dat$x, n = 10)) +
scale_y_continuous(breaks = pretty(dat$y, n = 10)) +
labs(x = "x", y = expression(x^a), title = "Polynomial plot of x")
}
は、今私はPlotPower(1:10,3)を呼び出す午前言う、プロットは
のように見えます。しかし、私は、Y軸ラベルが自動的にX^3に変更したいです。私はそれをすることができませんでした。私は
labs(y = "x"^a)
を書くことを試みたが、私はエラーメッセージを取得しています。エラーを「×」^ Aに:私は数値変数と文字変数を配合していますとして期待されているバイナリ演算子、非数値引数。
PlotPower関数の中にggplot2のy軸ラベルを正しく記述すると、PlotPower関数を呼び出すときにy軸ラベルがx^aとなります.xは文字xですが、aは引数aの値
この作業をする必要があります: 'ラボ(Y =解析(テキスト= paste0( "X ^"、A)))' –
や 'Y = bquote(X ^〜。 (a)) '[経由](https://stackoverflow.com/questions/20005233/how-to-use-simultaneously-superscript-and-variable-in-a-axis-label-with-ggplot2) – lukeA
'y = substitute(x^z、list(z = a))' – user20650