[ggplot] 산점도에 좌표 추가하기
좌표를 추가할 때는 geom_text 함수를 사용합니다. label 에 좌표 이름이 들어가게 되는데, 좌표 이름 열을 미리 생성해 놓아야 합니다. 위치는 hjust와 vjust 로 적당히 조절합니다. 크기는 size 옵션을 이용합니다. 예시는 아래와 같습니다. library(tidyverse) x1=c(1,1,2,2) y1=c(1,2,1,2) df=data.frame(x,y) df['label']=paste('(',df$x,',',df$y,')') ggplot(data=df,aes(x=x1,y=y1))+ geom_point()+ scale_x_continuous(limits = c(0,3))+ scale_y_continuous(limits = c(0,3))+ geom_text(aes(x=x1,label=..
2023. 1. 16.
[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 ggplot] 범례 추가하고 이름,크기,색,진하기 조절하기
데이터는 내장데이터 iris 를 사용하였습니다. 설명은 주석으로 대신합니다. library(ggplot2) ggplot()+ geom_point(data=iris, aes(x=Sepal.Length,y=Sepal.Width,color=Species))+ #범례 추가 theme(legend.position = 'top')+ #범례 타이틀 색,크기,진하게 설정 theme(legend.title = element_text(color = "black", size = 20, face = "bold"))+ #범레 텍스트 색,크기,진하게 설정 theme(legend.text = element_text(color = "black", size = 12, face = "bold"))+ #범례 색 설정 scale_color..
2022. 6. 8.
[R ggplot] 상자수염그림 fill 순서 마음대로 정하기 (boxplot)
그룹형 상자수염그림에서 2차 독립변수의 순서를 정하는 방법입니다. 2차 독립변수를 factor 로 변환하고 level 을 설정해주면 됩니다. 사용할 데이터는 내장데이터 breaks 입니다. 상자수염을 그리면 아래와 같습니다. library(ggplot2) ggplot()+ geom_boxplot(data=warpbreaks,aes(x=wool,y=breaks,fill=tension)) L,M,H 순서로 그래프가 그려집니다. 순서를 H,M,L 로 바꿔봅시다. 아래와 같이 데이터를 변환해줍니다. #데이터 변환하기 my_data=warpbreaks my_data=transform( my_data, tension= factor(tension,levels = c('H','M','L')) ) 그래프를 그려봅시다. ..
2022. 5. 31.
[R ggplot2] 그래프 제목 추가, 크기변경, 두껍게 하는 법
그래프를 하나 그려봅시다. 정규분포 그래프를 그렸습니다. x1=seq(-4,4,0.1) y1=dnorm(x1) data1=data.frame(x1,y1) library(ggplot2) ggplot()+ geom_point(data=data1, aes(x=x1,y=y1)) 그래프 제목을 추가할 때는 ggtitle 함수를 사용합니다. x1=seq(-4,4,0.1) y1=dnorm(x1) data1=data.frame(x1,y1) library(ggplot2) ggplot()+ geom_point(data=data1, aes(x=x1,y=y1))+ ggtitle('Normal Distribution') 가운데 정렬, 크기,bold 는 아래와 같이 설정합니다. hjust=0.5 로 설정하면 가운데 정렬 됩니다...
2022. 5. 13.
[R ggplot2] 두 데이터를 하나의 산점도 그래프에 그릴 때 범례 및 색 설정
(x,y)로 대응되어 있는 데이터가 두 종류 있다고 합시다. data1=data.frame(x1=1:10,y1=dnorm(1:10)) data2=data.frame(x2=1:10,y2=dchisq(1:10,3)) 하나의 그래프에 두 데이터의 산점도를 그려봅시다. library(ggplot2) ggplot()+ geom_point(data=data1, aes(x=x1,y=y1))+ geom_point(data=data2, aes(x=x2,y=y2)) 범례를 설정해볼 것인데요. 여기서 많은 분들이 헷갈려하는 부분이 나옵니다. 아마 아래와 같이 색을 구분하려고 할 것입니다. ggplot()+ geom_point(data=data1, aes(x=x1,y=y1),color='red')+ geom_point(dat..
2022. 5. 13.