# Data ozone dan temperatur
ozone <- c(2.29, 2.62, 2.84, 2.67, 2, 2.51, 2.22, 2.41, 3.44, 3.30)
temp <- c(74, 62, 65, 59, 61, 69, 66, 68, 67, 72)
# Scatter plot ozone vs temperatur
plot(ozone, temp, main = "Ozone vs Temperature", xlab = "Ozone", ylab = "Temperature")
ozone dan temp adalah dua vektor data
yang merepresentasikan nilai ozon dan suhu.
plot() digunakan untuk membuat scatter plot, yaitu
grafik sebar antara dua variabel numerik.
Grafik ini bertujuan untuk melihat hubungan antara kadar ozon dan temperatur.
# Data acak dari distribusi normal
x <- rnorm(100)
plot(x, main = "Random Normal Data")
# Buka jendela grafik baru (khusus Windows)
#win.graph()
# Konversi menjadi time series dan plot
y <- ts(x)
plot(y, main = "Time Series dari Data Acak")
rnorm(100) menghasilkan 100 data acak dari
distribusi normal.
plot(x) menampilkan grafik data acak
tersebut.
win.graph() membuka jendela grafik baru di Windows
(tidak wajib di RStudio).
ts(x) mengubah data menjadi time series, lalu diplot
untuk melihat pola waktu.
# Data produk
produk1 <- c(6.1,5.8,7,5.8,6,1,6.4,6.1,6,5.9,5.8)
produk2 <- c(5.9,5.7,6.1,5.9,5.8,5.6,5.6,5.9,5.7,5.6)
# Q-Q Plot
qqnorm(produk1, main = "Q-Q Plot Produk 1")
qqnorm(produk2, main = "Q-Q Plot Produk 2")
qqline(produk2, col = 6)
Data produk1 dan produk2 merepresentasikan dua jenis produk.
qqnorm() membuat Q-Q plot untuk mengecek apakah data
berdistribusi normal.
qqline() menambahkan garis referensi
normal.
Jika titik-titik Q-Q plot mengikuti garis, berarti data mendekati distribusi normal.
# Grid nilai
y <- seq(-10, 10, 0.5)
x <- seq(-10, 10, 0.5)
# Matriks z
z <- outer(x^2, y^2, "+")
# 3D plot
persp(x, y, z, main = "3D Plot Default")
persp(x, y, z, theta = 45, phi = 30, col = "cyan", main = "3D Plot with Rotation")
# Plot image dan contour
image(x, y, z, main = "Image Plot")
contour(x, y, z, main = "Contour Plot")
x dan y adalah grid dari -10 hingga
10.
outer(x^2, y^2, "+") menghasilkan matriks z dari
fungsi z = x^2 + y^2
persp() membuat grafik 3D dari fungsi
permukaan.
image() menampilkan peta warna (heatmap).
contour() menampilkan kontur level dari fungsi
permukaan.
# Histogram
hist(x, main = "Histogram Data x")
# Scatter plot
plot(x, main = "Scatterplot Data x")
# Q-Q plot
qqnorm(x, main = "Q-Q Plot Data x")
# QQ plot dengan library car
library(car)
## Loading required package: carData
qqplot(x, x, main = "QQ Plot (car package)")
# Boxplot
boxplot(x, main = "Boxplot Data x")
# Density plot
plot(density(x), main = "Density Plot (Normal)", type = "l")
hist(x) membuat histogram untuk melihat distribusi frekuensi.
plot(x) scatterplot dari data acak.
qqnorm(x) menilai normalitas distribusi data dengan Q-Q plot.
qqplot(x, x) membandingkan dua distribusi (dalam hal ini sama).
boxplot(x) menunjukkan persebaran data dan pencilan (outlier).
plot(density(x)) menampilkan kurva kerapatan data (estimasi distribusi).
f(y)# Definisi fungsi bersusun f(y)
f <- function(y) {
ifelse(y >= -pi & y <= -pi/2, y + pi,
ifelse(y >= -pi/2 & y <= pi/2, pi/2,
ifelse(y >= pi/2 & y <= pi, pi - y, NA)))
}
# Buat grid y dan hitung f(y)
y <- seq(-pi, pi, length.out = 500)
fy <- f(y)
# Plot f(y)
plot(y, fy, type = "l", lwd = 2, col = "blue",
main = "Plot Fungsi f(y)",
xlab = "y", ylab = "f(y)")
grid()
Fungsi f(y) adalah fungsi piecewise (fungsi
bersusun) berdasarkan nilai y.
ifelse() digunakan untuk menentukan nilai fungsi
berdasarkan interval.
Nilai y diambil dari -π hingga π.
Grafik hasil menunjukkan bentuk fungsi bersusun dalam satu plot garis.
exp(x) dan
exp(1/x)# Interval x dari 0.001 sampai 2
x <- seq(0.001, 2, length.out = 500)
# Fungsi
y1 <- exp(x)
y2 <- exp(1 / x)
# Plot exp(x)
plot(x, y1, type = "l", col = "blue", lwd = 2,
xlab = "x", ylab = "y", main = "Plot exp(x) dan exp(1/x) pada [0,2]")
# Tambahkan exp(1/x)
lines(x, y2, col = "red", lwd = 2)
# Legenda
legend("topright", legend = c("exp(x)", "exp(1/x)"),
col = c("blue", "red"), lwd = 2)
grid()
x didefinisikan dari 0.001 ke 2 agar
1/x tidak error.
y1 = exp(x) dan y2 = exp(1/x) adalah
dua fungsi eksponensial yang dibandingkan.
plot() digunakan untuk menggambar fungsi
exp(x).
lines() menambahkan kurva exp(1/x) ke
grafik yang sama.
legend() memberikan keterangan kurva agar lebih
informatif.
Grafik ini membandingkan dua fungsi eksponensial pada interval yang sama.