我正在绘制一些数据,并希望在我的绘图的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
但我的图表看起来像:
如果没有指定labels
或li
,则没有任何刻度线。为什么我的蜱虫没有出现?
答案 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'))
使用后,您可能希望根据您的要求更改轴标签。
由于labels
已经离散,因此不需要scale_x_discrete
使用breaks
。
ggplot(aes(y = percentage, x = labels, color = publication), data = df)+
geom_point(size = 3)
如果您希望x轴标签与数据框中的内容不同(即,以1
而不是0
开头),您可以使用小调整来获得:
ggplot(aes(y = percentage, x = labels+1, color = publication), data = df)+
geom_point(size = 3)