在R中创建ggplot()时更改子传奇中的文本

时间:2019-05-06 16:59:50

标签: r ggplot2

我对ggplot有疑问。下面是我的脚本:

gg <- ggplot(aes(x=category, y=mean, fill=split, group=split), data=data)
gg <- gg + geom_bar(stat='identity', position = position_dodge(), width=.5)
gg <- gg + geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), position = position_dodge(width=.5), width=.2)
gg <- gg +  scale_x_discrete(labels=c("Accuracy", "Precision", "Recall"))
gg <- gg + xlab("Precision metrics") + ylab("Mean") + labs (fill="Classifier",c("k-NN","Decision trees"))
gg + theme_classic() 

然后 here是产生的情节。我的问题很简单,因为我想在1下的图例中将k-NN的{​​{1}}更改为2的{​​{1}}。

我尝试了以下操作,但收到错误消息:

Decision trees

希望我能得到一些帮助!

1 个答案:

答案 0 :(得分:0)

您没有发布供我们使用的原始数据,因此这里有一个快速的模型:

df <-
  tibble(
    metric = c("Accuracy", "Accuracy", "Precision", "Precision"),
    classifier = factor(c(1, 2, 1, 2)),
    mean = c(1, 0.8, 1, 0.7)
  )

df %>% 
  ggplot(aes(x = metric, y = mean, fill = classifier)) +
  geom_col(position = "dodge") +
  scale_fill_discrete(labels = c("label1", "label2"))

scale_fill_discrete通话可能会为您带来想要的东西。