선 그래프
시간의 변화에 따라 자료를 수집한 경우 이를 시계열 자료(times series data)라고 한다.
시계열 자료를 분석할 때에는 다양한 분석 방법이 존재하는데 그중 선그래프를 통해서 증감 추이를 확인해보자.
month | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
late | 5 | 8 | 7 | 9 | 4 | 6 | 선 그래프12 | 13 | 8 |
month late 선 그래프 plot(month, #x data late, #y data main="선 그래프 선 그래프 지각생 통계", #제목 type="l", #그래프의 종류 선택(알파벳) Line lty=1, #선의 종류(Line Type) 선택 lwd=1, #선의 굵기 선택 xlab="Month", #x축 레이블 ylab="Late cnt" #y축 레이블 ) |
선그래프를 작성하는 함수는 산점도를 작성할 때 사용한 plot()함수이다. plot() 함수에서 매개변수 type의 값을 "l"로 하면 선그래프가 작성된다. type의 값은 숫자가 아니라 알파벳이다. type의 값에 따른 선그래프의 종류는 다 다르다.
매개변수에서 lty는 선의 종류를 지정하는데 사용되며, 매개변수값에 따른 선의 종류는 각각 다르다.
그래프의 해석
지각생 수가 5월에 급감했다가 7,8월에는 급증하는 것을 알 수 있다. 이러한 관찰 결과를 바탕으로 7,8월에 왜 지각생이 급증하는지 원인을 파악해보고 지각생을 줄이기 위한 방안을 수립하는 것이 필요하다.
Matplotlib 두 종류의 그래프 그리기¶
앞에서 소개한 이중 Y축 표시하기를 선 그래프 이용해서 두 종류의 그래프를 하나의 그래프 영역에 표현해보겠습니다.
Keyword: 두 종류의 그래프, set_zorder(), zorder
■ Table of Contents
1) 선 그래프 기본 사용¶
우선 ax1.twinx()로 X축을 공유하는 이중 Y축을 만들고,
ax1.plot()과 ax2.bar()를 사용해서 y1, y2 데이터를 각각 꺾은선 그래프와 막대 그래프의 형태로 나타냈습니다.
(두번째 Y축의 레이블에 표현한 수학적 표현의 사용에 대해서는 링크를 참고하세요.)
Matplotlib 두 종류의 그래프 그리기 - 기본 사용 ¶
2) 그래프 순서 지정하기¶
위의 그림을 보면 녹색의 꺾은선 그래프가 막대의 뒤에 그려져 있어서 잘 보이지 않습니다.
아래 예제에서는 set_zorder() 메서드를 사용해서 선 그래프 그래프가 표시될 순서를 지정해 보겠습니다.
set_zorder() 메서드는 z-축 방향의 순서를 지정합니다.
아래 그림과 같이 zorder가 낮을수록 먼저 그려지고, zorder가 높을수록 나중에 그려집니다.
우선 ax2.get_zorder() 메서드를 사용해서 ax2의 zorder를 얻고,
ax2의 zorder보다 큰 값을 ax1의 zorder로 지정함으로써 그래프가 항상 나중에 그려지도록 설정했습니다.
선 그래프
안녕하세요. 홍박사입니다. 이번 포스팅에서는 SPSS로 그룹별 선그래프를 그리는 방법을 이야기해보겠습니다. SPSS는 가장 많이 쓰이는 통계 프로그램입니다. IBM이 인수하여 요즘은 IBM SPSS로 불립니다. SPSS는 Statistical Package for the Social Sciences의 줆말 입니다. 실제로도 선 그래프 공학분야 보다는 사회과학하시는 분들이 많이 쓰는 프로그램입니다.
SPSS의 장점은 쉬운 그래픽 인터페이스 (GUI)입니다. 클릭 몇번으로 어려운 통계분석과 그래프를 순식간에 그릴 수 있습니다. 엑셀로 그리려면 30분 걸릴 그래프를 SPSS를 이용하면 1분도 안되서 완성할 수 있습니다. 하지만 그래프의 퀄리티가 좋지가 않다는 매우 큰 단점이 있습니다. 따라서 SPSS로 그린 그래프를 논문에 사용하기에는 무리가 따릅니다. 물론 잘 편집하면 될 수도 있겠지만 그래프 편집도 굉장히 힘들고 귀찮습니다. 이러한 특징 때문에 저는 SPSS 그래프 기능을 자료의 탐색적 분석에 많이 씁니다. 쉽게 말하면, 짧은 시간에 데이터의 생김새를 볼 때 유용하다고 보시면 됩니다.
그룹별로 평균 데이터를 선그래프로 그려보겠습니다. 만약 두 개의 그룹 데이터가 있다고 생각해봅시다. 여기서 그룹 데이터란 명목형 자료를 말합니다. (이 포스팅에 쓰인 자료는 실제 제가 수집한 자료의 일부를 발췌하여 사용하는 것입니다.)
JJLEECORD
인터넷이나 신문 기사 중에서 보이는 여러 가지 차트를 선 그래프 보면 차트를 표현하는 방식이 명확해서 좀 더 이해하기 좋다거나 보기에 좋아서 ‘있어보인다’라는 생각이 종종 드는 차트들이 있는데요. 포토샵이나 기타 디자인 도구를 사용하지 않고 매일 사용하는 오피스 만으로도 상당 부분 커버를 할 수 있습니다.
오늘은 그중에서도 엑셀을 통해 꺾은선 그래프를 좀 더 멋지게 표현할 수 있는 방법에 대해 공유드립니다.
아래와 같이 꺾은선 그래프가 있을 때 아래쪽으로 그라데이션 효과를 적용해 보겠습니다.
1. 방법은 혼합형 차트를 구성하되 한 가지 그래프로 보이게 하는 방법입니다.
판매량 데이터를 한번 더 차트에 추가합니다. C2:C14 범위를 선택하고 복사(Ctrl+C) 한 후 차트를 선택하고 붙여 넣기(Ctrl+V)합니다. 이렇게 하면 꺾은 선의 색상이 변한 것처럼 보이는데요. 변한 게 아니라 기존 파란색 꺾은선 위에 주황색 꺾은선이 덮여저 있는 상태입니다.
2. 새로 추가된 계열을 영역형 차트로 변경합니다. 주황색 선 그래프를 선택한 후 상단 메뉴- [차트]-[영역형 차트 삽입]을 클릭합니다. [2차원 영역형]-[영역형] 차트를 선택합니다. (주황색 선 선 그래프 그래프 선택 후 오른쪽 마우스 클릭 [계열 차트 종류 변경]을 통해 하셔도 됩니다.)
CSV 파일 다루기와 데이터 시각화¶
데이터 분석을 위해 가장 기본적으로 할 수 있고, 해야 하는 일이 데이터 시각화이다. 데이터를 시각화하는 것은 어렵지 않지만, 적합한 시각화를 만드는 일은 매우 어려우며, 많은 훈련과 직관이 요구된다.
여기서는 데이터를 탐색하여 얻어진 데이터를 시각화하는 기본적인 방법 네 가지를 배운다.
오늘이 주요 예제¶
서울과 수도권의 1949년부터 2010년까지 인구증가율 데이터가 아래와 같다.
![]() |
이제 위 파일을 읽어서 서울과 수도권의 인구증가율 추이를 아래 그림에서처럼 선그래프로 나타내 보자.
![]() |
데이터 시각화 도구 소개: matplotlib 라이브러리¶
데이터 시각화를 위한 도구 중에서 간단한 막대 그래프, 히스토그램, 선 그래프, 산점도를 쉽게 그릴 수 있는 많은 도구들을 포함한 라이브러리이다. 이 라이브러리에 포함된 모듈 중에서 여기서는 pyplot 모듈에 포함된 가장 기본적인 몇 개의 도구들의 활용법을 간단한 예제를 배우고자 한다.
data 디렉토리의 Seoul_pop1.csv 파일에는 1949년부터 5년 간격으로 측정된 서울시 인구수를 담은 데이터가 들어 있으며, 그 내용은 다음과 같다.
파일에서 데이터 목록 추출하기¶
연도별 서울시 인구수의 연도별 변화추이를 간단한 선그래프를 이용하여 확인하려면, 먼저 x축에 사용될 년도 목록과 y축에 사용될 인구수 목록을 구해야 선 그래프 한다.
먼저 이전에 배운 기술을 활용하고, 이후에 보다 쉽게 선 그래프 활용하는 고급기술을 활용한다.
주의: 확장자가 csv인 파일은데이터가 쉼표(콤마)로 구분되어 정리되어 있는 파일을 의미한다. csv는 Comma-Separated Values의 줄임말이다. 따라서, csv 파일을 읽어들인 후, 각 줄을 쉼표 기준으로 분리(split)하면 이전에 공백 선 그래프 기분으로 데이터를 쪼개는 방식과 동일한 결과를 얻을 수 있다. 즉, split 메소드의 인자로 여기서는 쉼표를 사용하면 된다.
0 개 댓글