매트랩 그래픽과 데이터 시각화 [데이터의 다양한 특성과 용도에 맞춘 시각화 방법]
- 원서명MATLAB Graphics and Data Visualization Cookbook (ISBN 9781849693165)
- 지은이스와프노닐 배너지(Swapnonil Banerjee), 니베디타 마줌다르(Nivedita Majumdar)
- 옮긴이이문호
- ISBN : 9788960779327
- 30,000원
- 2017년 01월 19일 펴냄
- 페이퍼백 | 344쪽 | 188*235mm
- 시리즈 : acorn+PACKT
책 소개
소스 파일은 아래 깃허브 페이지에서 내려 받으실 수 있습니다.
(https://github.com/AcornPublishing/matlab-cookbook)
요약
매트랩으로 1차원 데이터부터 2차원, 3차원 데이터, 그리고 고차원 데이터를 시각화해 쉽게 이해할 수 있도록 설명한다. 데이터 특성에 맞춰 다양한 범용 플롯 활용법부터 시작해 투명도, 조명, 뷰 제어 같은 그래프 고급 제어 기능, 고차원 데이터 변환 기법과 콜백 함수 기반의 대화형 그래픽 등 수준별로 다양한 예제를 제공하며, 이 과정에서 매트랩 그래프 활용법과 더불어 데이터 분석에 대한 통찰력을 얻을 수 있을 것이다.
이 책에서 다루는 내용
■ 매트랩 플롯 소개와 매트랩 그래프의 기본 및 고급 유형 이해
■ 일반적인 시각화 실수 사례와 이를 피하는 방법 소개
■ 1, 2, 3차원, 그 이상의 고차원 데이터 응용
■ 사용자 정의 레이블과 범례를 포함한 다양한 주석 기술 사용
■ 사용자 정의 배치, 조명, 투명도와 카메라 위치 잡기로 데이터 표시 설계
■ 애니메이션과 대화형 그래픽 구현
■ 적합한 영상 품질과 해상도로 발표와 출판을 위한 시각화 설계
이 책의 대상 독자
이 책은 특정 분석이나 탐색 데이터 시각화를 수행한 결과 표현에 관심이 있는 학계와 업계 실무자를 대상으로 한다. 데이터 자체는 임의의 소스에서 나올 수 있고, 데이터를 매트랩에 입력하기 위한 옵션을 논의한다. 고급 매트랩 경험이 필요하지는 않지만 매트랩 프로그래밍에 기본적으로 익숙하다고 가정한다. 예제를 작은 단계로 상세하게 세분화해, 새로운 데이터에 쉽게 적용할 수 있도록 한 흥미진진한 그래픽을 생성하기 위한 안내서다. 데이터 분석 워크플로우에 쉽게 통합할 수 있도록 사용자 정의를 위한 몇몇의 매력적인 옵션을 함수로 활용할 수 있게 만들었다.
이 책의 구성
1장, ‘매트랩 그래픽의 요소 사용자 정의–기본’에서는 매트랩에 내장된 그래프를 사용자 정의하는 매트랩 핸들 그래픽 기술의 사용 방법을 소개한다. 배치, 격자화, 레이블과 범례 등의 기본 그래프 요소를 변경하는 방법을 예제를 통해 보여준다. 또한 정보를 묘사하는 색상 사용을 시도하기도 했다.
2장, ‘1차원 데이터 표시에 뛰어들기’에서는 1차원 데이터 시각화에서 활용할 수 있는 옵션을 제시한다. 선 플롯, 막대 플롯, 분산형 플롯, 파이 차트, 줄기 플롯과 계단 플롯 같은 범용 차트 유형부터 시작한다. 더 나아가 상자 플롯과 꺾은선, 분할 선 그래프와 노드 링크 플롯 같은 특수한 그래프를 예제로 다룬다. 한 예제는 달력에 일별 데이터를 바로 보여주는 히트 맵 사용에 전념한다. 마지막 예제는 결과를 시각화하는 특수 플롯을 필요로 하는 분포 데이터 분석과 시계열 데이터 분석 같은 분석 접근 방법에 중점을 둔다.
3장, ‘2차원 데이터 표시 마무리’에서는 2차원 데이터 시각화에서 활용할 수 있는 옵션을 제시한다. 분산형 플롯과 분산형 플롯 스무딩 관련 옵션 같은 범용적인 차트 유형부터 시작하며, 2D 노드 링크 플롯, 계통도와 군집도 같은 설계를 예제로 다룬다. 더 나아가 등고선 플롯 예제를 다룬다. 한 예제는 비균등 격자에 있는 수집된 데이터를 다루는 방법에 전념한다. 마지막 예제는 단계구분도, 기호가 있는 주제도, 유선도로 지도에 있는 데이터를 표현하는 특수한 그래픽을 다룬다.
4장, ‘매트랩 그래픽의 요소 사용자 정의–고급’에서는 매트랩에 내장된 그래프인 이름 그대로 투명도, 조명, 뷰 제어를 사용자 정의할 수 있는 고급 기능을 소개한다.
5장, ‘빅 리그에서 3차원 데이터 출력 다루기’에서는 체적(volumetric) 데이터에 중점을 둔 3차원 데이터 시각화에서 활용할 수 있는 옵션을 제시한다. 3D 분산형 플롯부터 시작하여, 이후 스칼라 데이터 시각화를 위한 slices, isosurfaces, isnormals와 isocaps를 예제로 다룬다. 다음으로는 흐름 선과 벡터 데이터 시각화를 위한 선, 리본이나 관을 이용한 방향을 묘사하는 다양한 옵션 사용법을 다룬다. 몇몇의 예제는 3D 데이터 탐색을 위한 효율적인 방법을 만드는 조명과 뷰 제어 메커니즘으로 기본 3D 기술을 조합한다.
6장, ‘고차원 데이터 설계’에서는 고데이터 차원을 위한 시각화 옵션을 제시한다. 예제는 2D의 다중 차원을 어떻게 표현하는지 보여주는 글리프와 평행좌표 사용법을 다룬다. 다음 예제는 동일한 목적을 달성하기 위해 활용 가능한 그래픽 기능 중에서 덧차원을 어떻게 코드화하는지 보여준다. 추가 예제는 데이터를 식별하여 핵심적인 데이터 크기로 초점을 이동하는 주성분 분석이나 방사 좌표 투영 같은 기술을 사용해 데이터를 변환하는 방법을 보여준다.
7장, ‘대화형 그래픽과 애니매이션 생성’에서는 대화형 그래픽과 애니메이션을 생성하는 매트랩의 능력을 시연한다. 예제는 사용자 상호작용으로 사용자 정의 행동을 추가하는 콜백 기능을 프로그래밍하기 위한 핵심을 다룬다. 다음 예제는 데이터 브러싱과 연결 등의 탐색 기술을 포함해 그래프로부터 사용자에게 직접 입력을 받는 방법을 다룬다. 다른 예제는 프레임 시퀀스를 애니메이션화하는 방법 또는 애니메이션 효과를 생성하기 위해 지우고 다시 그리는 전략을 다룬다.
8장, ‘출판과 발표를 위한 그래픽 완료’에서는 영상 품질을 조정하고 다른 발표 목표에 부합되도록 형식화하는 옵션을 다루며, 하드 카피나 전자 포맷 중 발표나 출판을 위한 그래픽을 설계하는 동안 명심해야 하는 팁을 포함한다.
본문에 쓰인 컬러 이미지는 여기에서 내려 받으세요.
목차
목차
- 1장 매트랩 그래픽의 요소 사용자 정의 - 기본
- 소개
- 첫 매트랩 플롯 만들기
- 겹침이 없는 긴 눈금 레이블 배치
- 축에 고정된 주석 사용
- 가독성을 위한 터프트 스타일 격자화
- 범례로 혼란 정리
- 데이터 변환으로 상세한 시각화
- 다중 그래프 배치 설계
- 알고리즘 테스트 결과를 비교하기 위한 시각화
- 2장 1차원 데이터 표시에 뛰어들기
- 소개
- 파이 차트, 줄기 플롯과 계단 플롯
- 상자 플롯
- 꺾은선
- 분할선 그래프
- 노드 링크 플롯
- 달력 열지도
- 분산 데이터 분석
- 시계열 분석
- 3장 2차원 데이터 표시 마무리
- 소개
- 2D 분산형 플롯
- 분산형 플롯 스무딩
- 양방향 오차 막대
- 2D 노드 링크 플롯
- 계통도와 군집도
- 등고선 플롯
- 분산형 데이터 격자화
- 단계구분도
- 기호가 있는 주제도
- 유선도
- 4장 매트랩 그래픽의 요소 사용자 정의–고급
- 소개
- 투명도
- 조명
- 뷰 제어
- 조명, 투명도, 뷰 간의 상호 작용
- 5장 빅 리그에서 3차원 데이터 출력 다루기
- 소개
- 3D 분산형 플롯
- slice(횡단면 뷰)
- isosurface, isonormals와 isocaps
- 흐름 단면
- 흐름선, 흐름 리본, 흐름관
- 기술을 조합한 스칼라와 벡터 데이터
- 카메라 모션으로 탐색
- 6장 고차원 데이터 설계
- 소개
- 고분광 데이터 융합
- 서베이 플롯
- 글리프
- 평행 좌표
- 트리 맵
- 앤드류 곡선
- 빠른 그래프를 위한 데이터 축소
- 주성분 분석
- 방사 좌표 시각화
- 7장 대화형 그래픽과 애니메이션 생성
- 소개
- 콜백 함수
- 그래프로부터 사용자 입력 받기
- 연결된 축과 데이터 브러싱
- 확대경 데모
- 캡처한 프레임으로 애니메이션 재생
- 흐름 입자 애니메이션
- 차트 요소의 점진적인 변화를 통한 애니메이션
- 8장 출판과 발표를 위한 그래픽 완성
- 소개
- 포맷과 해상도 내보내기
- 문서 안에 들어가는 벡터 그래픽
- 화면 폰트 크기와 종횡비 보존
- 코드와 그래픽을 웹페이지에 게시