2016-06-29 70 views
5

Sto tentando di utilizzare plotly per tracciare un grafico a barre con stringhe lunghe come etichette dell'asse x. Tuttavia, queste stringhe sono tagliati fuori dalla plotly in questo modo illustrato di seguito:Impedire ai ticklabell lunghi dell'asse X di essere tagliati in grafici a barre con trama in R

Plotly chart axis

Passando attraverso l'elenco degli attributi di plotly asse, ho provato a installare come tickangle (che non ha senso, io rendi conto ora) e molti altri, ma tutti sono inutili.

risposta

15

È possibile regolare i margini in un layout grafico nella funzione layout.

esempio riproducibile in quanto non è stato fornito:

d <- data.frame(traitMean = apply(iris[-5], 2, mean)) 
# long labels 
labs <- c("Long name for this", "Long name for that", 
      "Long names everywhere", "Petal Width") 

Se si traccia questo con i margini di default, le etichette saranno di taglio:

# example where ticklabels are cutoff 
plot_ly(y = d[["traitMean"]], x = labs, type = "bar") %>% 
    layout(xaxis = list(tickangle = 45)) 

È possibile regolare il margine inferiore da quello predefinito nell'argomento margin di layout. margin prende una lista con nome dove b è il nome per il margine "in basso". 160 px funziona in questo esempio, ma potrebbe essere necessario trovare un valore che funzioni per le etichette.

plot_ly(y = d[["traitMean"]], x = labs, type = "bar") %>% 
    layout(margin = list(b = 160), xaxis = list(tickangle = 45)) 

enter image description here

+0

Grazie. Penso che questo funzioni bene per il mio scopo, per visualizzare completamente i nomi delle etichette. – kevw22

+0

Ho lo stesso problema con javascript cosa devo fare anche io, – George

+0

, in Javascript. – Mark