2013-07-17 2 views
2

Итак, у меня есть штрих-код, в котором ось y - это журнал (частоты). Из просто взгляда на это, кажется, что бары уменьшаются экспоненциально, но я хотел бы знать это точно. То, что я хочу сделать, это также график экспоненты на этом же графе. Таким образом, если мои бары падают ниже экспоненты, я бы знал, что мои бары уменьшаются экспоненциально или быстрее экспоненциального, и если бары лежат сверху экспоненты, я бы знал, что они не уменьшаются экспоненциально. Как создать график экспоненты на гистограмме?Как построить экспоненциальную функцию на barplot R?

Вот мой график, если это помогает:

enter image description here

+1

Вы можете найти две экспоненциальные кривые: одну сверху и одну ниже ваших значений. Таким образом, ваша предпосылка ошибочна. –

+0

Я думаю, это зависит от команды, которую вы использовали для создания этого барплота. Вы использовали пакет ggplot2? – vinnief

+0

@vinnief Почти наверняка нет. – joran

ответ

4

Если вы пытаетесь, чтобы соответствовать плотности экспоненциальной функции, вы должны, вероятно, плотность участка гистограммы (не частота). См. this question о том, как строить графики в R.

Вот как я это сделаю.

x.gen <- rexp(1000, rate = 3) 
hist(x.gen, prob = TRUE) 

library(MASS) 
x.est <- fitdistr(x.gen, "exponential")$estimate 

curve(dexp(x, rate = x.est), add = TRUE, col = "red", lwd = 2) 

enter image description here

2

Один из способов визуального осмотра, если два распределения то же самое с квантиль-квантильной участка, или Q-Q, участок для краткости. Обычно это делается при проверке того, соответствует ли распределение стандартным нормам.

Основная идея заключается в построении ваших данных, в сравнении с некоторыми теоретическими квантилями, и если это соответствует этому распределению, вы увидите прямую линию. Например:

x <- qnorm(seq(0,1,l=1002)) # Theoretical normal quantiles 
x <- x[-c(1, length(x))] # Drop ends because they are -Inf and Inf 
y <- rnorm(1000) # Actual data. 1000 points drawn from a normal distribution 
l.1 <- lm(sort(y)~sort(x)) 
qqplot(x, y, xlab="Theoretical Quantiles", ylab="Actual Quantiles") 
abline(coef(l.1)[1], coef(l.1)[2]) 

Q-Q Plot for normal distribution

При идеальных условиях вы должны увидеть прямую линию при построении теоретических квантилей против ваших данных. Таким образом, вы можете сделать то же самое, что и ваши данные, против экспоненциальной функции, о которой вы думаете.

 Смежные вопросы

  • Нет связанных вопросов^_^