gpt4 book ai didi

r - xlim 不适用于离散值 [ggplot2]

转载 作者:行者123 更新时间:2023-12-05 01:04:32 32 4
gpt4 key购买 nike

我正在尝试使用以下内容在 ggplot put 中设置 xlim 和 ylim:

ylim=c(0, 1.5) +
xlim=c(0,100) +

或者
coord_cartesian(xlim = c(0, 100), ylim = (0,1.5)) +

似乎抛出这个错误:
Error in scale_x_discrete(breaks = c(0, 50, 100), labels = c(0,  : 
non-numeric argument to binary operator

这是因为我对 x 使用离散比例吗?我正在为 y 使用数字。

使用
scale_y_continuous(limits = c(0, 1.5)) +

似乎工作,但给出了错误:
Warning message:
Removed 2 rows containing missing values (geom_path).

关于我可以尝试的任何建议?

完整代码:
cfr <- ggplot(sn, aes(x = mmad,y = fr, group=Plan, colour = Plan)) +
geom_line(size=0.5) +
#scale_y_continuous(limits = c(0, 1.5)) +
scale_x_discrete(breaks = c(0,50,100), labels= c(0,50,100)) +
labs(x = "mmad",y = "%")

附言

没有放入轴限制,上面的代码工作没有问题

最佳答案

我不确定,但我猜离散尺度只接受字符作为限制参数,每个字符代表一个因子水平(见 http://docs.ggplot2.org/0.9.3.1/discrete_scale.html)。

df <- data.frame(x=sample(1:3, 10, replace=TRUE), y=sample(20:30, 10, replace=TRUE))
df$x <- as.factor(df$x)
cfr <- ggplot(df, aes(x = x,y = y)) +
geom_line(size=0.5) +
scale_x_discrete(breaks = c(0,50,100), labels= c(0,50,100), limits=c("1", "2", "3")) +
labs(x = "mmad",y = "%")

对我有用...(参见 limits scale_x_discrete 中的参数)。

关于r - xlim 不适用于离散值 [ggplot2],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22992375/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com