[R시각화] 선을 그려주는 lines 함수
line 함수는 그래프에 선을 추가해야 하는 경우에 사용하는 함수입니다. 단독으로 사용할 수는 없고 그래프가 하나 그려져 있어야 합니다. 아래와 같은 형식으로 사용합니다. lines(c(x좌표들),c(y좌표들)) 아래는 예시입니다. > plot(0,xlim=c(0,10),ylim=c(0,10),type="n") > lines(c(1,5),c(2,7)) 선색, 두께, 스타일을 설정해봅시다. col은 색, lwd는 두께, lty는 스타일입니다. lty 옵션은 아래와 같습니다. 선의 형태 0 : blank 1 : solid 2 : dashed 3 : dotted 4 : dotdash 5 : longdash 6 : twodash 옵션을 적용하여 그래프를 그려봅시다. > plot(0,xlim=c(0,10),yli..
2020. 12. 29.
[R 시각화] 산점도 제목,축이름,눈금이름 크기변경
산점도 그래프에서 제목,축이름,눈금이름의 크기를 변경하는 방법은 크게 세가지가 있습니다. 1) plot 그래프에 옵션 설정 2) 저수준함수 title, axis 이용 3) 그래픽 파라미터 일괄 변경 (par 함수) 이 글에서는 1번의 경우를 다룹니다. 제목,축이름,눈금이름 크기를 변경할 때, plot 함수에 입력하는 옵션은 아래와 같습니다. 제목 크기 : cex.main 축 이름 크기 : cex.lab 눈금 이름 크기 : cex.axis 아래는 예시입니다. plot(1:10,main="my graph",xlab="X",ylab="Y", cex.main=1.5,cex.lab=1.7,cex.axis=2)
2020. 12. 23.
[R시각화] 여러 그래프 타이틀,축이름,눈금이름 크기 일괄변경하기
boxplot 을 여러개 그린 상황을 가정합시다. 아래와 같습니다. par(mfrow=c(2,2)) boxplot(Sepal.Length~Species,iris,main="Sepal Length") boxplot(Sepal.Width~Species,iris,main="Sapel Width") boxplot(Petal.Length~Species,iris,main="Petal Length") boxplot(Petal.Width~Species,iris,main="Petall Width") 그래프의 제목,축이름,눈금이름의 크기를 조절하고 싶습니다. 각 그래프마다 옵션을 입력해주는 것이 귀찮을 수 있습니다. 이런 경우 그래픽파라미터를 일괄 변경하는 par 함수를 사용합니다. #제목 크기 변경 par(cex.mai..
2020. 12. 23.
[R 시각화] 그룹형 막대그래프 그리는 방법
행렬을 하나 정의해봅시다. 세 사람의 수학,영어, 과학 성적입니다. Tim = c(67,68,39) Marry = c(65,36,20) Kate = c(88,90,45) dt=cbind(Tim,Marry,Kate) rownames(dt)=c("Math","English","Science") 데이터를 확인해봅시다. > dt Tim Marry Kate Math 67 65 88 English 68 36 90 Science 39 20 45 barplot 을 적용합시다. beside 를 TRUE로 설정해야 그룹형 막대그래프가 그려집니다. 열이 하나의 그룹이 되고, 각 열의 행은 그룹에 속한 막대가 됩니다. barplot(dt,beside=TRUE) 색을 지정해봅시다. col 옵션을 사용합니다. 범례가 들어갈 자리..
2020. 12. 22.
[R 시각화] 그래프 밖에 화살표 추가하는 방법
arrow 함수를 이용하여 그래프 밖에 화살표를 추가할 때는 xpd 옵션을 TRUE로 설정하면 됩니다. 예시는 아래와 같습니다. df=30 alpha=0.05 x=seq(-5,5,0.1) y=dt(x,df) plot(x,y,'l') xp=seq(qt(1-alpha,df),10,0.1) yp=dt(xp,df) polygon(c(xp,rev(xp)),c(rep(0,length(xp)),rev(yp)),col="blue") title(main=paste(df,"자유도 t분포")) arrows(qt(1-alpha,df),-0.035,qt(1-alpha,df),par("usr")[3],xpd=TRUE,length=0.13,lwd=2,col="red") #그래프 밖에 화살표 추가 text(qt(1-alpha,df)..
2020. 12. 18.
[R 시각화] 그래프에 화살표 추가하는 방법
그래프에 화살표를 추가할 때는 arrows 함수를 사용합니다. 기본 형식은 아래와 같습니다. arrows(x0, y0, x1, y1) x0,y0 : 시작점 x1,y1 : 끝점 그래프를 그리고 화살표를 추가해봅시다. plot(1:3,1:3) arrows(1,2,2,2.5) ㅁ몇가지 꾸미기 옵션은 아래와 같습니다. length : 화살길이 angle : 화살각도 col : 화살 색 code : 화살표 방향 (0:없음, 1:시작에서끝, 2: 끝에서시작, 3:양쪽화살표) lty : 선 스타일 lwd : 선두께 꾸미기 옵션을 사용하여 화살표를 그려봅시다 . plot(1:3,1:3) arrows(1,2,2,2.5,length=0.5,angle=50,col="red",lty=2)
2020. 12. 17.
[R 시각화] 그래프 눈금 색, 눈금 값의 색 변경 (axis함수 사용)
눈금과 눈금값의 색을 변경할 때는 아래 옵션을 사용합니다. plot 함수 안에 정의할 수도 있고, axis 라는 저수준함수를 사용할 수도 있습니다. 이 글은 axis 함수를 사용하는 방법입니다. axis 함수를 사용할 경우 x축과 y축 옵션을 각각 설정할 수 있습니다. 눈금 색 변경 col.ticks="red 눈금 값의 색 변경 col.axis="red" 예를들어봅시다. 그래프를 하나 그려봅시다. plot(1:3,1:3) 눈금 색과 눈금 값 색을 변경해봅시다. plot(1:3,1:3) #side1은 아래, 즉 x축을 의미합니다. axis(side=1,col.axis="red",col.ticks='green') #side2은 왼쪽, 즉 y축을 의미합니다. axis(side=2,col.axis="cyan",..
2020. 12. 17.
[R 시각화] 산점도 점에 번호 붙이는 방법
산점도 그래프에 있는 점에 번호를 붙이는 방법입니다. text 함수를 이용합니다. 아래는 설정한 옵션입니다. text(x좌표,y좌표,labels=번호,pos=위치,cex=크기) 그래프를 그려봅시다. set.seed(2020) x=rnorm(30) y=rnorm(30) plot(x,y) text(x,y,labels=1:30,pos=1,cex=0.8) pos 옵션 값의 역할은 아래와 같습니다. 1 : 하 2 : 좌 3 : 상 4 : 우 pos를 바꿔가며 그래프를 그려봅시다. set.seed(2020) x=rnorm(30) y=rnorm(30) par(mfrow=c(2,2)) for (i in 1:4){ plot(x,y) title(main=paste("pos=",i)) text(x,y,labels=1:30,..
2020. 12. 17.
[R 시각화] 막대그래프 x축 눈금, y축 눈금 크기 변경
1. 막대그래프 그리기 volume=c(500,600,200) names=c("americano","latte","chocolate") barplot(volume,names=names) 2. x축 눈금 크기 변경 cex.names 옵션을 사용합니다. mb=barplot(volume,names=names,cex.names=1.4) 3. y축 눈금 크기 변경 cex.axis 옵션을 사용합니다. mb=barplot(volume,names=names,cex.axis=1.5)
2020. 12. 16.
[R 시각화] 막대그래프 x축 눈금이름 회전하기
막대그래프를 하나 그려봅시다. volume=c(500,600,200) names=c("americano","latte","chocolate") barplot(volume,names=names) 90도 단위로 회전 las 옵션을 이용하면 90도 단위로는 회전이 가능합니다. las 옵션을 사용합니다. barplot(volume,names=names,angle=90,las=2) 임의의 각도로 회전 임의의 각도로 회전하려면 text 함수를 이용하면 됩니다. xpd 는 plot region 밖으로 나갈 수 있는지 여부를 결정하는 옵션입니다. adj=1 은 오른쪽 정렬입니다. srt가 각도입니다. volume=c(500,600,200) names=c("americano","latte","chocolate") mb=..
2020. 12. 16.
[R 시각화] 팩토리얼, 감마 함수 그래프
팩토리얼 함수를 산점도로, 감마함수를 선으로 그린 그래프입니다. 범위 수정을 원하면 x와 x_g를 수정해주면 됩니다. x=1:5 y=factorial(x-1) plot(x,y,main="Factorial function",cex.main=1.5,pch=16,col="red") x_g=seq(1,5,0.02) y_g=gamma(x_g) lines(x_g,y_g)
2020. 12. 14.
[R 시각화] 다변량 시계열 그래프 그리기
다변량 시계열을 생성하고 그래프를 그려봅시다. 다변량시계열은 ts 함수에 행렬을 입력하여 생성합니다. 먼저 행렬을 생성합시다. > mat=matrix(rnorm(30),10,3) > mat [,1] [,2] [,3] [1,] -0.176291735 0.3323575 -0.6542597 [2,] -0.928060332 -0.5374235 0.7382477 [3,] -0.003182761 1.7133234 0.9095766 [4,] 1.459855751 -1.0273686 1.7733747 [5,] 0.057111027 -2.1042541 0.7851097 [6,] -0.411653367 0.5216750 1.4261827 [7,] -0.381249441 -1.0180405 -1.0944751 [8,] -0..
2020. 12. 13.
R 역 누적분포 히스토그램
R 역 누적분포 히스토그램 일반적인 누적분포를 계산하는 방법은 아래와 같습니다. data=c(1,2,2,3,3,3,4,4,4,4,5,5,5,5,5,6,6,6,6,6,6) 간격을 1로 설정하면 계급과 도수는 아래와 같습니다. 누적도수의 경우 간격을 1로 설정해야 그래프를 그리기가 수월합니다. 0-1 : 11-2 : 22-3 : 33-4 : 44-5 : 55-6 : 6 누적도수로 나타내면 아래와 같습니다. 0-1 : 11-2 : 32-3 : 63-4 : 104-5 : 155-6 : 21 여기서 말하는 '역'누적분포는 아래와 같습니다. 0-1 : 211-2 : 202-3 : 183-4 : 154-5 : 115-6 : 6 누적도수가 앞에서 부터의 누적이라면, 역누적도수는 뒤에서부터의 누적입니다. 아래의 절차로 ..
2020. 12. 8.
R 밀도(density) 히스토그램
R에서 밀도(density) 히스토그램을 그리는 방법입니다. 히스토그램을 그릴 때 옵션에 freq를 FALSE로 바꿔주면 됩니다. 아래는 예시입니다. > data=c(1,2,2,3,3,3,4,4,4,4,5,5,5,5,5) > hist(data,freq=FALSE) y축 범위도 설정해봅시다. > hist(data,freq=FALSE,ylim=c(0,0.5))
2020. 12. 8.
R 히스토그램에서 구간은 미만일까 이하일까.
R 히스토그램에서 구간은 미만일까 이하일까. R 히스토그램을 그릴 때, 구간을 아래와 같이 나눴다고 해봅시다. 0~22~44~66~8 이때 구간의 부등호는 어떻게 될까요? 이상일까요 초과일까요, 이하일까요 미만일까요? 한번 확인해봅시다. 데이터 벡터를 만들겠습니다. 각 숫자별 숫자의 개수만큼의 원소가 있습니다. data=c(0,1,2,2,3,3,3,4,4,4,4,5,5,5,5,5,6,6,6,6,6,6,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8) 히스토그램을 그려봅시다. > myhist=hist(data,breaks=seq(0,8,by=2))> myhist$breaks[1] 0 2 4 6 8 $counts[1] 4 7 11 15 각 계급의 도수는 아래와 같습니다. 0~2 : 42~4 : 74~6..
2020. 12. 8.
[R] 텍스트 사이즈, 폰트 설정 방법
[R] 텍스트 사이즈, 폰트 설정 방법 텍스트 사이즈 텍스트 사이즈는 폰트사이즈와 cex의 곱입니다. cex는 character expansion 입니다. 폰트사이즈는 디폴트(1/72inch)이고, cex를 설정하여 텍스트 사이즈를 조절합니다. 실제 출력되는 폰트 사이즈는 ps와 cex의 곱입니다. ex) text(1,1,"hi",cex=1.2) 텍스트 폰트 font 옵션을 이용합니다. 번호를 입력하면 됩니다. 1=plain, 2=bold, 3=italic, 4=bold-italic ex) text(1,1,'hi',cex=1.2,font=2)
2020. 10. 29.
[R 시각화] x축 이름, 또는 y축 이름만 없애는 방법
[R 시각화] x축 이름, 또는 y축 이름만 없애는 방법 x축 이름과 y축 이름을 둘다 숨기는 방법은 그래프 함수 안에 옵션으로 ann=FALSE 를 설정하는 것입니다. 그런데 이렇게 하면 x축과 y축 이름이 둘다 사라집니다. 둘 중 하나만 남기고 싶은 경우가 있는데요. 그럴 경우 사용하는 방법입니다. 1) x축 이름만 남기고 싶은 경우 산점도(plot)을 예로 들겠습니다. x=c(1,2,3)y=c(3,3,3) plot(x,y) x,y레이블을 없애려면 ann=FALSE 옵션을 설정해주면 됩니다. plot(x,y,ann=FALSE) x레이블은 아래와 같이 추가합니다. mtext는 margin text 함수입니다. margin 에 text를 추가해줍니다. mtext("xlabel", side = 1, lin..
2020. 9. 18.
[R 시각화] 그래프의 점 옆에 좌표 표시하기
[R 시각화] 그래프의 점 옆에 좌표 표시하기 먼저 그래프에 점을 찍어봅시다. x=c(1,2,3)y=c(1,2,3) plot(x,y,xlim=c(0,5),ylim=c(0,5)) text 함수를 이용하여 점의 좌표를 표시합시다. 텍스트가 표시될 위치의 좌표를 먼저 입력하고, 나타내기 원하는 문장을 입력합니다. (1,1)을 나타낼 것입니다. text(x[1],y[1],"(1,1)") 점과 입력문장이 겹친다는 문제가 있습니다. 위치를 미세하게 조정하는 방법도 있지만, pos 옵션을 이용하면 간단히 해결됩니다. text(x[1],y[1],"(1,1)",pos=1) pos 뒤에 입력된 숫자는 위치를 의미합니다. 1,2,3,4는 하,좌,상,우 입니다. 위 그림 코드 plot(1,1,xlim=c(0,2),ylim=c..
2020. 8. 26.
[R 시각화] 3차원 산점도 그리는 방법
[R 시각화] 3차원 산점도 그리는 방법 scatterplot3d 는 3차원 산점도를 그리는 함수입니다. 먼저 라이브러리를 설치합니다. install.library("scatterplot3d") 라이브러리를 불러오고, 간단한 사용방법을 알아보겠습니다. 점 세개를 정의하고 그래프로 그려봅시다. library(scatterplot3d) x=c(1,2,3)y=c(4,5,6)z=c(2,4,2) scatterplot3d(x,y, xlim=c(0,10), ylim=c(0,10), zlim=c(0,5), xlab="X label", ylab="Y label", zlab="Z label", main="My plot", cex.main=2, cex.lab=1.5, color="red", pch=19, angle=40 )..
2020. 8. 6.
[R 그래프] 히스토그램에 빈도값 추가하기
[R 그래프] 히스토그램에 빈도값 추가하기 먼저 히스토그램을 하나 그립시다. #data생성 set.seed(1) data=rnorm(100,170,5) #x축 최대,최솟값 확인 summary(data) #히스토그램 그리기 a=hist(data ,breaks=seq(150,190,by=2) ,col="red" ,main="my histogram" ,xlab="height(cm)" ,axes=FALSE) #y축 최댓값 max(a$counts) #축 설정 x_axis_tick=seq(150,190,by=2) axis(side=1,at=x_axis_tick) y_axis_tick=seq(0,max(a$counts),by=2) axis(side=2,at=y_axis_tick)#범례 설정 legend("toprig..
2020. 8. 3.