0
我想用ggplot2繪製我的數據。我的數據結構是這樣的:至少有一個圖層必須包含用於構圖的所有變量
str(res)
'data.frame': 1161 obs. of 4 variables:
$ gesamt : num 66.6 32.9 52.5 23.9 17.7 ...
$ ITEMGROUPID : chr "1011113" "1011113" "1011113" "1011113" ...
$ Salesname : Factor w/ 2 levels "Hornbach Baumarkt CZ spol. s r.o.",..: 2 2 2 2 2 2 2 2 2 2 ...
$ deliverydate: POSIXct, format: "2014-01-07" "2014-01-31" "2014-02-10" "2014-03-06" ...
我想使用此代碼facett我的數據:
ggplot(data = res, aes(x = res$deliverydate, y = res$gesamt, colour = res$Salesname)) +
geom_point() +
facet_wrap(~res$ITEMGROUPID)
,但我得到這個錯誤:
Error in layout_base(data, vars, drop = drop) :
At least one layer must contain all variables used for facetting
我應該怎麼做解決這個問題?
一個可再現的例子:
> dput(head(res))
structure(list(gesamt = c(66.6, 32.86, 52.54, 23.89, 17.74, 45.05
), ITEMGROUPID = c("1011113", "1011113", "1011113", "1011113",
"1011113", "1011113"), Salesname = structure(c(2L, 2L, 2L, 2L,
2L, 2L), .Label = c("Hornbach Baumarkt CZ spol. s r.o.", "Possling GmbH & Co. KG"
), class = "factor"), deliverydate = structure(c(1389049200,
1391122800, 1391986800, 1394060400, 1394751600, 1395874800), class = c("POSIXct",
"POSIXt"), tzone = "")), .Names = c("gesamt", "ITEMGROUPID",
"Salesname", "deliverydate"), row.names = c(NA, 6L), class = "data.frame")
我不能跟的r 3.3.2版本(2016年10月31日)'和'GGPLOT2 2.2.0'重現你的錯誤。你在什麼版本上? –
R版本3.3.2(2016-10-31)和ggplot v2.1.0。我使用Microsoft R客戶端 – Kaja
您的示例數據僅包含一個ID,因此無法檢查facet_warp失敗的位置。順便說一句:你不必在facet_wrap中添加res [facet_wrap(〜ITEMGROUPID)' – timfaber