Bab 2 Fungsi Grafik
2.1 Grafik Fungsi Matematika
Fungsi adalah transformasi dari input ke output. Fungsi digunakan untuk menyatakan hubungan antar besaran. Dalam mengevaluasi suatu fungsi, user menentukan apa inputnya dan fungsi menerjemahkannya ke dalam output.
Dalam banyak notasi matematika, fungsi dinamai seperti: f, g, y dan input dilambangkan sebagai x. Huruf lain digunakan untuk mewakili parameter. Misalnya, adalah umum untuk menulis persamaan garis dengan cara ini: y+mx=b.
Untuk menerapkan konsep matematika agar dapat diprogram, diperlukan notasi yang memungkinkan untuk mendeskripsikan beberapa input ke suatu fungssi dan yang memungkinkan kita melacak mana yang merupakan input.
Dalam merencanakan suatu fungsi, Anda perlu menentukan beberapa hal:
Apa fungsinya. Ini biasanya diberikan oleh ekspresi, misalnya m * x + b atau A * x ^ 2 atau sin(2 * t)
Apa inputnya. Ingat, tidak ada alasan untuk berasumsi bahwa x selalu menjadi input.
Berapa kisaran input untuk membuat plot berakhir. Anggap ini sebagai batas sumbu horizontal di mana Anda ingin membuat plot.
Nilai parameter apa pun. Ingat, notasi m * x + b ~ x tidak hanya melibatkan input variabel x tetapi juga dua besaran lain, m dan b. Untuk membuat plot fungsi, Anda perlu memilih nilai spesifik untuk m dan b dan memberi tahu komputer nilai tersebut.
Ada tiga fungsi grafik di {mosaicCalc} yang yang dapat digunakan untuk membuat grafik fungsi, dan melapisi plot tersebut dengan grafik fungsi atau data lain, yaitu:
Ketiganya digunakan dengan cara yang hampir sama. Berikut adalah contoh programnya:
library(mosaicCalc)
## Loading required package: mosaicCore
## Loading required package: Deriv
## Loading required package: Ryacas
##
## Attaching package: 'Ryacas'
## The following object is masked from 'package:stats':
##
## integrate
## The following objects are masked from 'package:base':
##
## %*%, diag, diag<-, lower.tri, upper.tri
## Registered S3 method overwritten by 'mosaic':
## method from
## fortify.SpatialPolygonsDataFrame ggplot2
##
## Attaching package: 'mosaicCalc'
## The following object is masked from 'package:stats':
##
## D
slice_plot(- 2 * x - 2 ~ x, domain(x = range(0, 10)))
library(mosaicCalc)
slice_plot( sqrt(t) * cos(7 * t) ~ t, domain(t = range(0, 5) ))
2.2 Membuat Scatterplot Seringkali, model matematika yang akan Anda buat
akan dimotivasi oleh data. Ini berarti Anda harus mempelajari sesuatu
tentang cara mengakses data dalam file komputer, bagaimana data
disimpan, dan bagaimana memvisualisasikan data.
File data yang akan Anda gunakan disimpan sebagai spreadsheet di Internet. Biasanya, spreadsheet akan memiliki banyak variabel; setiap variabel disimpan sebagai satu kolom. Untuk membaca data ke R, Anda perlu mengetahui nama file dan lokasinya. Seringkali, lokasi akan menjadi alamat di Internet.
Di sini, akan dicoba mengambil data “Perumahan Pendapatan.csv”, yang terletak di “http://www.mosaic-web.org/go/datasets/Income-Housing.csv”. File ini memberikan informasi dari survei tentang kondisi perumahan untuk orang-orang dalam kelompok pendapatan yang berbeda di AS. Berikut adalah cara membacanya menjadi R:
Housing = read.csv("http://www.mosaic-web.org/go/datasets/Income-Housing.csv")
Ada dua hal penting yang perlu diperhatikan dari pernyataan di atas. Pertama, fungsi read.csv() mengembalikan nilai yang disimpan dalam objek yang disebut housing. Kedua, nama “http://www.mosaic-web.org/go/datasets/Income-Housing.csv” diapit oleh tanda kutip. Setelah data dibaca, Anda dapat melihat data hanya dengan mengetikkan nama objek (tanpa tanda kutip!) yang menyimpan data. Contohnya:
Housing
## Income IncomePercentile CrimeProblem AbandonedBuildings IncompleteBathroom
## 1 3914 5 39.6 12.6 2.6
## 2 10817 15 32.4 10.0 3.3
## 3 21097 30 26.7 7.1 2.3
## 4 34548 50 23.9 4.1 2.1
## 5 51941 70 21.4 2.3 2.4
## 6 72079 90 19.9 1.2 2.0
## NoCentralHeat ExposedWires AirConditioning TwoBathrooms MotorVehicle
## 1 32.3 5.5 52.3 13.9 57.3
## 2 34.7 5.0 55.4 16.9 82.1
## 3 28.1 2.4 61.7 24.8 91.7
## 4 21.4 2.1 69.8 39.6 97.0
## 5 14.9 1.4 73.9 51.2 98.0
## 6 9.6 1.0 76.7 73.2 99.0
## TwoVehicles ClothesWasher ClothesDryer Dishwasher Telephone
## 1 17.3 57.8 37.5 16.5 68.7
## 2 34.3 61.4 38.0 16.0 79.7
## 3 56.4 78.6 62.0 25.8 90.8
## 4 75.3 84.4 75.2 41.6 96.5
## 5 86.6 92.8 88.9 58.2 98.3
## 6 92.9 97.1 95.6 79.7 99.5
## DoctorVisitsUnder7 DoctorVisits7To18 NoDoctorVisitUnder7 NoDoctorVisit7To18
## 1 3.6 2.6 13.7 31.2
## 2 3.7 2.6 14.9 32.0
## 3 3.6 2.1 13.8 31.4
## 4 4.0 2.3 10.4 27.3
## 5 4.0 2.5 7.7 23.9
## 6 4.7 3.1 5.3 17.5
Semua variabel dalam kumpulan data akan ditampilkan. Dapat juga melihat nama semua variabel dalam format yang lebih ringkas dengan names(). Contoh:
names(Housing)
## [1] "Income" "IncomePercentile" "CrimeProblem"
## [4] "AbandonedBuildings" "IncompleteBathroom" "NoCentralHeat"
## [7] "ExposedWires" "AirConditioning" "TwoBathrooms"
## [10] "MotorVehicle" "TwoVehicles" "ClothesWasher"
## [13] "ClothesDryer" "Dishwasher" "Telephone"
## [16] "DoctorVisitsUnder7" "DoctorVisits7To18" "NoDoctorVisitUnder7"
## [19] "NoDoctorVisit7To18"
Dapat juga mengakses satu variabel dengan cara ketikkan nama seluruh variabel kemudian diikuti dengan data variabel dan dipisahkan oleh tanda $. Contoh:
Housing$AirConditioning
## [1] 52.3 55.4 61.7 69.8 73.9 76.7
Ejaan dan penggunaan huruf kapital juga penting dalam R. Biasanya penyajian data paling informatif adalah grafis. Salah satu bentuk grafik yang paling dikenal adalah scatter-plot. Setiap titik di lokasi koordinat berisi dua variabel. Berikut adalah contok grafik sederhana:
library(mosaicCalc)
gf_point(Telephone ~ Income, data = Housing )
Plot sebagai poin Telephone versus atau sebagai fungsi dari Income. Data
dari housing digunakan sebagai objek.
Kita harus menggunakan fungsi plot untuk membuat layar lain jika ingin memplot fungsi matematika diatas. Untuk menampilkan dua lapisan dalam plot yang sama, hubungkan dengan % > %. Simbol ini biasa disebut pipa.
library(mosaicCalc)
gf_point(Telephone ~ Income, data = Housing ) %>%
slice_plot(80 - Income/2000 ~ Income, color = "purple")
Sebagai catatan, untuk menjalankan fungsi gf_point, kita memerlukan
library(mosaicCalc)
2.3 Grafik Fungsi Dua Variabel Untuk membuat plot dengan fungsi dua variabel, dapat menggunakan contour_plot. Diperlukan membuat daftar dua variabel disebelah kanan + tanda, dan perlu memberikan rentang untuk masing-masing variabel. Contoh:
library(mosaicCalc)
contour_plot(
sin(4*pi*t/7)*exp(-.2*x) ~ t & x,
domain(t = range(0,14), x = range(0,8)))
Jika ingin melihat fungsi sebagai permukaan, diplot dalam 3 dimensi.
Kita dapat menampilkan plot perspektif 3 dimensi dengan menggunakan
fungsi interactive_plot(). Contoh:
library(mosaicCalc)
interactive_plot(
sin(4*pi*t/7)*exp(-.2*x) ~ t & x,
domain(t = range(0,14), x = range(0,8)))