במדריך זה, בואו נתחיל בהבנת היסודות באמצעות הפונקציה plot() ב-R. שפת R מוכרת בזכות הגרפיקה היפה שלה עם מערך עשיר של פונקציות לבניית ועיצוב כל סוג של גרפים ומשפחת הפונקציות plot() היא אחת שעוזרת לנו לבנות אותם.
הפונקציה plot() ב-R אינה פונקציה יחידה מוגדרת אלא מקום למשפחה של פונקציות קשורות. הפונקציה המדויקת שתיקרא תלויה בפרמטרים המשמשים. בפשטותה, הפונקציה plot() פשוט מציירת שני וקטורים זה מול זה.
plot(c(1,2,3,4,5),c(1,4,9,16,25))
זה נותן תרשים פשוט עבור y = x^2.

שינוי מראה הגרף עם הפונקציה plot() ב-R
ניתן להתאים אישית את הפונקציה plot() ב-R בדרכים רבות כדי ליצור תרשימים מורכבים ומושכים יותר כפי שנראה.
- צורת הסימנים: סימני התרשים הם כברירת מחדל עיגולים קטנים וריקים. אלו ידועים גם כתווי תרשים – מסומנים על ידי pch. ניתן לשנות אותם על ידי הוספת ערך pch חדש בפונקציה plot(). ערכי pch מ-0 עד 25 תקפים ונותנים מספר סמלים שונים על הגרף. Pch 0 הוא לריבוע, 1 הוא לעיגול, 3 הוא למשולש, 4 הוא לצלב וכן הלאה.
- גודל הסימנים במפתח: ניתן לשלוט באספקט זה של הגרף באמצעות הפרמטר cex. הפרמטר cex ניתן להגדרה ל־0.5 אם ברצונך שהסימנים יהיו ב־50% קטנים ול־1.5 אם ברצונך שיהיו ב־50% גדולים יותר.
- צבע הסימנים במפתח: הסמלים יכולים לקבל צבע אחד או יותר. ניתן לבחור בין הצבעים מרשימה המסופקת על ידי R תחת הפונקציה
colors()
. - חיבור הנקודות בקווים: בהרבה מקרים, נדרש לחבר את הנקודות המוצגות עם סוגים שונים של קווים. זה ניתן לביצוע באמצעות המאפיין type של פונקציית המפתח. המאפיין type המוגדר ל־'p' מתייחס רק לנקודות ו־'l' לקו בלבד. באופן דומה, הערכים 'b' ו־'o' הם לחיבורי קווים שמחברים נקודות ולשכפול נקודות בהתאמה. כדי לקבל תצוגת היסטוגרמה המועדפת, האפשרות 'h' משמשת ו־'s' משמשת לאפשרות של צעד.
- שינוי הקווים: ניתן לציין את סוג הקו על ידי הפרמטר lty (טווח 0 עד 6) ורוחב הקו מוגדר באמצעות פרמטר lwd.
בוא ננסה כעת לבנות כמה גרפים עם מה שלמדנו עד כה.
נתחיל על ידי יצירת גרף של גל סינוס. נגדיר את x להיות וקטור מסדר של ערכים מ־pi עד pi בקפיצות של 0.1 ואת y מכיל את ערכי הסינוס התואמים של x. ננסה כעת לערך את y נגד x.
x=seq(-pi,pi,0.1)
y=sin(x)
plot(x,y)

בוא ננסה כעת לשנות את הסמלים והצבעים.
plot(x,y,pch=c(4,5,6),col=c('red','blue','violet','green'))
אנו מאפשרים כעת למהדר לבחור מתוך 3 סמלים שונים ו־4 צבעים שונים לסימון הגרף. בוא נראה איך זה יצא.

R also allows combining multiple graphs into a single image for our viewing convenience using the par() function. We only need to set the space before calling the plot function in our graph.
#קביעת חלון ציור עם שורה אחת ושתי עמודות.
par(mfrow=c(1,2))
plot(x,y,type='l')
plot(x,y,pch=c(4,5,6),col=c('red','blue','violet','green'))

A few more graphs using various options from above are illustrated below.
#קביעת מרווח לשתי שורות ושלוש עמודות.
par(mfrow=c(2,3))
#ציור הגרפים באמצעות אפשרויות שונות.
plot(x,cos(x),col=c('blue','orange'),type='o',pch=19,lwd=2,cex=1.5)
plot(x,x*2,col='red',type='l')
plot(x,x^2/3+4.2, col='violet',type='o',lwd=2,lty=1)
plot(c(1,3,5,7,9,11),c(2,7,5,10,8,10),type='o',lty=3,col='pink',lwd=4)
plot(x<-seq(1,10,0.5),50*x/(x+2),col=c('green','dark green'),type='h')
plot(x,log(x),col='orange',type='s')
הגרף התוצאתי נראה כך.

הוספת מידע נוסף לגרפים עם פונקציית plot() ב־R
הגרפים נראים יותר שלמים כשיש הערות ומידע המסביר אותם. אלו יכולים לכלול כותרת לתרשים ולצירים, מקרא לגרף. לפעמים יהיה על הצבעת נקודות הנתונים. בואו נראה איך אנו מוסיפים אלו לגרפים ב־R.
- הכותרת הראשית נוספת באמצעות האפשרות main בפונקציית הציור. גופנים, צבעים וגודל יכולים להתאמה אישית באמצעות font.main, col.main ו־cex.main בהתאמה.
- כותרות הצירים ניתנות באמצעות התכונות xlab ו־ylab. אלו יכולים להתאמה אישית באמצעות font.lab, col.lab ו־cex.lab כמו שמוצג למעלה.
- ניתן גם להוסיף טקסט נוסף בתוך הגרף באמצעות התכונה text, ולציין את הטקסט לשימוש ואת הקואורדינטות להצגה.
- המאפיין הטקסטואלי יכול גם לשמש לסימון של נקודות המידע. הטקסט, במקרה זה, הוא מצבקטור של תווי תיאור במקום מחרוזת.
- ניתן להוסיף לגרף סימול על ידי פונקציית legend() של R. הפונקציה מקבלת קלט את הקואורדינטות, הטקסט והסמלים שיש לפרש.
בואו נסתכל על דוגמאות המדגימות זאת.
#הצגת הכותרת בצבע
plot(c(1,3,5,7,9,11),c(2,7,5,10,8,10),type='o',lty=3, col='pink',lwd=4,main="This is a graph",col.main='blue')

#אותו גרף עם הוספת תיאור לצירי x ו-y
> plot(c(1,3,5,7,9,11),c(2,7,5,10,8,10),type='o',lt=3,col='pink',lwd=4,main="This is a graph",col.main='blue',xlab="Time",ylab="Performance")

בואו נוסיף תווית לכל נקודת נתונים בגרף באמצעות מאפיין טקסט.
labelset <-c('one','three','five','seven','nine','eleven')
x1<- c(1,3,5,7,9,11)
y1 <- c(2,7,5,10,8,10)
plot(x1,y1,type='o',lty=3,col='pink',lwd=4,main="This is a graph",col.main='blue',xlab="Time",ylab="Performance")
text(x1+0.5,y1,labelset,col='red')

לבסוף, בואו נוסיף סימול לגרף למעלה באמצעות legend().
> legend('topleft',inset=0.05,"Performace",lty=3,col='pink',lwd=4)
המיקום ניתן לציין או על ידי קואורדינטות x ו-y, או באמצעות מיקום כמו 'שמאל למעלה' או 'ימין למטה'. המונח "Inset" מתייחס להזזת תיבת ההסבר קצת לפנימה של הגרף. הגרף התוצאתי כעת כולל סימול.

מציבים גרפים
R also allows two graphs to be displayed on top of each other instead of creating a new window for every graph. This is done by calling a lines() function for the second graph rather than plot() again. These are most useful when performing comparisons of metrics or among different sets of values. Let us look at an example.
x=seq(2,10,0.1)
y1=x^2
y2=x^3
plot(x,y1,type='l',col='red')
lines(x,y2,col='green')
legend('bottomright',inset=0.05,c("Squares","Cubes"),lty=1,col=c("red","green"),title="Graph type")

הוספת קווים לגרף
שורות ישרות ניתן להוסיף לגרף קיים באמצעות הפונקציה הפשוטה \texttt{abline()}. הפונקציה \texttt{abline()} מקבלת 4 ארגומנטים, a, b, h, ו-v. המשתנים a ו־b מייצגים את השיפוע ואת החיתוך. H מייצג את נקודות ה-y לשורות אופקיות ו־v מייצג את נקודות ה-x לשורות אנכיות.
בואו נסתכל על דוגמה כדי להבין זאת בבירור. תנסו לבצע את שלושת ההצהרות הבאות אחרי בניית הגרף לריבועים ולקוביות למעלה.
abline(a=4,b=5,col='blue')
abline(h=c(4,6,8),col="dark green",lty=2)
abline(v=c(4,6,8),col="dark green",lty=2)

השורה הכחולה הראשונה מבוצעת עם השיפוע והחיתוך המצוינים. סט הבא של שלוש שורות אופקיות ואנכיות משויירות בערך ה-x וה-y המצויינים בסגנון קו נקודות כפולות כפי שמופיע ב־lty=2.
זה מכסה את היסודות של הפונקציה plot ב־R. כאשר משולב עם חבילות אחרות כמו ggplot2, R בונה את הגרפים המרשימים והדינמיים ביותר כפי שנראה בשיעורים נוספים.
Source:
https://www.digitalocean.com/community/tutorials/plot-function-in-r