본문 바로가기
반응형

그래프13

[ggplot2] 화면분할하는 방법 tidyverse 외에 gridExtra 라는 패키지가 필요합니다. 패키지를 설치합니다. intall.packages('tidyverse') intall.packages('gridExtra') 패키지를 불러옵니다. library(tidyverse) library(ggplot2) 화면분할은 grid.arrange 라는 함수를 사용합니다. 각 그래프를 변수에 입력한 뒤, 변수를 grid.arrange 함수에 넣어줍니다. ncol, nrow 옵션을 이용해서 화면을 어떻게 분할할지 결정합니다. 예시는 아래와 같습니다. library(tidyverse) library(gridExtra) #데이터프레임 생성 x1=c(1,1,2,2) y1=c(1,2,1,2) df=data.frame(x1,y1) #각 그래프를 변수에.. 2023. 1. 18.
[ggplot2] 선 그래프 여러개 겹쳐그릴 때 범례 순서 바꾸는 법 여러가지 자유도로 t분포 그래프를 그려보았습니다. 하나의 그래프에 그래고 범례도 표시했습니다. 표준정규분포 그래프도 함께 그렸습니다. library(tidyverse) x1=seq(-4,4,0.1) y1=dnorm(x1) y2=dt(x1,5) y3=dt(x1,15) y4=dt(x1,30) ggplot()+ geom_line(aes(x=x1,y=y1,color='normal'))+ geom_line(aes(x=x1,y=y2,color='t df=5'))+ geom_line(aes(x=x1,y=y3,color='t df=15'))+ geom_line(aes(x=x1,y=y4,color='t df=30'))+ theme(legend.position = 'top') 문제는 범례가 알파벳과 숫자 순으로 정렬된다는.. 2023. 1. 14.
[R ggplot2] 선 그래프 그리는 방법 R 내장데이터인 iris 데이터로 선 그래프를 그리겠습니다. > head(iris) Sepal.Length Sepal.Width Petal.Length Petal.Width Species 1 5.1 3.5 1.4 0.2 setosa 2 4.9 3.0 1.4 0.2 setosa 3 4.7 3.2 1.3 0.2 setosa 4 4.6 3.1 1.5 0.2 setosa 5 5.0 3.6 1.4 0.2 setosa 6 5.4 3.9 1.7 0.4 setosa ggplot2 패키지를 불러옵니다. ggplot 함수를 이용하여 x,y 데이터를 입력합니다. data 옵션에 데이터 프레임 형태의 데이터를 입력하고, aes 옵션의 x와 y값에 열 이름을 입력합니다. geom_line() 함수를 입력하면 그래프가 그려집니다.. 2022. 5. 13.
[R ggplot2] 산점도 그래프 그리는 방법 R 내장데이터인 iris 데이터로 산점도 그래프를 그리겠습니다. > head(iris) Sepal.Length Sepal.Width Petal.Length Petal.Width Species 1 5.1 3.5 1.4 0.2 setosa 2 4.9 3.0 1.4 0.2 setosa 3 4.7 3.2 1.3 0.2 setosa 4 4.6 3.1 1.5 0.2 setosa 5 5.0 3.6 1.4 0.2 setosa 6 5.4 3.9 1.7 0.4 setosa ggplot2 패키지를 불러옵니다. ggplot 함수를 이용하여 x,y 데이터를 입력합니다. data 옵션에 데이터 프레임 형태의 데이터를 입력하고, aes 옵션의 x와 y값에 열 이름을 입력합니다. geom_point() 함수를 입력하면 그래프가 그려.. 2022. 5. 13.
[R ggplot2] 히스토그램과 선그래프 겹쳐그리기 히스토그램과 선 그래프를 겹쳐그리는 방법입니다. ggplot 을 생성하고, geom_histrogrm 으로 히스토그램을 그립니다. 이어서 geom_line 으로 선 그래프를 그려줍니다. 아래는 코드입니다. 주석에 설명을 적어놓았습니다. library(ggplot2) #1. 데이터 생성 df1=as.data.frame(islands) #히스토그램데이터 df2=data.frame(x2=0:15000,y2=dnorm(0:15000,mean=5000,sd=200)) #선그래프 데이터 #2. 그래프 그리기 ggplot(df1,aes(x=islands))+ geom_histogram(aes(y=..density..))+ #히스토그램 geom_line(data=df2,aes(x=x2,y=y2),color='red').. 2022. 5. 12.
[R ggplot2] 히스토그램 그리는 방법 ggplot2 패키지를 이용하여 히스토그램을 그려봅시다. 패키지가 설치되지 않은 분들은 패키지를 먼저 설치합시다. R콘솔창에 아래와 같이 입력합니다. install.packages("ggplot2") 데이터는 내장데이터인 islands 를 사용하겠습니다. 국가 별 섬의 개수 데이터입니다. 먼저 데이터를 데이터프레임 형태로 바꿔줍시다. ggplot2 입력 형식이 데이터프레임이기 때문에 바꿔주는 것입니다. df=as.data.frame(islands) > head(df) islands Africa 11506 Antarctica 5500 Asia 16988 Australia 2968 Axel Heiberg 16 Baffin 184 ggplot2 를 불러오고 그래프를 그려줍니다. library(ggplot2) .. 2022. 3. 27.
[R] 그래프 그림파일로 저장하기 R에서 그래프를 그림파일로 저장하는 방법은 두가지가 있습니다. - GUI 이용 - 코드이용 1. GUI 이용 아래 그림과 같이 Export 버튼을 클릭하고, Save as image 를 클릭하여 저장하면 됩니다. 2. 코드이용 먼저 그림을 저장하고 싶은 파일로 경로를 지정합니다. setwd("C:/Users/Public") png 형식으로 저장하길 원하는 경우 아래 코드를 사용합니다. 그래프를 그리기 전에 먼저 png 함수를 사용해주어야 합니다. width, height 등을 설정할 수 있습니다 . png(filename="myplot.png",width=300,height=600,unit="px",bg="transparent") set.seed(1) data=rnorm(100,170,5) hist(da.. 2021. 10. 26.
[R시각화] 그래프 눈금 모서리부터 시작되게 하기 yaxs 와 xaxs 옵션을 "i"로 설정하면 눈금이 모서리 부터 시작됩니다. par(mfrow=c(1,2)) plot(1:5,main="설정안함") plot(1:5,yaxs='i',xaxs="i",main="옵션 설정") 2021. 5. 28.
[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 시각화] 막대그래프 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 그래프에 격자 넣는 방법 (+grid가 그래프 위에 그려지는 문제 해결법) R 그래프에 격자 넣는 방법 (+grid가 그래프 위에 그려지는 문제 해결법) 그래프에 격자를 넣는 방법은 그래프를 그린 뒤 아래 함수를 사용하는 것입니다. grid(nx = NULL, ny = nx, col = "lightgray", lty = "dotted", lwd = par("lwd"), equilogs = TRUE) 먼저 옵션을 설명드리겠습니다. nx : 세로 선 수ny : 가로 선 수col : 선 색lty : 선 스타일(숫자 혹은 문자 입력)lwd : 선 두께equilogs : 로그 좌표계 사용시, 로그 좌표계 고려하여 선 생성 아래는 선 스타일 종류입니다. 번호나 문자를 입력하면 됩니다. lty=0 → "blank" (투명선)lty=1 → "solid" (실선) lty=2 → "dashed".. 2020. 6. 10.
R에서 plot창에 그래프 대신 텍스트 출력 방법 R에서 plot창에 그래프 대신 텍스트 출력 방법 먼저 비어있는 창을 하나 만듭니다. >code par(mar=c(0.1,0.1,0.1,0.1))plot(NULL,type="n",xlim=c(0,5),ylim=c(0,5),ann=FALSE,axes=FALSE)box() x범위와 y범위를 고려하여 text를 써줍니다. >code par(mar=c(0.1,0.1,0.1,0.1))plot(NULL,type="n",xlim=c(0,5),ylim=c(0,5),ann=FALSE,axes=FALSE)box() text(1,2,"hello world",cex=2,col="red")text(1,4,"R studio",cex=2,col="blue") 2019. 12. 5.
R 산점도 그래프 type 설정 (직선, 점+직선 등) R 산점도 그래프 type 설정 (직선, 점+직선 등) #1. 설명 plot함수 또는 point 함수 안에 아래와 같은 type 옵션을 선택할 수 있습니다. “p”: Points “l”: Lines “b”: Both “c”: The lines part alone of “b” “o”: Both “overplotted” “h”: Histogram like (or high-density) vertical lines “n”: No plotting #2. 예제 > 코드 par(mfrow=c(3,3)) types=substring("plbcohn",1:7,1:7) for (i in 1:7) { plot(1:10,1:10,type=types[i]) title(main=paste0("type=",types[i])) }.. 2019. 12. 2.
반응형