Rdates <- c("2007-01-31","2007-02-28","2007-03-30","2007-04-30","2007-05-31","2007-06-29","2007-07-31","2007-08-31","2007-09-28","2007-10-31")
Rdates <- as.Date(Rdates)
Cnames <- c("Column 1 Really Long","Column 2 Really Long","Column 3 Really Long","Column 4 Really Long","Column 5 Really Long","Column 6 Really Long","Column 7 Really Long","Column 8 Really Long","Column 9 Really Long","Column 10 Really Long")
MAINDF <- data.frame(replicate(10,runif(10,-0.03,0.03)))
rownames(MAINDF) <- Rdates
colnames(MAINDF) <- Cnames
CUSTOMpalette <- c("#1a2ffa", "#0d177d", "#1a9ffa", "#fa751a", "#4b8e12", "#6fd21b", "#fae51a", "#c3b104", "#f5df05", "#dcc805")
MAINDF[,"dates"] <- Rdates
MAINDF <- melt(MAINDF,id.vars="dates")
gg <- ggplot(MAINDF, aes(x = dates, y = value, fill = variable))
gg <- gg + geom_bar(stat = "identity")
gg <- gg + scale_x_date(breaks = "3 months", labels=date_format("%b%y"),limits=c(min(as.Date(MAINDF$dates)),max(as.Date(MAINDF$dates))))
gg <- gg + theme(
axis.text.x= element_text(color="black",angle=45, size=10, vjust=0.5),
axis.text.y= element_text(color="black", size=12, vjust=0.5),
axis.title.y = element_text(color="black",size=12, vjust=0.5),
plot.title = element_text(color="black",face="bold",size=14, hjust=0.5,vjust=1),
panel.background = element_blank(),
panel.border = element_rect(linetype = "solid", colour = "black",fill=NA),
legend.position="bottom",
legend.title = element_blank(),
legend.key = element_rect(fill="white"), legend.background = element_rect(fill=NA)
)
gg <- gg + xlab("") + ylab("Monthly Returns")
gg <- gg + ggtitle("Contribution by Strategy")
gg <- gg + scale_y_continuous(labels = percent_format())
gg <- gg + scale_fill_manual(values=CUSTOMpalette)
gg
Attualmente sono disponibili le impostazioni del grafico a barre in pila ggplot2. Tutto funziona correttamente ora tranne che ho un problema con la legenda. L'ho messo sul fondo ma ci sono 10 elementi quindi alcuni sono tagliati (non si adattano). .? Ho provato guides(fill=guide_legend(nrow=2))
ma questo mette le etichette in un ordine diverso (voglio ottenere il primo 5 attraverso poi l'ultimo 5 sotto Eventuali suggerimentiLegenda in basso, due righe racchiuse in ggplot2 in r
si può fare il vostro esempio riproducibile, per favore? – joran
si prega di leggere le informazioni su come produrre un [esempio riproducibile minimo] (http://stackoverflow.com/questions/5963269/how-to-make- a-great-r-reproducible-example/5963610 # 5963610). Ciò renderà molto più semplice l'aiuto degli altri. – Jaap
Will, pensò che potesse essere solo una semplice domanda e mi mancava qualcosa. Ill lavoro su un esempio riproducibile. –