滴答声没有出现在ggplot中

时间:2017-08-08 11:10:51

标签: r ggplot2

我正在绘制一些数据,并希望在我的绘图的x轴上刻度线。我的数据如下:

ggplot(aes(y = percentage, x = labels, color = publication), data = labelsdf)+
  geom_point(size = 3)+
  scale_x_discrete(breaks = c(0,1,2,3,4,5,6,7,8,9),
                   labels = c('1','2','3','4','5','6','7','8','9','10'))

其中每个名称都有0到9的标签。

我的代码如下:

breaks

但我的图表看起来像:

enter image description here

如果没有指定labelsli,则没有任何刻度线。为什么我的蜱虫没有出现?

1 个答案:

答案 0 :(得分:1)

在使用labels明确提及scale_x_discrete为离散后,您需要使用factor()将它们设为离散,否则值仍为数字。

ggplot(aes(y = percentage, x = factor(labels), color = publication), data = df)+
  geom_point(size = 3)+
  scale_x_discrete(breaks = c(0,1,2,3,4,5,6,7,8,9),
                   labels = c('1','2','3','4','5','6','7','8','9','10'))

enter image description here

使用后,您可能希望根据您的要求更改轴标签。

由于labels已经离散,因此不需要scale_x_discrete使用breaks

ggplot(aes(y = percentage, x = labels, color = publication), data = df)+
  geom_point(size = 3)

enter image description here

如果您希望x轴标签与数据框中的内容不同(即,以1而不是0开头),您可以使用小调整来获得:

ggplot(aes(y = percentage, x = labels+1, color = publication), data = df)+
  geom_point(size = 3)

enter image description here