2012-01-05 21 views
5

我一直在看ggplot2書的第5.10節中的geom_rect示例,並且不理解在aes 函數中NULL的用途。例如,使用mpg數據:geom_rect和NULL

g = ggplot(data=mpg, aes(x=displ, y=hwy)) + geom_point() 

#Produces a plot with a transparent filled region 
g + geom_rect(aes(NULL, NULL), alpha=0.1,xmin=5, xmax=7, ymin=10, 
ymax=45, fill="blue") 

#Solid filled region (v0.9) or nothing in v0.8 
g + geom_rect(alpha=0.1,xmin=5, xmax=7, ymin=10, ymax=45, fill="blue") 

我的理解是空的是復位X &Ÿ映射, 但我不明白爲什麼這應該不會影響透明度。

+0

你的第二個例子根本不會產生矩形。但是'geom_rect'對我來說一直就像伏都教(我能夠可靠地工作的唯一方法就是始終將它傳遞給它自己的數據框)。 – joran 2012-01-05 16:15:59

+0

@joran:我正在使用ggplot v0.9。我不認爲會有區別,對不起。無論如何,第二個命令中的NULL都是什麼? – csgillespie 2012-01-05 16:19:40

+1

我的理解與你的理解是一樣的,即它重新設置了x和y美學。但我也不知道爲什麼會影響阿爾法,對不起。 – joran 2012-01-05 16:29:35

回答

1

我剛剛做哈德利的評論社區維基答案

之所以規範的事項是,多個透明 矩形堆放在彼此的頂部看起來固體 - 因爲你 避風港」 t重置數據,你會在mtcars中獲得每行的一個矩形。 您可能想要使用批註。