Likert包 - 为条形添加轮廓

时间:2016-05-03 12:51:12

标签: r ggplot2

我正在使用Likert包,可以成功生成描绘我的选择数据的情节。我也知道如何手动指定填充颜色。但是,我想在条形图上添加一个轮廓,使它们更加流行。有任何想法吗?

以下是一些示例代码:

p = plot(lk, plot.percents=FALSE, plot.percent.low=FALSE, plot.percent.high=FALSE, plot.percent.neutral=FALSE, group.order=c("MJ", "ASM", "Both", "Both."), legend.position='right') + theme(axis.text.x=element_text(colour="black", size=12)) + theme(axis.text.y=element_text(colour="black", size=12))+ggtitle("B") + theme(plot.title=element_text(hjust=0)) + scale_fill_manual(values=c("gray86", "dark grey"), name="Preference")

1 个答案:

答案 0 :(得分:3)

一种方法是使用update_geom_defaults()(使用likert演示数据,因为您没有提供任何演示数据):

library(likert)
library(viridis)
library(ggplot2)

data(pisaitems)
items29 <- pisaitems[,substr(names(pisaitems), 1,5) == 'ST25Q']
names(items29) <- c("Magazines", "Comic books", "Fiction", 
                    "Non-fiction books", "Newspapers")
l29 <- likert(items29)

update_geom_defaults("bar", list(colour="white", size=0.15))

p <- plot(l29, 
         plot.percents=FALSE,
         plot.percent.low=FALSE, 
         plot.percent.high=FALSE, 
         plot.percent.neutral=FALSE, 
         legend.position='right')
p <- p + ggtitle("B")
p <- p + theme(axis.text.x=element_text(colour="black", size=12))
p <- p + theme(axis.text.y=element_text(colour="black", size=12))
p <- p + theme(plot.title=element_text(hjust=0)) 
p <- p + scale_fill_viridis(discrete=TRUE) 
p

enter image description here