#Kurva Distribusi Normal
x <- seq(-4, 4, length.out = 1000)
y <- dnorm(x, mean = 0, sd = 1)
plot(x, y, type = "l",
main = "Kurva Distribusi Normal",
xlab = "Nilai",
ylab = "Kepadatan",
lwd = 2)

x <- seq(-4, 4, length.out = 1000)
y <- dnorm(x, mean = 0, sd = 1)
plot(x, y, type = "n",
main = "Kurva Distribusi Normal",
xlab = "Nilai (z-score)",
ylab = "Kepadatan",
ylim = c(0, 0.45))
polygon(c(x, rev(x)), c(y, rep(0, length(y))),
col = "lightblue", border = NA)
lines(x, y, lwd = 3)
abline(v = c(-3, -2, -1, 0, 1, 2, 3),
lty = 2, col = "gray50")
abline(v = 0, lwd = 2)
text(0, 0.43, "μ = 0", pos = 3)
text(-1, 0.08, "-1σ", pos = 2)
text(1, 0.08, "+1σ", pos = 4)
text(-2, 0.04, "-2σ", pos = 2)
text(2, 0.04, "+2σ", pos = 4)

#Kurva distribusi normal dengan μ dan varians tertentu
mu <- 10
var <- 2
sd <- sqrt(var)
x <- seq(mu - 4*sd, mu + 4*sd, length.out = 1000)
y <- dnorm(x, mean = mu, sd = sd)
plot(x, y, type = "n",
main = "Kurva Distribusi Normal (μ = 10, σ² = 2)",
xlab = "Nilai X",
ylab = "Kepadatan",
ylim = c(0, max(y) * 1.15))
polygon(c(x, rev(x)), c(y, rep(0, length(y))),
col = "lightblue", border = NA)
lines(x, y, lwd = 3)
abline(v = mu, lwd = 2, lty = 2)
abline(v = c(mu-sd, mu+sd, mu-2*sd, mu+2*sd,
mu-3*sd, mu+3*sd),
lty = 3, col = "gray50")
text(mu, max(y), "μ = 10", pos = 3)

#Perbandingan kurva normal dengan varians berbeda
x <- seq(0, 20, length.out = 1000)
y1 <- dnorm(x, mean = 10, sd = sqrt(2))
y2 <- dnorm(x, mean = 10, sd = sqrt(4))
y3 <- dnorm(x, mean = 10, sd = sqrt(6))
plot(x, y1, type = "l", lwd = 3,
main = "Perbandingan Kurva Distribusi Normal",
xlab = "Nilai X", ylab = "Kepadatan",
ylim = c(0, max(y1, y2, y3) * 1.1))
lines(x, y2, lwd = 3, lty = 2)
lines(x, y3, lwd = 3, lty = 3)
abline(v = 10, lty = 2)
legend("topright",
legend = c("μ = 10, σ² = 2",
"μ = 10, σ² = 4",
"μ = 10, σ² = 6"),
lty = c(1, 2, 3), lwd = 3)

#Kurva distribusi normal dengan mean dan varians berbeda
x <- seq(0, 20, length.out = 1000)
y1 <- dnorm(x, mean = 10, sd = sqrt(2))
y2 <- dnorm(x, mean = 11, sd = sqrt(2))
y3 <- dnorm(x, mean = 10, sd = sqrt(4))
y4 <- dnorm(x, mean = 9, sd = sqrt(3))
y5 <- dnorm(x, mean = 12, sd = sqrt(5))
plot(x, y1, type = "l", lwd = 3,
main = "Perbandingan Kurva Distribusi Normal",
xlab = "Nilai X",
ylab = "Kepadatan",
ylim = c(0, max(y1, y2, y3, y4, y5) * 1.1))
lines(x, y2, lwd = 3, lty = 2)
lines(x, y3, lwd = 3, lty = 3)
lines(x, y4, lwd = 3, lty = 4)
lines(x, y5, lwd = 3, lty = 5)
abline(v = c(9, 10, 11, 12), lty = 3, col = "gray")
legend("topright",
legend = c("μ=10, σ²=2",
"μ=11, σ²=2",
"μ=10, σ²=4",
"μ=9, σ²=3",
"μ=12, σ²=5"),
lty = 1:5,
lwd = 3)

# Kurva distribusi normal bertumpuk banyak
x <- seq(0, 20, length.out = 1000)
y1 <- dnorm(x, mean = 10, sd = sqrt(2))
y2 <- dnorm(x, mean = 11, sd = sqrt(2))
y3 <- dnorm(x, mean = 10, sd = sqrt(4))
y4 <- dnorm(x, mean = 9, sd = sqrt(3))
y5 <- dnorm(x, mean = 12, sd = sqrt(5))
plot(x, y1, type = "l", lwd = 3, col = "blue",
main = "Perbandingan Kurva Distribusi Normal",
xlab = "Nilai X",
ylab = "Kepadatan",
ylim = c(0, max(y1, y2, y3, y4, y5) * 1.1))
lines(x, y2, lwd = 3, lty = 2, col = "red")
lines(x, y3, lwd = 3, lty = 3, col = "darkgreen")
lines(x, y4, lwd = 3, lty = 4, col = "purple")
lines(x, y5, lwd = 3, lty = 5, col = "orange")
abline(v = c(9, 10, 11, 12), lty = 3, col = "gray")
legend("topright",
legend = c("μ=10, σ²=2",
"μ=11, σ²=2",
"μ=10, σ²=4",
"μ=9, σ²=3",
"μ=12, σ²=5"),
lty = 1:5,
lwd = 3,
col = c("blue", "red", "darkgreen", "purple", "orange"))

#Kurva distribusi normal berdasarkan 3 kolom data
data <- read.table(file.choose(), header = TRUE)
# Mengambil 3 kolom
x1 <- data[[1]]
x2 <- data[[2]]
x3 <- data[[3]]
# Mean dan simpangan baku
mu1 <- mean(x1)
sd1 <- sd(x1)
mu2 <- mean(x2)
sd2 <- sd(x2)
mu3 <- mean(x3)
sd3 <- sd(x3)
# Rentang nilai
x <- seq(min(c(x1, x2, x3)),
max(c(x1, x2, x3)),
length.out = 1000)
# Kurva normal
y1 <- dnorm(x, mu1, sd1)
y2 <- dnorm(x, mu2, sd2)
y3 <- dnorm(x, mu3, sd3)
# Grafik
plot(x, y1,
type = "l",
lwd = 3,
col = "blue",
main = "Perbandingan Kurva Distribusi Normal",
xlab = "Nilai X",
ylab = "Kepadatan",
ylim = c(0, max(y1, y2, y3) * 1.1))
lines(x, y2, lwd = 3, lty = 2, col = "red")
lines(x, y3, lwd = 3, lty = 3, col = "darkgreen")
legend("topright",
legend = names(data),
lty = 1:3,
lwd = 3,
col = c("blue", "red", "darkgreen"))

#Data parameter distribusi
data <- read.table(file.choose(), header = TRUE, sep = "\t")
x <- seq(0.001, 20, length.out = 2000)
y1 <- dnorm(x, mean = data[1,2], sd = data[1,3])
y2 <- dnorm(x, mean = data[2,2], sd = data[2,3])
y3 <- dnorm(x, mean = data[3,2], sd = data[3,3])
y4 <- dnorm(x, mean = data[4,2], sd = data[4,3])
y5 <- dnorm(x, mean = data[5,2], sd = data[5,3])
plot(x, y1, type = "l", lwd = 3, col = "blue",
main = "Perbandingan Kurva Distribusi Normal",
xlab = "Nilai X",
ylab = "Kepadatan",
ylim = c(0, max(y1, y2, y3, y4, y5) * 1.1))
lines(x, y2, lwd = 3, lty = 2, col = "red")
lines(x, y3, lwd = 3, lty = 3, col = "darkgreen")
lines(x, y4, lwd = 3, lty = 4, col = "purple")
lines(x, y5, lwd = 3, lty = 5, col = "orange")
abline(v = c(0, 2, 5, 10, 1.5),
lty = 3, col = "gray")
legend("topright",
legend = c("μ=0, σ=1",
"μ=2, σ=1",
"μ=5, σ=5",
"μ=10, σ=3",
"μ=1.5, σ=0.5"),
lty = 1:5,
lwd = 3,
col = c("blue", "red", "darkgreen", "purple", "orange"))

#Kurva 11 distribusi probabilitas
data <- read.table(file.choose(),
header = TRUE,
sep = "\t")
# Rentang nilai X
x <- seq(-5, 20, length.out = 2000)
# Parameter dari data
mu <- data[[2]]
sigma <- data[[3]]
# Distribusi Normal
y1 <- dnorm(x,
mean = mu[1],
sd = sigma[1])
# Distribusi t
y2 <- dt(x,
df = mu[2])
# Distribusi F
y3 <- df(x,
df1 = mu[3],
df2 = sigma[3])
# Distribusi Chi-Square
y4 <- dchisq(x,
df = mu[4])
# Distribusi Gamma
y5 <- dgamma(x,
shape = mu[5],
rate = sigma[5])
# Distribusi Weibull
y6 <- dweibull(x,
shape = mu[3],
scale = sigma[4])
# Distribusi Eksponensial
y7 <- dexp(x,
rate = sigma[5])
# Distribusi Pareto
y8 <- ifelse(x >= sigma[3],
mu[3] * sigma[3]^mu[3] /
x^(mu[3] + 1),
0)
# Distribusi Uniform
y9 <- dunif(x,
min = mu[1],
max = sigma[1])
# Distribusi Beta
y10 <- ifelse(x >= 0 & x <= 1,
dbeta(x,
shape1 = mu[2],
shape2 = sigma[2]),
0)
# Distribusi Inverse-Gaussian
m <- mu[4]
lambda <- sigma[4]
y11 <- ifelse(x > 0,
sqrt(lambda / (2 * pi * x^3)) *
exp(-lambda * (x - m)^2 /
(2 * m^2 * x)),
0)
## Warning in sqrt(lambda/(2 * pi * x^3)): NaNs produced
# Menentukan batas grafik
ymax <- max(c(y1, y2, y3, y4, y5,
y6, y7, y8, y9, y10, y11),
na.rm = TRUE)
# Grafik utama
plot(x, y1,
type = "l",
lwd = 3,
col = "blue",
main = "Perbandingan Distribusi Probabilitas",
xlab = "Nilai X",
ylab = "Kepadatan",
ylim = c(0, ymax * 1.1))
# Menambahkan kurva
lines(x, y2, lwd = 3, lty = 2, col = "red")
lines(x, y3, lwd = 3, lty = 3, col = "darkgreen")
lines(x, y4, lwd = 3, lty = 4, col = "purple")
lines(x, y5, lwd = 3, lty = 5, col = "orange")
lines(x, y6, lwd = 3, lty = 6, col = "brown")
lines(x, y7, lwd = 3, lty = 1, col = "cyan4")
lines(x, y8, lwd = 3, lty = 2, col = "deeppink")
lines(x, y9, lwd = 3, lty = 3, col = "black")
lines(x, y10, lwd = 3, lty = 4, col = "goldenrod")
lines(x, y11, lwd = 3, lty = 5, col = "darkblue")
# Legenda
legend("topright",
legend = c("Normal",
"t",
"F",
"Chi-Square",
"Gamma",
"Weibull",
"Eksponensial",
"Pareto",
"Uniform",
"Beta",
"Inverse-Gaussian"),
col = c("blue", "red", "darkgreen", "purple",
"orange", "brown", "cyan4", "deeppink",
"black", "goldenrod", "darkblue"),
lty = c(1,2,3,4,5,6,1,2,3,4,5),
lwd = 3,
cex = 0.7)
