2.1 Membuat grafik fungsi matematika
Ingatlah bahwa fungsi adalah transformasi dari masukan menjadi keluaran. Fungsi digunakan untuk mewakili hubungan antara kuantitas. Dalam mengevaluasi suatu fungsi, Anda menentukan apa inputnya dan fungsi menerjemahkannya menjadi output.
Di sebagian besar notasi matematika tradisional yang Anda gunakan, fungsi memiliki nama seperti \(f\) atau \(g\) atau \(y\), dan input dinotasikan sebagai \(x\). Huruf lain digunakan untuk mewakili parameter . Misalnya, menulis persamaan garis dengan cara ini adalah hal yang umum \[ y = m x + b .\]
Untuk menerapkan konsep matematika ke pengaturan realistis di dunia, penting untuk mengenali tiga hal yang disukai notasi \(y = mx + b\) tidak mendukung dengan baik:
Hubungan dunia nyata umumnya melibatkan lebih dari dua kuantitas. (Misalnya, Hukum Gas Ideal dalam kimia, \(PV = n R T\) melibatkan tiga variabel: tekanan, volume, dan suhu.) Untuk alasan ini, Anda memerlukan notasi yang memungkinkan Anda mendeskripsikan beberapa input ke suatu fungsi dan yang memungkinkan Anda melacak input yang mana.
Kuantitas dunia nyata biasanya tidak disebutkan namanya \(x\) dan \(y\), tetapi jumlahnya seperti “konsentrasi AMP siklik” atau “tegangan membran” atau “pengeluaran pemerintah”. Tentu saja, Anda dapat memanggil semua hal seperti itu \(x\) or \(y\), tetapi jauh lebih mudah untuk memahami hal-hal ketika nama mengingatkan Anda tentang kuantitas yang diwakili.
Situasi dunia nyata melibatkan banyak hubungan yang berbeda, dan model matematisnya dapat melibatkan perkiraan dan representasi yang berbeda dari hubungan tersebut. Oleh karena itu, penting untuk dapat memberi nama pada hubungan, sehingga Anda dapat melacak berbagai hal yang sedang Anda kerjakan.
Untuk alasan ini, notasi yang akan Anda gunakan harus lebih umum daripada notasi yang biasa digunakan dalam aljabar sekolah menengah. Pada awalnya, ini akan tampak aneh, tetapi keanehan tersebut tidak terlalu berkaitan dengan fakta bahwa notasi digunakan oleh komputer sebanyak alasan matematis yang diberikan di atas.
Namun ada satu aspek notasi yang langsung bermula dari penggunaan keyboard untuk berkomunikasi dengan komputer. Dalam menulis operasi matematika, Anda akan menggunakan ekspresi seperti a * bdan 2 ^ ndan a / b daripada yang tradisional \(a b\) atau \(2^n\) atai \(\frac{a}{b}\), dan Anda akan menggunakan tanda kurung untuk mengelompokkan ekspresi dan menerapkan fungsi ke inputnya.
Dalam memplot suatu fungsi, Anda perlu menentukan beberapa hal:
Apa fungsinya . Ini biasanya diberikan oleh ekspresi, misalnya m * x + batau A * x ^ 2atau sin(2 * t)Nanti, Anda juga akan memberi nama pada fungsi dan menggunakan nama tersebut dalam ekspresi, seperti sinnama fungsi trigonometri.
Apa inputnya . Ingat, tidak ada alasan untuk menganggap itu \(x\) selalu merupakan masukan, dan Anda akan menggunakan variabel dengan nama seperti Gdan cAMP. Jadi, Anda harus secara eksplisit mengatakan apa yang merupakan input dan apa yang tidak. Notasi R untuk ini melibatkan ~simbol (“tilde”). Misalnya, untuk menentukan fungsi linier dengan \(x\) sebagai masukan, Anda dapat menulism * x + b ~ x
Berapa kisaran input untuk membuat plot berakhir . Anggap ini sebagai batas sumbu horizontal tempat Anda ingin membuat plot.
Nilai parameter apa pun . Ingat, notasi m * x + b ~ xtidak hanya melibatkan input variabel xtetapi juga dua besaran lainnya, mdan b. Untuk membuat plot fungsi, Anda perlu memilih nilai spesifik untuk mdan bmemberi tahu komputer apa itu.
Ada tiga fungsi grafik {mosaicCalc}yang memungkinkan Anda membuat grafik fungsi, dan melapisi plot tersebut dengan grafik fungsi atau data lain. Ini adalah:
slice_plot()untuk fungsi dari satu variabel.
contour_plot()untuk fungsi dua variabel.
interactive_plot()yang menghasilkan widget HTML untuk berinteraksi dengan fungsi dua variabel.
Ketiganya digunakan dengan cara yang hampir sama. Berikut adalah contoh merencanakan fungsi garis lurus:
library(mosaicCalc)
## Loading required package: mosaic
## Registered S3 method overwritten by 'mosaic':
## method from
## fortify.SpatialPolygonsDataFrame ggplot2
##
## The 'mosaic' package masks several functions from core packages in order to add
## additional features. The original behavior of these functions should not be affected by this.
##
## Attaching package: 'mosaic'
## The following objects are masked from 'package:dplyr':
##
## count, do, tally
## The following object is masked from 'package:Matrix':
##
## mean
## The following object is masked from 'package:ggplot2':
##
## stat
## The following objects are masked from 'package:stats':
##
## binom.test, cor, cor.test, cov, fivenum, IQR, median, prop.test,
## quantile, sd, t.test, var
## The following objects are masked from 'package:base':
##
## max, mean, min, prod, range, sample, sum
## Loading required package: mosaicCore
##
## Attaching package: 'mosaicCore'
## The following objects are masked from 'package:dplyr':
##
## count, tally
##
## Attaching package: 'mosaicCalc'
## The following object is masked from 'package:stats':
##
## D
slice_plot(3 * x - 2 ~ x, domain(x = range(0, 10)))
Seringkali, wajar untuk menulis hubungan seperti itu dengan parameter
yang diwakili oleh simbol. (Ini dapat membantu Anda mengingat parameter
mana yang mana, misalnya, mana kemiringan dan mana intersep. Ketika Anda
melakukan ini, ingatlah untuk memberikan nilai numerik khusus untuk
parameter, seperti ini:
m = -3
b = -2
slice_plot(m * x + b ~ x, domain(x = range(0, 10)))
Coba contoh berikut:
A = 100
slice_plot( A * x ^ 2 ~ x, domain(x = range(-2, 3)))
A = 5
slice_plot( A * x ^ 2 ~ x, domain(x = range(0, 3)), color="red" )
slice_plot( cos(t) ~ t, domain(t = range(0,4*pi) ))
Anda dapat menggunakan makeFun( )untuk memberi nama pada fungsi
tersebut. Misalnya:
g <- makeFun(2*x^2 - 5*x + 2 ~ x)
slice_plot(g(x) ~ x , domain(x = range(-2, 2)))
Setelah fungsi diberi nama, Anda dapat mengevaluasinya dengan memberikan
masukan. Contohnya:
g(x = 2)
## [1] 0
g(x = 5)
## [1] 27
Tentu saja, Anda juga dapat membuat ekspresi baru dari fungsi yang telah Anda buat. Coba ungkapan yang agak rumit ini:
slice_plot(sqrt(abs(g(x))) ~ x, domain(x = range(-5,5)))
2.2 Membuat scatterplot
File data yang akan Anda gunakan disimpan sebagai spreadsheet di Internet. Biasanya, spreadsheet akan memiliki beberapa variabel; setiap variabel disimpan sebagai satu kolom. (Baris-barisnya adalah “cases,” terkadang disebut “data points.”) Untuk membaca data ke dalam R, Anda perlu mengetahui nama file dan lokasinya. Seringkali, lokasi akan berupa alamat di Internet.
Berikut cara membacanya menjadi R:
Housing = read.csv("http://www.mosaic-web.org/go/datasets/Income-Housing.csv")
Setelah data dibaca, Anda dapat melihat data hanya dengan mengetikkan nama objek (tanpa tanda kutip!) yang menyimpan data tersebut. Misalnya,
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 (walaupun hanya empat yang dicetak di sini).
Anda dapat melihat nama semua variabel dalam format yang ringkas dengan names( )perintah:
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"
Biasanya penyajian data yang paling informatif adalah grafis. Salah satu bentuk grafik yang paling dikenal adalah scatter-plot , format di mana setiap “kasus” atau “titik data” diplot sebagai titik pada lokasi koordinat yang diberikan oleh dua variabel. Misalnya, berikut adalah sebaran fraksi rumah tangga yang menganggap lingkungan mereka memiliki masalah kejahatan, versus pendapatan rata-rata kelompok mereka.
gf_point(CrimeProblem ~ Income, data = Housing )
Grafik dibangun berlapis-lapis. Jika Anda ingin memplot fungsi
matematika pada data, Anda harus menggunakan fungsi plot untuk membuat
lapisan lain. Kemudian, untuk menampilkan dua lapisan dalam plot yang
sama, hubungkan dengan %>%simbol (disebut “pipa”). Perhatikan bahwa
tidak pernah%>% bisa di awal baris baru.
gf_point(
CrimeProblem ~ Income, data=Housing ) %>%
slice_plot(
40 - Income/2000 ~ Income, color = "red")
2.3 Membuat grafik fungsi dua variabel
Anda gunakan contour_plot()untuk memplot dengan dua variabel input. Anda perlu mencantumkan dua variabel di sebelah kanan +tanda, dan Anda perlu memberikan rentang untuk masing-masing variabel. Sebagai contoh:
contour_plot(
sin(2*pi*t/10)*exp(-.2*x) ~ t & x,
domain(t = range(0,20), x = range(0,10)))
Kadang-kadang, orang ingin melihat fungsi sebagai permukaan , diplot
dalam 3 dimensi. Anda bisa mendapatkan komputer untuk menampilkan plot
perspektif 3 dimensi dengan menggunakan interactive_plot()fungsi.
Seperti yang akan Anda lihat dengan mengarahkan mouse di sekitar plot,
ini interaktif.
interactive_plot(
sin(2*pi*t/10)*exp(-.5*x) ~ t & x,
domain(t = 0:20, x = 0:10))
Mungkin itu saja sekian terima kasih