ggplot2 - 在x轴上显示特定值

时间:2018-02-14 11:48:09

标签: r ggplot2

我正在尝试在x轴上显示特定值,同时使用ggplot2绘制线图。在我的表中,我有相互之间相距很远的num值,这就是我想将它们绘制为离散值的原因。

line <- ggplot(lineplot, aes(value,num, colour=attribute))
line + geom_line()

希望我很清楚,我是一个非常初学者, 提前为这个问题道歉

example table:
    num value   attribute
a   0   0.003   main
b   1   0.003   low
c   0   0.003   high
d   0   0.6 main
e   9   0.6 low
f   3   0.6 high
g   2   0.9 main
h   2   0.9 low
I   2   0.9 high

x轴: 我得到了什么:

0.003                                       0.6           0.9

我想:

0.003         0.6         0.9

2 个答案:

答案 0 :(得分:2)

如果您希望将x轴视为离散因子,则必须添加group美学来告诉ggplot2哪些指向与线连接。

df <- read.table(text = "num value   attribute
0   0.003   main
1   0.003   low
0   0.003   high
0   0.6 main
9   0.6 low
3   0.6 high
2   0.9 main
2   0.9 low
2   0.9 high", header = TRUE)

ggplot(df, aes(x = factor(value), y = num, group = attribute, color = attribute)) + 
  geom_line()

enter image description here

答案 1 :(得分:0)

尝试强制x轴为因子而不是数字

line <- ggplot(lineplot, aes(factor(value),num, colour=attribute))
line + geom_line()

这就是你想要的吗?