我正在尋找一些R中類似的技術來在Matlab中命令hold all
。
在Matlab中我產生了一些數據:在R中的當前barplot上繪製圖形
x = normrnd(0,1,1000,1);
[a,b]=hist(x,20);
L=b(2)-b(1);
area=sum(L*a);
frequency=a/area;
bar(b,frequency,1);
hold all;
range=b(1):0.1:b(20);
f1=normpdf(range,0,1);
f2=normpdf(range,2,2);
plot1=plot(range,f1,'r');
plot2=plot(range,f2,'m');
hold off;
我想創建類似的東西在R.我已經試過這樣:
x <- rnorm(1000)
h <- hist(x, breaks = 20)
a <- h$counts
b <- h$mids
L <- b[2] - b[1]
area <- sum(L*a)
frequency = a/area
range <- seq(b[1],b[20], by = 0.1)
f1 <- dnorm(range,0,1)
f2 <- dnorm(range,2,2)
barplot(frequency, names.arg = c(b))
而且我在這裏停下,因爲我不知道如何添加另一個圖表到當前的情節。我試圖使用ggplot2,但我沒有太多的經驗,我沒有用這個庫創建barplot。
如果有辦法用ggplot2做到這一點,我想知道它與解釋,因爲我想了解它。我會很欣賞傳統劇情繫統的解決方案。
P.S.我使用了barplot(frequency, names.arg = c(b))
,因爲我讀了here,R的Matlab函數沒有等價的功能。
謝謝你,那非常無禮!我試圖翻譯我在大學時在實驗室中編寫的代碼,但很高興知道它可能會以更簡單的方式完成。 – 2014-11-04 22:42:02