我想在R中創建一個二維散點圖,第三個維度表示一個反映值的色譜。我一直在爲此工作2周,沒有任何博客提供幫助。這是我的數據集:如何在R中製作二維散點圖,並且第三維表示反射z值的色譜?
x=c(0,0,0,0,264,330,594,726,825,825,2145,2475,3630,5082,8250,10725)
y=c(450,540,2250,630,540,2160,1170,2340,1080,738,540,648,900,900,2340,1152)
z=c(.017778,0,.079365,.037333,0,0,.052991,0,0,.009259,.048148,0,0,0,.004274,.003472)
我已經試過這個代碼...
jet.colors <-colorRampPalette(c("#00007F", "blue", "#007FFF", "cyan","#7FFF7F", "yellow", "#FF7F00", "red", "#7F0000"))
plot(x,y, col=jet.colors(12)[z], ylim=c(0,100), pch=20, cex=2)
legend(8.5,90, col = jet.colors(12)[z], legend=z, pch=15)
...但是,當我這樣做,只是一個空白xy平面沒有點出現。我用ggplot2包取得了一些成功,但它看起來很難看,我想用簡單的plot命令來完成。我已經成功地從scatterplot3d,wireframe和countours製作了三維圖形,但這些都過於複雜和醜陋有人請幫助我知道我錯過了一些簡單的事情,比如我的z值可能是零或小於一。
有幾件事情:首先你的'ylim'是這樣的,你所有的點都不能在選定的區域繪製(你所有的'y'值都超過100)。然後,當你調用'jet.colors(12)[z]','z'是索引但'z'值都在0和0.1之間時,不能用作索引。我在想,你應該在選擇顏色之前先把你的'z'分成幾類。 – plannapus 2012-07-30 13:14:39
關於'ggplot2',你是否知道允許你大量定製你的情節外觀的選項:https://github.com/hadley/ggplot2/wiki/-opts()-List 有還有一些主題:https://github.com/hadley/ggplot2/wiki/Themes – 2012-07-30 13:53:32