Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/291.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 ggplot2-是否可以根据计算的y值对x进行重新排序(统计汇总)?_R_Ggplot2 - Fatal编程技术网

R ggplot2-是否可以根据计算的y值对x进行重新排序(统计汇总)?

R ggplot2-是否可以根据计算的y值对x进行重新排序(统计汇总)?,r,ggplot2,R,Ggplot2,是否可以通过stat_summary使用计算的y对x值重新排序? 我认为这应该是可行的: stat_summary( aes( x = reorder( XVarName , ..y.. ) ) ) 但我得到了以下错误: 错误:stat_summary需要以下缺失的美学:x我看过你的许多帖子,我认为这可能对你有所帮助。生成绘图时,始终将其保存到唯一变量 创建绘图时,首先不考虑排序,直到您对创建绘图感到满意为止。然后,深入研究ggplot对象的结构,以便更好地理解其中的内容。然后,找出你应该分类

是否可以通过stat_summary使用计算的y对x值重新排序? 我认为这应该是可行的:

stat_summary( aes( x = reorder( XVarName , ..y.. ) ) )
但我得到了以下错误:
错误:stat_summary需要以下缺失的美学:x

我看过你的许多帖子,我认为这可能对你有所帮助。生成绘图时,始终将其保存到唯一变量

创建绘图时,首先不考虑排序,直到您对创建绘图感到满意为止。然后,深入研究ggplot对象的结构,以便更好地理解其中的内容。然后,找出你应该分类的内容

plot1 <- ggplot() + ...
通过创建ggplot对象或变量,可以查看绘图的结构。顺便说一句,它可以回答你们到目前为止遇到的许多问题

str(plot1)
将绘图保存为变量/对象后,对其重新排序仍然相当简单,尽管名称稍长:

plot$data$variable_tobe_recoded <- factor(...)

不,因为统计汇总并没有得到一个x值作为输入。一般来说,我最好读一读:当数据变得如此复杂时,在ggplot之外转换数据更有效。@hadley-你能进一步解释吗?我设置了x=,为什么不是输入?@hadley-另外,我发现统计生成的数据和层生成的数据的概念,以及哪些数据可以跨层引用,哪些数据不可以跨层引用,即group=1,令人困惑。总的来说,我认为这是一个很好的机会来提供一些例子,当数据流经一个构建的绘图时,可以清楚地说明数据。我有你的书,但仍然在这里挣扎。问题是你试图同时设置stat_summary的输入和输出,这是你做不到的。很棒的建议!我没有想到使用strplot,我打电话给summaryplot,但这并没有给我太多信息。当我第一次开始使用ggplot时,我也遇到了类似的问题。我没有在这里补充,我应该补充的是,在将数据输入ggplot之前,应该对数据进行汇总。Hadley还创建了另外两个包,即Reforme和plyr,使这些简单甚至复杂的操作像pie一样简单。如果你不熟悉这两个软件包,那应该是未来的目标。熔化,铸造,重塑,ddply@BrandonBertelsen请给出一个通过plot$data$variable\u tobe\u recoded对绘图进行排序的示例,这不是太过分了吗?最基本的是,这里有一些类似于plot$data$variable\u tobe\u recoded的东西
plot$data$variable_tobe_recoded <- factor(...)