2015-08-19 11 views
6

Jestem nowicjuszem i nie jestem w stanie znaleźć odpowiedniej dokumentacji, jak nazwać ślady, aby znacząca etykieta pojawiła się na wykresie renderowanym przez ggplotly. Oto ggplotly site, który pokazuje wiele przykładów. Co jest potrzebne do wykazania znaczącej etykietę przy aktywowaniu zamiast wartości następuje TRACE0, trace1 itpggplotly - R, oznaczanie nazw śledzenia

Na przykład w pierwszej działce, w jaki sposób można etykiety pojawiają się więc to pokazuje:

proporcja: wartość

Razem rachunek: wartość

Idealnie, chciałbym to zrobić bezpośrednio w R zamiast za pośrednictwem interfejsu WWW. Z góry dziękuję.

Odpowiedz

4

Można również edytować dowolny plotly właściwościach figury po konwersji ggplot2 ale przed wysłaniu go do plotly. Here is an example, który ręcznie zmienia nazwy wpisów legendy. Ja to powtórzyć tutaj:

df <- data.frame(x=c(1, 2, 3, 4), y=c(1, 5, 3, 5), group=c('A', 'A', 'B', 'B')) 
g <- ggplot(data=df, aes(x=x, y=y, colour=group)) + geom_point() 

# an intermediate step that `ggplotly` calls 
p <- plotly_build(g) 

# manually change the legend entry names, which are "trace0", "trace1" in your case 
p$data[[1]]$name <- 'Group A' 
p$data[[2]]$name <- 'Group B' 

# send this up to your plotly account 
p$filename <- 'ggplot2-user-guide/custom-ggplot2' 
plotly_POST(p) 

The extended example here bardziej szczegółowo wyjaśnia, jak i dlaczego to działa.

Zauważ, że ogólnie nazwy pozycji legendy, np. "trace0", będą to etykiety zgrupowane w ramce danych (jak w ggplot2).

+0

to jest niezgrabne, ale działa. dzięki – marbel

8

Za pomocą ggplot2 i Plotly można ustawić text. Będziesz chciał install Plotly and get a key. Oto dwa przykłady. Przykład pierwszy:

data(canada.cities, package="maps") 
viz <- ggplot(canada.cities, aes(long, lat)) + 
    borders(regions="canada", name="borders") + 
    coord_equal() + 
    geom_point(aes(text=name, size=pop), colour="red", alpha=1/2, name="cities") 
    ggplotly() 

ggplotly(filename="r-docs/canada-bubble") 

Daje this plot z nazwą kanadyjskich miast dostępnych w zawisie.

enter image description here

Przykład drugi:

install.packages("gapminder") 
library(gapminder) 

ggplot(gapminder, aes(x = gdpPercap, y = lifeExp, color = continent, text = paste("country:", country))) + 
geom_point(alpha = (1/3)) + scale_x_log10() 

ggplotly(filename="ggplot2-docs/alpha-example") 

co daje this plot.

enter image description here

Aby uzyskać więcej informacji, zobacz nasze R docs lub this question w jaki sposób zastąpić element hover_text. Natywny interfejs R API firmy Plotly pozwala dodać do swoich działek more controls. Dziękuję za pytanie Briana. Dodamy również nową sekcję do naszych dokumentów. Zastrzeżenie: Pracuję dla firmy Plotly.

Powiązane problemy