2017-03-15 26 views
0

下の例では、タイトルの2行目がプロットとわずかに重なっています。タイトルとプロットの間隔を広げてこれを修正する方法はありますか?plot ggplotly()タイトルタイトルが2行で分割されている場合のオーバーラッププロット

library(ggplot2) 
library(plotly) 
library(magrittr) 

p1 <- ggplot(iris, aes(x = Sepal.Length, y = Petal.Length)) + 
    geom_point() + 
    ggtitle("A REALLY, REALLY, REALLY LONG TITLE THAT I WANT TO\nSPLIT INTO TWO LINES") 
p1 

ggplotly() %>% config(collaborate=FALSE, cloud=FALSE, displaylogo=FALSE, modeBarButtonsToRemove=c("select2d", "sendDataToCloud", "pan2d", "resetScale2d", "hoverClosestCartesian", "hoverCompareCartesian", "lasso2d", "zoomIn2d", "zoomOut2d")) 

overlapping plotly title

答えて

-2

あなたが言うことができるように、ggplotは合計絶対高さを再計算しません。したがって、タイトルとプロットの間にバッファスペースを追加する最も簡単な方法は、長いタイトルの末尾にの改行文字\n)を追加するだけです。

ggtitle("A REALLY, REALLY, REALLY LONG TITLE THAT I WANT TO\nSPLIT INTO TWO LINES\n")

1

Plotlyは、改行文字を末尾無視してもHTMLが新しい行のため<br />代わりの\n(末尾の例を参照)壊す必要があります。

<br />を手動で追加して、タイトルを壊して、marginをレイアウトに追加してください(layout(gp, margin=list(t = 75)))。

that works

library(ggplot2) 
library(plotly) 
library(magrittr) 

p1 <- ggplot(iris, aes(x = Sepal.Length, y = Petal.Length)) + 
    geom_point() + 
    ggtitle("A REALLY, REALLY, REALLY LONG TITLE THAT I WANT TO <br />\nSPLIT INTO TWO LINES<br />\n") 
p1 

gp <- ggplotly() %>% config(collaborate=FALSE, cloud=FALSE, displaylogo=FALSE, modeBarButtonsToRemove=c("select2d", "sendDataToCloud", "pan2d", "resetScale2d", "hoverClosestCartesian", "hoverCompareCartesian", "lasso2d", "zoomIn2d", "zoomOut2d")) 
gp <- layout(gp, margin=list(t = 75)) 
gp 

ggplot ggplot


plotly

plotly

関連する問題