2017-05-08 6 views
0

Ich habe Probleme, wie Sie den Haupttitel und die Legende in ggplotly positionieren. Ich möchte, dass mein Haupttitel oben auf dem Diagramm steht und linksbündig ist. Ich möchte auch meine Legende in der unteren Mitte des GraphenHaupttitel und legende.position Ausgabe auf ggplotly

Hier zu sein ist mein Code

library(ggplot2) 
library(dplyr) 
library(tidyr) 
library(plotly) 

Month_Names <- c("2010-11","2010-12", 
      "2011-01","2011-02","2011-03","2011-04","2011-05","2011-06","2011-07","2011-08","2011-09","2011-10","2011-11","2011-12", 
      "2012-01","2012-02","2012-03","2012-04","2012-05","2012-06","2012-07","2012-08","2012-09","2012-10","2012-11","2012-12", 
      "2013-01","2013-02","2013-03","2013-04","2013-05","2013-06","2013-07","2013-08","2013-09","2013-10","2013-11","2013-12", 
      "2014-01","2014-02","2014-03","2014-04","2014-05","2014-06","2014-07","2014-08","2014-09","2014-10","2014-11","2014-12", 
      "2015-01","2015-02","2015-03","2015-04","2015-05","2015-06","2015-07","2015-08","2015-09","2015-10","2015-11","2015-12", 
      "2016-01","2016-02","2016-03","2016-04","2016-05","2016-06","2016-07","2016-08","2016-09","2016-10","2016-11","2016-12", 
      "2017-01") 
Actual_volume <- c(54447,57156, 
       52033,49547,58718,53109,56488,60095,54683,60863,56692,55283,55504,56633, 
       53267,52587,54680,55569,60013,56985,59709,61281,54188,59832,56489,55819, 
       59295,52692,56663,59698,61232,57694,63111,60473,58984,64050,54957,63238, 
       59460,54430,58901,61088,60496,62984,66895,62720,65591,67815,58289,72002, 
       61054,60329,69283,68002,63196,72267,71058,69539,71379,70925,68704,76956, 
       65863,70494,77348,70214,74770,77480,69721,83034,76761,77927,79768,81836, 
       75381) 

df_data <- data.frame(Month_Names, Actual_volume) 

trendDateRange1 <- c("2010-11-01", "2017-01-31") 
trendDateRange2 <- c("2012-01-01", "2012-12-31") 
trendDateRange3 <- c("2013-01-01", "2013-12-31") 
numoftrends <- 3 

trends <- data_frame(Start = c("2010-11", "2012-01", "2013-01"), 
       End = c("2017-01", "2012-12", "2013-12")) 
combined_data <- df_data %>% 
       crossing(trends) %>% 
       mutate(Month_Names = as.character(Month_Names), 
TrendName = paste(Start, End, sep = "-")) %>% 
filter(Month_Names >= Start, 
    Month_Names <= End) 


p <- ggplot(combined_data, aes(Month_Names, y = Actual_volume, 
         group = TrendName, 
         color = TrendName)) + 
    geom_line() + 
    labs(x=" ",y=" ") + 
    labs(title = "New plot title") + 
    theme(plot.title = element_text(family = "Trebuchet MS", color="blue", 
         size=18, 
           margin = margin(10, 0, 10, 0)), 
    legend.position = "bottom", 
    legend.title = element_blank(), 
    axis.text.x = element_text(angle = 45, hjust = 1) 
) 

print(ggplotly(p)) 

Antwort

2

ich keine Lösung für den Titel Problem gefunden habe. Sehen Sie, ob Ihnen das bezüglich der Legende hilft.

p <- ggplot(combined_data, aes(Month_Names, y = Actual_volume, 
          group = TrendName, 
          color = TrendName)) + 
    geom_line() + 
    labs(x=" ",y=" ") + 
    labs(title = "New plot title") + 
    theme(plot.title = element_text(family = "Trebuchet MS", color="blue", 
           size=18, 
           margin = margin(10, 0, 10, 0)), 
    legend.position = "bottom", 
    legend.title = element_blank(), 
    #axis.text.x = element_text(angle = 45, hjust = 1) 
    axis.text.x = element_blank(), 
    axis.ticks.x = element_blank() 
) 

ggplotly(p) %>% 
    layout(title = "New plot title", 
    #xaxis = list(showticklabels = FALSE), 
    legend = list(orientation = "h", 
        y = 0, x = 0)) 
+0

Vielen Dank Rafael Cunha für Ihre Zeit in das zu schauen. Aber wenn ich deinen Code starte, habe ich einen Fehler bekommen, der besagt: "Fehler in Längen (x $ Annotationen): 'x' muss eine Liste sein." Vermisse ich etwas? – aotearoa

+0

Ich habe keine Ahnung von diesem Fehler. Versuche, deine Umgebung zu löschen und führe den ersten Teil deines Codes aus, bis du filterest (Month_Names> = Start, Month_Names <= End) und führe dann den Teil aus, den ich gepostet habe –

+0

Ich löschte meine Umgebung mehrmals und führte sie wie du aus vorgeschlagen und ich bekomme immer noch diesen Fehler. Hast du versucht, es an deinem Ende zu laufen? Ich betreibe dies auf R Studio 1.0.136. Danke – aotearoa

Verwandte Themen