[spotfire] 5. 차트 그리기 ① - 그리는 순서, 생성, 선택




5. 차트 그리기

차트를 그릴 때 가장 중요한 한 가지는 일단 차트를 그려보는 것입니다. 데이터 분석과 시각화를 오래 경험한 전문가조차도 한번에 만족하는 차트를 얻는 것은 쉽지 않는 일입니다. 많은 경우, 구상한 그래프나 관습적으로 많이 사용한 차트를 내가 가진 데이터로 그려본 후, 조금씩 수정하는 작업을 반복합니다. 이것은 차트 작업마다 목적과 데이터가 항상 달라지기 때문에 필연적으로 생성과 수정을 반복합니다. 따라서 실제 사용자 역시 완벽한 차트를 한번에 그리기 보다는, 일단 차트를 만들어 보는 것을 추천합니다.

 

5.1. 차트 그리는 순서

차트를 그리기에 앞서, 가장 먼저 해야 되는 것은 차트를 구상하는 것입니다. 차트를 구상은 그리는 사람의 목적과 보는 사람의 이해를 바탕으로 차트의 요소들을 정의하고 유형, 종류, 데이터 값들을 선정하는 것입니다. 구상 이후에는 본격적으로 차트 모습을 만들기 위해 기능적으로 어떻게 만들어야 되는지 순서와 방법을 알고 있어야 합니다. Spotfire에서 차트 그리는 과정은 보통 아래와 같은 순서로 진행하게 됩니다.

 

0. 차트 구상하기

1. 차트 종류 선택과 생성

2. 데이터 테이블 선택

3. x, y축 선택

4. , 격자 및 기타 차원 선택

5. 차트 모습 변경

6. 차트 확인 후 수정(1~5 반복)

물론 이 순서가 아니라 순서를 바꿔서 진행해도 상관은 없지만 큰 부분부터 선택과 설정을 시작하여 최종에는 작은 세밀한 선택과 설정을 부여하는 설정 방법 입니다. 이 순서대로 따라가면서 예제를 그려보겠습니다. 데이터는 3.4 예시 데이터 테이블에서 소개해 드린 주식 6 종목의 데이터를 사용하겠습니다.

 

n 차트 그리는 순서

0. 차트 목적: 종목 별, 연도 별 EPS 차트 그리기

1. 차트 종류 선택과 생성: 산점도(Scatter plot)

2. 데이터 테이블 선택: Ticker_info

3. x, y축 선택: x(Ticker), y(EPS)

4. , 격자 및 속성 설정: (EPS), 격자(Year)

5. 차트 모습 변경: x(가이드라인, 수직라벨), y(줌 슬라이더)

6. 차트 확인 후 수정

 

차트 그리는 순서를 거창하게 설명해 놓았지만 결국은 해당되는 데이터 테이블을 찾고 구상해 둔 차트 모습대로 각 차원에 컬럼을 설정해주고, 마지막으로 세부적인 설정을 통해 차트를 완성합니다. 꼭 위의 순서를 따를 필요 없이 각 상황에 맞게 진행 하시면 큰 무리 없이 원하는 차트를 완성할 수 있을 것 입니다. 각 순서를 달성하기 위한 기능은 이제 차근차근 알아보겠습니다.


 

5.2. 차트 구상하기

차트를 그릴 때는 그리는 사람의 목적과 보는 사람의 이해를 고려하여 차트를 그려야 합니다. 그리는 사람의 목적을 반영하기 위해서는 차트 요소들과 사용하는 컬럼의 종류 등을 미리 구상해 보는 것이 좋습니다. 그리고 보는 사람의 이해를 위해서는 차트의 x, y축 간의 관계, 데이터의 추세, 차트의 부수적인 표현 등을 고려하여 차트를 그려야 합니다.

 

l  5.2.1. 차트 요소

그렇다면 먼저 그리는 사람의 목적을 반영하기 위해서는 차트 요소들을 어떻게 표현 할 수 있을까요. 차트에서 중요하게 표현할 수 있는 차원은 x, y입니다. 물론 입체, 3차원, 고차원 등을 차트로 표현 할 수도 있지만, 일반적으로 평면 상에 표시되는 차트는 2개의 차원이 메인으로 들어갑니다. 나머지 표현해야 되는 차원들은 부수적으로 격자(Trellis), (Color), 모양(Shape), 크기(Size) 등으로 표현할 수 있습니다. Spotfire 데이터 구조에서는 컬럼이 최소 논리 단위 즉, 차원입니다. 따라서 Spotfire에서 차트를 그리기 위해서는 중요한 컬럼 2개를 선정하고 나머지 부수적인 컬럼들을 격자, , 모양, 크기 등의 부수적인 요소로 표현하면, 1차적으로는 본인의 목적이 드러나는 차트를 그릴 수 있습니다.

 


차트 요소들; x, y, 격자, , 모양, 크기

 

l  5.2.2. 차트 유형, 종류, 그리고 데이터

한편, 사람들은 살아가면서 알게 모르게 많은 종류의 차트를 보면서 생활합니다. 학창시절 수학, 과학에서도 많이 보며, 기업에서도, 뉴스에서도 복잡한 데이터를 효과적으로 보여주기 위해 다양한 종류의 차트를 경험해 왔습니다. 그래서 차트 그리는 것에 능숙하지 않아도 어느정도 차트를 꾸밀 수 있는데, 이처럼 차트는 일반적으로 또는 암묵적으로 알고 있는 규칙들이 숨어 있습니다. 이와 같은 규칙들을 잘 따르면, 보는 사람이 빠르고 폭넓은 이해를 할 수 있습니다.

 


차트 유형, 종류, 데이터 값에 따른 대표 그래프

 

먼저 차트 유형은 대게 x축에는 원인에 해당되는 독립변수를, y축에는 종속변수를 두어 x축과 y축 간의 관계를 표시하는 원인-결과 그래프를 그립니다. 다른 종류로는 x축에 시간을, y축에 표현하고 싶은 변수를 두어 시간의 흐름에 따라 값이 변하는걸 확인하는 시계열 그래프도 있습니다. 또한 x y축을 각각의 공간 축으로 하여 색이나 크기 등으로 값을 표기하는 좌표 평면 그래프를 많이 그립니다. 차트의 종류에서 있어서도 가장 널리 쓰이는 산점도(Scatter plot)와 이산적인 수량의 변화를 나타내는 막대 그래프(Bar chart), 연속적인 수량의 변화를 나타내는 선 그래프(Line graph) 그리고 공간의 고저를 나타내는 등고선도(Contour map)나 히트맵(Heat map) 등 종류도 어느정도 정형화 된 틀이 있습니다. 또한 데이터 값에 있어서 사람들은 데이터의 추세(Trend, Momentum), 이동(Shift) 그리고 특이점(Peak point, Irregular point, Singularity)를 주목하기 때문에 이를 이용해 강조 할 수 있습니다. 종합해보면, 차트를 그릴 때에는 먼저 차트를 그리는 목적에 맞게 각각의 차트 요소들에 어떤 컬럼을 넣을지를 정하고 이를 일반적으로 자주 사용하는 차트 유형이나 차트 종류를 선택하여 꾸며야 합니다. 추가적으로 부수적인 요소와 추세, 이동, 특이점들을 활용해서 강조점을 주는 것이 좋습니다.

 

 

5.3. 차트 종류 선택과 생성

Spotfire에서 차트는 크게 3가지 방법으로 생성할 수 있습니다. 차트 종류 선택하기, 사용할 컬럼 선택하기, 그리고 검색하기 입니다. 각 방법은 도달하는 결론은 동일하지만 차트를 생성하는 기준이 다릅니다. 차트 종류를 선택하여 그리는 것이 명확하고 이후 변경이 적어 가장 많이 사용하는 방법입니다.

 

l  5.3.1. 차트 종류 선택으로 차트 생성

Spotfire에서는 13가지의 차트와 4가지 표를 시각화 차트로 지원하고 있습니다. 차트 종류 선택하기는 총 17가지의 차트에서 하나를 선택하는 것입니다. 차트 17가지 종류는 아래와 같습니다.

 

- 막대그래프(Bar chart)

- 폭포수 그래프(Waferfall chart)

- 선그래프(Line chart)

- 복합그래프(Combination chart)

- 파이그래프(Pie chart)

- 산점도(Scatter plot)

- 3D 산점도(3D scatter plot)

- 지도차트(Map chart)

- 트리맵(Treemap)

- 히트맵(Heat map)

- KPI 차트(KPI chart)

- 평행좌표그래프(Parallel coordinate plot)

- 박스그래프(Box plot)

- (Table)

- 크로스테이블(Cross table)

- 그래픽테이블(Graphical table)

- 요약테이블(Summary table)

 

각 차트 종류에 대한 자세한 설명은 6. 차트 종류별 그래프 그리기에서 다룹니다. 차트 종류는 아래의 위치에서 선택할 수 있습니다.

위치: 시각화 유형 - 차트 종류 선택

 


시각화 유형에서 차트 종류 선택

 

시각화 유형을 누르면 Spotfire에서 제공하는 모든 차트 종류들이 나오게 됩니다. 간단하게 ①시각화 유형을 클릭하고 ②차트 종류를 선택하는 것으로 차트를 생성할 수 있습니다. 최종적으로 메인 화면에 ③과 같은 차트가 생성됩니다.

 

 

l  5.3.2. 컬럼 선택으로 차트 생성

데이터 테이블 내에서 차트에 활용할 컬럼을 선택하여 시각화 하는 방법입니다. 데이터 형식이나 값에 따라 일반적으로 많이 그리는 차트들이 있습니다. 데이터 테이블 내의 데이터 컬럼을 선택하면 내장된 규칙에 따라 대표적인 차트를 추천해 줍니다. 물론 차트를 선택 후에도 세부적인 수정은 필수입니다.

위치: 분석의 데이터 - 데이터 테이블 선택 - 컬럼 선택 - 추천 차트에서 선택

 


분석의 데이터에서 사용할 컬럼 선택

 

분석의 데이터(Data in analysis)에서의 주요 기능은 데이터 테이블의 내용 확인 하는 용도로 많이 사용합니다. 하지만 데이터 그리는 용도로 사용할 수도 있습니다. 분석의 데이터 선택하면 데이터 테이블과 그에 속해있는 컬럼 이름들이 표시 됩니다. 차트에 사용할 데이터 테이블과 컬럼들을 선택하면 오른쪽에 추천하는 차트 종류들이 뜹니다. 최종적으로 이 추천 차트에서 하나를 선택합니다. 이후 메인 화면에 선택한 차트가 뜨게 됩니다.

 

l  5.3.3. 검색으로 차트 생성

차트를 생성하는 방법 중 마지막으로 소개할 것은 검색하기 입니다. 툴바에는 검색 할 수 있는 돋보기 버튼이 있습니다. 돋보기는 도움말 기능과 더불어 차트 추천 기능을 제공합니다. 차트에 넣고 싶은 컬럼이나 차트 종류 등을 검색하면 관련성 높은 차트들을 추천해 줍니다. 마찬가지로 선택 후 세부적인 설정은 필수입니다.

위치: 툴바 - 차트 종류 선택 / 필드명 입력 / 검색으로 탐색

 


검색 기능과 위치

 

툴바에는 기본적으로 검색하는 기능이 포함되어 있습니다. 이 검색에서 차트와 관련된 Ticker, Year, EPS 등을 검색하면 아래에 추천 차트들이 뜨게 됩니다. 이후 메인 화면에 ④차트가 생성됩니다. 검색하기 기능을 알고 있으면 매우 간단한 키워드와 마우스 선택으로 차트를 그릴 수 있습니다.

 

l  5.3.4. 차트 종류 변경

위의 3가지 방법 중에 컬럼 선택하기나 검색하기 방법은 추천 차트에 모든 종류의 차트가 나오지 않아서 사용자가 구상한 차트의 종류는 없는 경우가 종종 발생합니다. 지금 예제의 경우에도 차트의 종류는 산점도(Scatter plot)으로 계획했지만 컬럼 선택하기, 검색하기 방법에서 산점도 차트는 없습니다. 따라서 지금과 같이 차트 종류가 없을 경우 그려진 차트의 종류를 변경해야 될 때가 있습니다. 차트 종류 변경은 차트에서 우클릭 하면 변경할 수 있습니다.

위치: 차트 우클릭 - 시각화를 전환할 대상 - 차트 선택

 



차트 종류 변경하는 방법

 

위 그림과 같이 기존 그려진 차트 위에서 우클릭을 하면 다양한 설정들을 선택할 수 있습니다. 그 중에서 시각화를 전환할 대상(Switch visualization to)을 선택하고 원하는 차트 종류를 선택하면 변경이 가능합니다.


 

5.4. 데이터 테이블 선택

앞서 차트 종류를 선택하고 차트를 생성할 때 컬럼 선택하기 또는 검색하기로 그렸다면 데이터 테이블은 이미 선택한 상태일 것 입니다. 하지만 많이 사용하는 차트 종류 선택으로 차트를 생성하면, 차트에 적용되는 데이터 테이블은 디폴트(Default) 설정이 되어 있는 데이터 테이블로 차트를 그리게 됩니다. 이처럼 차트에 데이터 테이블이 다르게 설정되어 있다면 이를 바꿔주는 방법이 필요합니다. 차트에 데이터 테이블을 넣는 방법은 2가지가 있습니다. 범례에서 선택하는 방법과 속성에서 선택하는 방법입니다.

 

l  5.4.1. 범례에서 데이터 테이블 선택

범례(Legend)는 차트의 기본적인 정보를 제공하는 차트의 한 요소 입니다. Spotfire에서는 차트를 생성하면 기본적으로 오른쪽에 범례를 표시해 줍니다. 범례에서는 데이터 테이블 역시 표시해 주며, 이를 누르면 가지고 있는 데이터 테이블 목록이 뜨면서 데이터 테이블을 바꿔 넣어 줄 수 있습니다.

 


범례에서 데이터 테이블 변경하는 방법


l  5.4.2. 속성에서 데이터 테이블 선택

속성(Properties)은 차트를 그리는데 가장 중요하고 많이 사용하는 기능입니다. 차트의 거의 모든 기능들을 속성(Properties)에서 부여할 수 있습니다. 속성에 대한 자세한 설명은 뒤에서 진행할 예정입니다.

위치: 차트 우클릭 - 속성 / 차트 우상단 기어 아이콘

 


속성에서 데이터 테이블 변경하는 방법

 

위 화면과 같이 차트에서 우클릭 시 나오는 기능들 중에 속성을 클릭하면 속성 창이 따로 뜨게 됩니다. 이 속성 창에서 데이터 탭 그리고 데이터 테이블에서 데이터 테이블을 변경할 수 있습니다.

 

5.5. x축과 y축 선택

차트 종류와 데이터 테이블을 선택이 완료 되었다면 본격적으로 차트의 세부적인 내용을 넣어야 할 차례입니다. x축과 y축에 컬럼을 지정하여 차트의 대략적인 모습을 그려줘야 합니다. 예제에서는 x축에 Year, y축에 EPS를 넣을 예정입니다. 각 축에 마우스를 가져가면 반투명으로 변하면서 클릭이 가능합니다. 축에 컬럼을 넣기 위해서는 차트의 축에서 좌클릭을 통해 넣을 수 있습니다.

 


x축과 y축에서 좌클릭

 

차트의 축에서 좌클릭을 하면 위 화면과 같이 축을 지정하는 창이 뜹니다. 창에서는 컬럼 선택과 집계 함수(Aggregation) 선택, 그리고 표현식(Expression) 넣기를 할 수 있습니다. 컬럼 선택에서는 x축에 Ticker 컬럼을, y축에 EPS 컬럼을 선택합니다. 특히 y축에 컬럼을 선택한 후에는 집계 함수도 선택해야 합니다. 두 과정을 표현식으로 한번에 나타낼 수도 있으며, 표현식은 컬럼과 집계 함수 내용이 포함되게 작성해야 오류 없이 차트가 완성됩니다. 집계 함수는 여러 개의 데이터(로우)에서 대표할 데이터를 산출하는 방법을 나타냅니다. 예제에서는 Avg(평균)을 넣도록 합니다. 컬럼 선택과 집계 함수 선택이 완료되면 x축과 y축 선택은 완료되게 됩니다.

 


x축과 y축에서 우클릭

 

우클릭과 좌클릭 시 모습이 다르게 나타나지만 결국은 컬럼 선택하는 동일한 과정입니다. 우클릭 시 위와 같이 기존에 있던 컬럼을 삭제하거나, 마킹된 것만 선택, 속성으로 선택, 그리고 표현식으로 선택 등으로 축에 컬럼을 선택할 수 있습니다. 추가적으로 축에 여러 개의 컬럼을 넣을 수도 있습니다. 넣는 방법은 간단합니다. 단순하게는 축 지정할 때 생긴 반투명 버튼 중 (+) 버튼을 클릭하여 컬럼을 추가합니다. 다른 방법으로는 표현식을 사용할 수 있습니다. 컬럼 사이 사이에 콤마(,)를 입력하면 여러 컬럼을 넣을 수 있습니다. 예를 들면 [컬럼 A], [컬럼 B], [컬럼 C]를 표현식으로 입력하면 컬럼 A, 컬럼 B, 그리고 컬럼 C가 하나의 축에 적용하게 됩니다.

 

l  5.5.1. 집계 함수

Spotfire에서 집계 함수(Aggregation method)는 축에서 컬럼을 지정할 때, 컬럼을 추가할 때, 그리고 박스 플롯을 그릴 때 등 자주 사용됩니다. 통계에 익숙한 사용자는 집계 함수가 어떤 의미를 가지는지 알지만, 보통의 사용자들은 일부 제외하고는 생소한 함수들이 많이 보일 것 입니다. 많이 사용되는 방법들은 기억해두고, 나머지는 필요할 때 찾아보면 좋을 것 같습니다. 중요하고 자주 사용하는 함수는 파란색 표시를 하였습니다.

집계 함수

의미

sum

합계

avg(average)

평균

count

로우 개수

uniquecount

중복을 제외한 로우 개수

min

최소값

max

최대값

median

중간값

stddev(standard deviation)

표준편차

stderr(standard error)

표준오차

var(variance)

분산

cumulative sum

누적 합계

moving average

이동 평균

L95

신뢰구간 95%의 하한

U95

신뢰구간 95%의 상한

Q1(first quartile)

상위 25%

Q3(third quartile)

하위 25%

LAV(lower adjacent value)

하위 근접값, LIF 직전 위 값

UAV(upper adjacent value)

상위 근접값, UIF 직전 위 값

countbig

로우의 개수, long-integer 형식을 반환

first

로우 순서상 첫번째

geometricmean

기하평균

IQR(interquartile range)

Q3-Q1

last

로우 순서상 마지막

LIF(lower inner fence)

Q1-1.5*IQR

LOF(lower outer fence)

Q1-3*IQR

mostcommon

동일 값이 가장 많은 값(빈도가 높은 값)

outliers(outlier count)

LAV, UAV 바깥값

p10(10th percentile)

10%째 값

p90(90th percentile)

90%째 값

pctoutliers(outlier percenatage)

LAV, UAV 바깥값을 비율로 환산

product

전체 곱 (factorial)

range

max-min

UIF(upper inner fence)

Q3+1.5*IQR

UOF(upper outter fence)

Q3+3*IQR

concatenate

모든 로우 값을 연결

uniqueconcatenate

중복을 제외하여 로우 값을 연결

댓글 쓰기

0 댓글