ggplot scale gradient スケール 連続 離散
連続量の場合
scale_color_gradient(low = <色名>, high = <色名>)を使用する。下記の例はaes(color=<xxx>)に対して連続量スケールを指定している。低い値に赤を高い値には緑を割り当てている。
df <- data.frame(delta=as.vector(diff((cli_xts$oecd))[period]) ,gdp=as.vector(w),spx= as.vector(monthlyReturn(GSPC)[period]) )
p <- ggplot(df, aes(y=delta,x=gdp))
p <- p + theme_gray (base_family = "HiraKakuPro-W3")
p <- p + xlab("GDP補正月間伸び率") + ylab("CLI delta")
p <- p + geom_point(alpha=1,aes(color=spx))
p <- p + scale_color_gradient(low = "red", high = "green")
離散量の場合
ここではcolor とshapeに離散量データを代入している。color はscale_color_brewer で使用するパレットと凡例の場合わけを使用する。shapeは scale_shape_manual のvalues とlabelで使用する形状と凡例の場合わけを指定する。
func <- function(x){
if(x > 0.1){return("a")}
if(x > 0.025){return("b")}
if(x > 0){return("c")}
if(x > -0.025){return("d")}
if(x > -0.05){return("e")}
if(x > -0.1){return("f")}
if(x < -0.1){return("g")}
}
df <- data.frame(monthlyreturn=as.vector(apply(w,1,func)), delta=as.vector(d),sign=as.vector(diff(diff(cli_xts$oecd))[k1970])) #2020
p <- p + geom_point(alpha=1,aes(color=monthlyreturn,shape=monthlyreturn))
p <- p + scale_color_brewer(palette="Spectral", label=c("more than 0.1","more than 0.025","more than ZERO","more then -0.025","more than -0.05","less than -0.05")) #x-axis label
p <- p + scale_shape_manual(values=c(0,1,2,10,11,12),label=c("more than 0.1","more than 0.025","more than ZERO","more then -0.025","more than -0.05","less than -0.05"))
この記事が気に入ったらサポートをしてみませんか?