Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.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 GGU网格产生错误的结果?_R_Ggplot2_Facet Grid - Fatal编程技术网

R GGU网格产生错误的结果?

R GGU网格产生错误的结果?,r,ggplot2,facet-grid,R,Ggplot2,Facet Grid,我有一个来自不同部门的预约数据集 > dput(head(Data.2016)) structure(list(NUMMER = c(361626L, 411992L, 2752868L, 6592340L, 9017183L, 451010L), DEPARTMENT= structure(c(3L, 3L, 3L, 3L, 3L, 3L), .Label = c("DEA", "DIE", &quo

我有一个来自不同部门的预约数据集

> dput(head(Data.2016))
structure(list(NUMMER = c(361626L, 411992L, 2752868L, 6592340L, 9017183L, 451010L), 
         DEPARTMENT= structure(c(3L, 3L, 3L, 3L, 3L, 3L), .Label = c("DEA", "DIE", 
             "IAL", "IEN", "IGH", "IHM", "ILN", "INE", "INF", "INT"), class = "factor"),        
         TYPE_APPOINTMENT = structure(c(3L, 3L, 3L, 3L, 3L, 2L), .Label = c("BZ", "E", "H", 
             "NK", "TF", "VP", "VW"), class = "factor"), 
         WEEKDAY = structure(c(5L, 6L, 6L, 6L, 6L, 2L), .Label = c("Sun", "Mon", "Tues", 
            "Wed", "Thurs", "Fri", "Sat"), class = c("ordered", "factor")), 
 .Names = c("NUMMER", "DEPARTMENT", "TYPE_APPOINTMENT", "WEEKDAY"), row.names = c(1L, 2L, 
   4L, 5L, 6L, 7L), class = "data.frame")
我希望构建一个图,区分一周中每一天的约会类型和部门。我使用了以下代码来执行此操作:

library(ggplot2)

ggplot(Data.2016,
   aes(x=Data.2016$WEEKDAY, 
       fill=Data.2016$TYPE_APPOINTMENT)) +
  geom_bar() +
  facet_grid(~DEPARTMENT)+
 theme(legend.title=element_blank()) + 
 labs(x = "Days of the week")
这将导致以下绘图:

这就是我所期望的和我所需要的(忽略x轴的丑陋)

然而,在对情节进行了更好的调查之后,我发现结果并不正确。部门骰子不能有任何“E”或“H”,但在上面的情节中,它不知怎的有。事实上,当我选择JustDie时,使用以下代码

ggplot(Data.2016[which(Data.2016$DEPARTMENT == "DIE"),],
   aes(x=Data.2016$WEEKDAY, 
       fill=Data.2016$TYPE_APPOINTMENT)) +
  geom_bar() +
  theme(legend.title=element_blank()) + 
  labs(x = "Days of the week")
结果是,这是正确的


我做错了什么?或者这是其他R用户已知的故障吗?

当您将
数据放入初始
ggplot(
您不需要每次都引用它,您只需使用变量名,因此
WEEKDAY
而不是
数据。例如,2016$WEEKDAY
。也无需发布
dput()
对于您的数据,很难准确判断出哪里出了问题。有关如何提出一个好的r问题的更多提示,请参阅此问题的答案:切勿在
aes
中使用
$
。编写
ggplot(data.2016,aes(x=工作日,fill=键入约会))
。此外,编写
刻面网格(~DEPARTMENT)
。你已经为
数据
参数提供了一些内容,这是有原因的!我已经编辑了它,希望这会有所帮助。感谢提示:这节省了很多时间!哇,没关系。我刚刚从绘图中删除了所有的$,现在它可以工作了!谢谢!