Как изменить положение двух переменных y в ggplot? - PullRequest
0 голосов
/ 01 июля 2019
output$plot1 <- renderPlot({
    df <- df_form()
    df <- data.frame(df,options = list(scrollX = TRUE)) 
    df$DemandCharge <- as.numeric(gsub('[$,]','', df$DemandCharge))
    df$NewDemandCharge <- as.numeric(gsub('[$,]','', df$NewDemandCharge))
    df$SavedDemandCharge<- df$DemandCharge-df$NewDemandCharge
    df$month <- format(as.Date(df$Startdate), "%Y-%m")
    mydata<-melt(df,id= c("month","Startdate","Enddate","DemandCharge", "Season"))
    ggplot(data = mydata, aes(x = month, y = value, fill = variable)) + 
        geom_bar(stat = "identity")
})

enter image description here

Я так запутался, как изменить положение двух y в ggplot. Как «NewDemandCharge» и «SavedDemandCharge» могут менять свою позицию на графике?

enter image description here

1 Ответ

0 голосов
/ 02 июля 2019

Вы можете вручную изменить порядок уровней с помощью fct_relevel() из пакета forcats.Попробуйте:

library(forcats)
mydata$variable <- fct_relevel(mydata$variable, "SavedDemandCharge")

Это должно поставить "SavedDemandCharge" в первую позицию.Не могу проверить это без воспроизводимого примера.

...