ggplot2 로 캔들차트(주식차트) 만들기

ggplot2 에는 주식차트로 흔하게 쓰이는 캔들차트 함수가 따로 없다. 알아서 네모난 모양과 세로선 하나를 조합해서 캔들차트로 만들어야 한다. 그리 어렵진 않으나, 한번에 만드는 함수가 있으면 좋을 거 같긴한데, 이제껏 없는거 보면 알아서 잘 조합해서 사용하라는 거 같다.

[더 읽기]

scales::label_date_short 함수 사용법

R의 scales 패키지에 포함된 label_date_short() 함수는 데이터 시각화(특히 ggplot2)에서 날짜 축의 라벨을 가장 효율적이고 간결하게 만들어주는 아주 똑똑한 함수이다. 기존의 label_date()가 고정된 형식을 반복한다면, label_date_short()는 데이터의 범위에 따라 형식을 유동적으로 변화시킨다.

[더 읽기]

금융 데이터 시각화 시 비영업일 제거 방법

금융데이터의 경우 영업일 데이터만 있는 csv, excel 파일들이 대부분이다. 이런 경우, 날짜 형식으로 변환해서 선그래프를 그리다보면, 토/일/휴일 같은 날짜도 x축에서 출력되다보니, 약간은 왜곡된 그래프로 보이게 된다. 물론 5년치 이런 데이터는 괜찮지만, 1달이내 그래프를 그리면 비영업일은 빼고 그래프를 표현하고 싶어진다.

[더 읽기]

ggplot2 막대 그래프, 너무 큰 값 때문에 작은 값이 안 보인다면? 0과 음수도 문제없는 데이터 스케일링

데이터들간 값이 편차가 너무 클때, 차트를 만들게 되면 뭔가 정상적인 분석이 어려워지는 경우가 있다. 이런 경우, “너무 큰 값은 눌러주고, 작은 값의 차이는 상대적으로 잘 보이게 만드는” 방식을 원할 때가 있다. 이럴 때 쓸만한 함수가 scales::modulus_trans 이다.

[더 읽기]

ggplot2 에 IBM Plex Sans KR 폰트 적용하기

finviz.com 사이트를 보면, 폰트가 이쁘기도 하고, 가독성이 좋다고 생각했다. 특히 자료를 나타내는 표 형식의 데이터 혹은 그래프상의 숫자에 어울리는 것 같다. 그래서 나역시도 ggplot2 로 그래프를 만들때 해당 폰트를 사용하고자 했는데 셋팅하는 데 시간이 생각보다 많이 걸렸다. 그 후기를 정리한다.

[더 읽기]

KOSPI200의 지난 1년간의 가격흐름을 BOXPLOT 으로 만들기

지난 일년간 kospi200 지수를 추종하는 ETF 의 가격을 가지고, 수익률의 변화를 분기별로 나타내보고 싶었다. Boxplot 이라는 차트로 나타내면 선그래프보다는 조금 더 응축된 그래프로 나타낼 수 있다. 일반적인 주식차트로 보는 캔들차트와는 차이가 있다. 캔들차트는 시가와 종가를 기준으로 박스가 만들어지지만, Boxplot 은 중간 50%의 값이 박스로 표시된다.

[더 읽기]

R svglite 그래프, 웹폰트(Pretendard) 적용해서 Hugo에 완벽하게 올리기

R에서 svglite로 저장한 svg 결과물을 웹페이지에 넣었을 때, 폰트가 기본 폰트(Arial 등)로 돌아가거나 글자가 깨지는 현상이 있었다. 특히 프리텐다드(Pretendard) 같은 웹폰트를 사용 중인데, svg 그래프내의 텍스트도 동일하게 폰트를 적용하고 싶었는데, 겨우 해결했다.

[더 읽기]
hugo  ggplot2  r 

ggplot2에서 y축을 오른쪽으로 변경하는 방법

ggplot2에서 기본적으로 y축은 그래프의 왼쪽에 표시된다. 하지만 데이터 시각화 목적에 따라 y축을 오른쪽으로 이동해야 할 때가 있다. 예를 들어, 아래 그래프의 경우처럼 y축을 오른쪽에 배치하면 더 직관적인 경우가 있다. 이번 글에서는 y축을 오른쪽에 배치하는 방법을 정리한다.

[더 읽기]

ggplot2 이중 Y축 활용법 - 막대그래프와 선그래프 함께 그리기

데이터를 시각화할 때, 서로 다른 단위를 가진 데이터를 한 그래프에 표현해야 하는 경우가 많다. 예를 들어, 한 축에는 월별 매출(₩) 을, 다른 축에는 해당 월의 방문자 수를 표시하고 싶을 때. 이런 경우 ggplot2에서 이중 Y축(sec.axis)을 활용하면 효과적으로 데이터를 비교할 수 있다.

[더 읽기]