我创建了以下热图.如果您注意到群组的图例位于右侧并且垂直放置.
如何将图例移动到底部以便为X轴变量月M0到M55提供更多空间...另外,您会注意到X轴元素重叠因此不清楚.
图表输出:
cohort.clients<-df1 cohort.clients$cohort<-as.character(cohort.clients$cohort) #we need to melt data cohort.chart.cl <- melt(cohort.clients, id.vars = 'cohort') colnames(cohort.chart.cl) <- c('cohort', 'month', 'clients') #define palette reds <- colorRampPalette(c('light green',"dark green","yellow")) #plot data p <- ggplot(cohort.chart.cl, aes(x=month, y=clients, group=cohort)) p + geom_area(aes(fill = cohort)) + scale_fill_manual(values = reds(nrow(cohort.clients))) + ggtitle('Customer Cohort')
Nancy.. 6
尝试类似的东西:
ggplot(cohort.chart.cl, aes(x=month, y=clients, group=cohort)) geom_area(aes(fill = cohort)) + scale_fill_manual(values = reds(nrow(cohort.clients))) + ggtitle('Customer Cohort') + theme(axis.text.x = element_text(angle = 45, hjust = 1), legend.direction = "horizontal", legend.position = "bottom"))
值得注意的是,您的调色板基本上是相同的颜色.如果你制作cohort$month
了一个因子,那么ggplot默认会自动为你提供一个信息更丰富的调色板.话虽如此,有超过50个类别,你已经远远超过了可区分颜色的范围,并且可能还会考虑将这几个月分类(进入年度季度?)并回到像现在这样的频谱.
尝试类似的东西:
ggplot(cohort.chart.cl, aes(x=month, y=clients, group=cohort)) geom_area(aes(fill = cohort)) + scale_fill_manual(values = reds(nrow(cohort.clients))) + ggtitle('Customer Cohort') + theme(axis.text.x = element_text(angle = 45, hjust = 1), legend.direction = "horizontal", legend.position = "bottom"))
值得注意的是,您的调色板基本上是相同的颜色.如果你制作cohort$month
了一个因子,那么ggplot默认会自动为你提供一个信息更丰富的调色板.话虽如此,有超过50个类别,你已经远远超过了可区分颜色的范围,并且可能还会考虑将这几个月分类(进入年度季度?)并回到像现在这样的频谱.