0
ggplot2
パッケージのfacet_grid
にlabeller
引数(と関数)を使用したいので、1つの軸上の複数のラベルが互いに隣り合っているのではなく、互いに重なるようにします。facet_grid labeller 2行
以下の再現性の例では、私は 「ABC株式会社\ nAAAAAAAA」と「DEF PLC \ nAAAAAAAA」つまり、同じ「ラベルボックス」で、その下のセクターで会社名を言うためにラベルを取得したいと思いますし、 'GHI LLP \ nBBBBBBBBB'は、y軸ファセットラベルです。理想的には、その下にある複数の追加のラベル記述についてこれを拡張したいと思います。
require(ggplot2)
require(reshape2)
require(dplyr)
dat <- data.frame(date=Sys.Date()+seq(1000),
stock_px_1=100*cumprod(c(1,1+rnorm(999,0.00003,0.0004))),
stock_px_2=500*cumprod(c(1,1+rnorm(999,0.00001,0.0003))),
stock_px_3=10*cumprod(c(1,1+rnorm(999,0.00005,0.0005))))
stock_info <- data.frame(px_name=paste0('stock_px_',seq(3)),
stock_id=c('a1b2c3','d4e5f6','g7h8i9'),
sector=c('AAAAAAAA','AAAAAAAA','BBBBBBBBB'),
long_name=c('ABC Ltd','DEF plc','GHI LLP'))
dat_melted <- melt(dat,id.vars='date',variable.name='px_name',value.name='price')
joined_dat <- left_join(dat_melted,stock_info,by='px_name')
ggplot(joined_dat,aes(x=date,y=price,color=px_name))+
geom_path()+
facet_grid(long_name+sector~.,scales='free_y')+
theme(strip.text.y=element_text(angle=0))+
theme(legend.position='none')