Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 仅更改“geom_箱线图”中某个因子的一个级别的晶须定义` 我试图改变晶须定义,将其扩展到最小和最大值(即,不考虑任何异常值),如In,但仅针对映射到x轴的因子的单一水平。答案中的代码将更改整个绘图的胡须定义_R_Plot_Ggplot2_Boxplot - Fatal编程技术网

R 仅更改“geom_箱线图”中某个因子的一个级别的晶须定义` 我试图改变晶须定义,将其扩展到最小和最大值(即,不考虑任何异常值),如In,但仅针对映射到x轴的因子的单一水平。答案中的代码将更改整个绘图的胡须定义

R 仅更改“geom_箱线图”中某个因子的一个级别的晶须定义` 我试图改变晶须定义,将其扩展到最小和最大值(即,不考虑任何异常值),如In,但仅针对映射到x轴的因子的单一水平。答案中的代码将更改整个绘图的胡须定义,r,plot,ggplot2,boxplot,R,Plot,Ggplot2,Boxplot,如果有的话,正确的方法是什么?扩展问题中链接的示例,您可以执行以下操作: f <- function(x) { r <- quantile(x, probs = c(0.05, 0.25, 0.5, 0.75, 0.95)) names(r) <- c("ymin", "lower", "middle", "upper", "ymax") r } # sample data d <- data.frame(x = gl(2,50), y = rnorm(10

如果有的话,正确的方法是什么?

扩展问题中链接的示例,您可以执行以下操作:

f <- function(x) {
  r <- quantile(x, probs = c(0.05, 0.25, 0.5, 0.75, 0.95))
  names(r) <- c("ymin", "lower", "middle", "upper", "ymax")
  r
}

# sample data
d <- data.frame(x = gl(2,50), y = rnorm(100))

# do it
ggplot(d, aes(x, y)) + 
  stat_summary(data = subset(d, x == 1), fun.data = f, geom = "boxplot") +
  geom_boxplot(data = subset(d, x == 2))

扩展问题中链接的示例,您可以执行以下操作:

f <- function(x) {
  r <- quantile(x, probs = c(0.05, 0.25, 0.5, 0.75, 0.95))
  names(r) <- c("ymin", "lower", "middle", "upper", "ymax")
  r
}

# sample data
d <- data.frame(x = gl(2,50), y = rnorm(100))

# do it
ggplot(d, aes(x, y)) + 
  stat_summary(data = subset(d, x == 1), fun.data = f, geom = "boxplot") +
  geom_boxplot(data = subset(d, x == 2))

一种方法是创建两个数据帧或数据子集。类似于
geom\u箱线图(data=full\u df,…)+stat\u summary(data=single\u factor\u df,…)
。或者先自己创建所需尺寸,然后使用
geom\u箱线图(…,stat='identity')
。对于观众来说,这种方法似乎会令人困惑,如果不是误导的话。@JasonAizkalns,这就是我想到的,但当我尝试时,我得到了
错误:美学必须是长度1或与数据(60):x,y,fill
相同。不确定问题出在哪里。@这就是为什么最好提供样本数据或使问题重现的原因。一种方法是创建两个data.Frame或数据子集。类似于
geom\u箱线图(data=full\u df,…)+stat\u summary(data=single\u factor\u df,…)
。或者先自己创建所需尺寸,然后使用
geom\u箱线图(…,stat='identity')
。对于观众来说,这种方法似乎会令人困惑,如果不是误导的话。@JasonAizkalns,这就是我想到的,但当我尝试时,我得到了
错误:美学必须是长度1或与数据(60):x,y,fill
相同。不确定问题出在哪里。@这就是为什么最好提供样本数据或使您的问题重现的原因。谢谢!我解决了我的问题,现在它运行得很好。但是,现在因子的排序方式与原始数据中的排序方式不同。“有办法解决吗?”威尔不确定?也许可以创建一个可复制的示例,并将其作为新问题发布。谢谢!我解决了我的问题,现在它运行得很好。但是,现在因子的排序方式与原始数据中的排序方式不同。“有办法解决吗?”威尔不确定?也许可以创建一个可复制的示例,并将其作为新问题发布。