在 ggplot2 中用离散的 x 轴制作线图
Making line plot with discrete x-axis in ggplot2
我正在构建一个带有小平面网格的 ggplot2 图。在我的 Y 轴上是百分比,我的 X 轴是浓度(以数字表示)。每个方面有 3 组(0、24 和 48 小时)
ggplot(data=MasterTable, aes(x=Concentration, y=Percentage, group=Time)) +
geom_point() +
geom_line() +
facet_grid(Chemicals ~ Treatments)
这将生成一个连续的 x 轴。由于值分布不均匀,我更喜欢离散轴来更好地可视化我的数据。我跟随 following tutorial 没有运气。第一个数字正是我想要做的。
我也试过格式化坐标轴:
scale_x_discrete(labels("0", "0.1", "2", "50"))
并格式化该行:
geom_line(aes(Time))
和以下 this tutorial.
我认为这个问题是x轴上的值是整数而不是字符串。这使得默认轴连续。我该如何改变这个?我确信解决方案很简单,我就是想不通。
提前致谢!
他们page对此进行了以下修改df2$dose<-as.factor(df2$dose)
。您可以尝试将您的 x-axis
修改为 df2$Concentration<-as.factor(df2$Concentration)
或者像这样:
ggplot(data=MasterTable, aes(x=factor(Concentration), y=Percentage, group=Time)) +
geom_point() +
geom_line() +
facet_grid(Chemicals ~ Treatments)
我正在构建一个带有小平面网格的 ggplot2 图。在我的 Y 轴上是百分比,我的 X 轴是浓度(以数字表示)。每个方面有 3 组(0、24 和 48 小时)
ggplot(data=MasterTable, aes(x=Concentration, y=Percentage, group=Time)) +
geom_point() +
geom_line() +
facet_grid(Chemicals ~ Treatments)
这将生成一个连续的 x 轴。由于值分布不均匀,我更喜欢离散轴来更好地可视化我的数据。我跟随 following tutorial 没有运气。第一个数字正是我想要做的。
我也试过格式化坐标轴:
scale_x_discrete(labels("0", "0.1", "2", "50"))
并格式化该行:
geom_line(aes(Time))
和以下 this tutorial.
我认为这个问题是x轴上的值是整数而不是字符串。这使得默认轴连续。我该如何改变这个?我确信解决方案很简单,我就是想不通。
提前致谢!
他们page对此进行了以下修改df2$dose<-as.factor(df2$dose)
。您可以尝试将您的 x-axis
修改为 df2$Concentration<-as.factor(df2$Concentration)
或者像这样:
ggplot(data=MasterTable, aes(x=factor(Concentration), y=Percentage, group=Time)) +
geom_point() +
geom_line() +
facet_grid(Chemicals ~ Treatments)