본문 바로가기

데이터 분석/시각화102

[Matplotlib] 눈금 라벨(Tick Label) 폰트 사이즈, 굵기 설정하기 안녕하세요~ 꽁냥이에요. 이번 포스팅에서는 지난 포스팅에서 다룬 tick_params를 이용한 눈금 라벨 꾸미기에서 다루지 못했던 내용을 소개하려고 합니다. 여기서는 간단하게 tick_params를 쓰지 않고 눈금 라벨 폰트 사이즈를 바꾸는 방법과 굵기(예: 볼드) 설정 방법에 대해서 알아보겠습니다. tick_params를 이용한 눈금 및 눈금 라벨 꾸미기(라벨 회전, 크기, 색상 등)에 대한 내용은 아래 포스팅을 참고해 주세요. [Matplotlib] 눈금과 눈금 라벨 꾸미기 (feat. tick_params) [Matplotlib] 눈금과 눈금 라벨 꾸미기 (feat. tick_params) 안녕하세요~ 꽁냥이입니다. 데이터 시각화를 하다 보면 좌표의 눈금과 눈금 라벨을 커스터마이징하고 싶을 때가 있.. 2023. 5. 24.
[Matplotlib] 메인 눈금(Major Tick), 서브 눈금(Minor Tick) 라벨 따로 지정하기 (feat. MultipleLocator) 안녕하세요~ 꽁냥이에요. 꽁냥이가 시각화를 하다가 메인 눈금(Major Tick), 서브 눈금(Minor Tick)에 라벨을 따로 설정해야 할 일이 생겼는데 이게 꽤나 번거로운 작업이어서 이번 포스팅에 정리해보려고 합니다. 메인 눈금(Major Tick), 서브 눈금(Minor Tick) 라벨 따로 지정 먼저 아래 코드는 A, B Class에서 5명의 수학, 역사, 컴퓨터 성적을 박스 플롯으로 그린 것입니다. 그러고 나서 A, B Class는 서브 눈금(Minor Tick) 라벨로하고 과목은 메인 눈금(Major Tick) 라벨로 설정할 것입니다. 여기서는 핵심적인 부분만 설명하기로 하고 나머지는 주석을 참고해 주세요. import pandas as pd import numpy as np import m.. 2023. 5. 18.
[Matplotlib] 눈금과 눈금 라벨 꾸미기 (feat. tick_params) 안녕하세요~ 꽁냥이입니다. 데이터 시각화를 하다 보면 좌표의 눈금과 눈금 라벨을 커스터마이징하고 싶을 때가 있습니다. 예를 들면 x축에 날짜가 들어가서 가로로 쓰면 오버랩이 발생하여 90도 회전한다거나 눈금 라벨을 크게 하는 것처럼 말이죠. Matplotlib에서 tick_params를 이용하면 눈금과 눈금 라벨을 변경할 수 있는데요. 이번 포스팅에서는 tick_params의 사용법을 알아보겠습니다. tick_params 사용법 tick_params는 눈금과 눈금 라벨을 꾸미는 기능을 제공하는데요. 여기서는 꽁냥이가 많이 사용하는 기능 위주로 소개하겠습니다. 1) 눈금 라벨 회전 : rotation or labelrotation tick_params에서 rotation 또는 labelrotation 인자.. 2023. 4. 12.
[Matplotlib] 시간에 따른 선 그래프(Line Chart)와 박스 플롯(Box Plot, 상자 수염 그림) 같이 그리기 안녕하세요~ 꽁냥이에요. 박스 플롯이나 선 그래프 둘 다 그 자체로도 훌륭한 시각화 수단이지만 같이 사용하게 되었을 경우 더 많은 정보를 한눈에 보여줄 수 있습니다. 이번 포스팅에서는 Matplotlib을 이용하여 박스 플롯과 선 그래프를 같이 그려보는 방법에 대해서 알아보겠습니다. Matplotlib을 이용한 선 그래프나 박스 플롯을 그리는 방법은 아래 포스팅을 참고해 주세요. [상자 수염 그림(Box and Whisker Plot)] 1. Matplotlib을 이용하여 상자 수염 그림 그리기 [상자 수염 그림(Box and Whisker Plot)] 2. Matplotlib을 이용하여 그룹 상자 수염 그림(박스 플롯) 그리기 [선 그래프(Line graph)] 1. Matplotlib을 이용하여 선 .. 2023. 2. 10.
[Matplotlib] 분봉 차트(Candle Chart, 캔들 차트) 그리기 반갑습니다~ 꽁냥이입니다. 주가를 보다 보면 분봉 차트(Candle Chart, 캔들 차트)를 많이 보게 되는데요. 꽁냥이는 Matplotlib으로 분봉 차트(Candle Chart, 캔들 차트)를 그려보고 싶다는 생각이 들어서 이번 기회에 도전해 보았습니다. 이번 포스팅에서는 분봉 차트(Candle Chart, 캔들 차트)를 Matplotlib만을 이용하여 그리는 방법과 mpl_finance 모듈을 이용하여 그리는 방법을 알아보겠습니다. - 목차 - 1. Matplotlib으로 그리기 2. mpl_finance 이용하기 1. Matplotlib으로 그리기 먼저 데이터를 불러옵니다. import FinanceDataReader as fdr import matplotlib.pyplot as plt from.. 2023. 1. 22.
[Matplotlib] 등고선도(Contour Plot)을 그려보자 (feat. contour, contourf) 반갑습니다~ 꽁냥이입니다. 등고선도 또는 등치선도(Contour Plot)는 2차원 좌표계에서 같은 높이를 가지는 부분을 선으로 이어서 그린 것을 말합니다. 등고선도를 이용하면 좌표상의 높이(또는 z값)의 분포를 직관적으로 알 수 있는데요. 이번 포스팅에서는 Matplotlib을 이용하여 등고선도를 그리는 방법에 대해서 알아보겠습니다. 여기서는 격자형 데이터를 이용하여 등고선도를 그리는 기본 방법을 알아보고 좌우 상하 간격이 일정하지 않은 데이터(Irregular Data)에 대한 등고선도 그리고 외삽(Extrapolation)을 이용하여 데이터 바깥 영역까지 등고선도를 그릴 수 있는 방법을 알아보겠습니다. - 목차 - 1. 격자형 데이터 2. 간격이 일정하지 않은 데이터 3. 외삽(Extrapolati.. 2023. 1. 10.
[Matplotlib] Tip! add_patch와 PatchCollection 비교 안녕하세요~ 꽁냥이에요. Matplotlib에서는 Patch라는 개념이 있는데요. 이는 도형이라고 생각하면 됩니다. 이러한 Patch를 추가할 때에는 add_patch를 사용하는데요. 만약 수많은 Patch를 추가한다면 add_patch 보다는 PatchCollection으로 한데 모아서 한 번에 추가하는 게 속도가 더 빨라집니다. 이번 포스팅에서는 add_patch와 PatchCollection의 사용법과 여러 도형을 추가할 때 속도 측면에서 어떤지 비교 실험을 해보겠습니다. add_patch와 PatchCollection 비교 1) Patch가 하나인 경우 여기서는 Patch를 Rectangle(사각형)으로 한정하여 실험해보겠습니다. 먼저 필요한 모듈을 임포트 합니다. import matplotlib.. 2023. 1. 4.
[Matplotlib] Tip! 좌표축 Axes의 가로 세로 길이 Inche 단위로 알아보기 (feat. get_window_extent, dpi_scale_trans) 안녕하세요~ 꽁냥이에요. 오늘은 Matplotlib과 관련하여 간단한 팁을 소개합니다. 바로 Axes 가로 세로 길이를 Inche 단위로 알아보는 방법입니다. Axes 가로 세로 길이 비율 계산하기. 먼저 Axes는 네 개의 축으로 둘러싸인 영역을 말합니다. 이제 Axes의 가로 세로 길이를 Inche 단위로 알아봅시다. 먼저 선 그래프를 하나 그립니다. import matplotlib.pyplot as plt fig = plt.figure() fig.set_facecolor('white') ax = fig.add_subplot() ax.plot([1,2,3,4,5], [6,4,7,3,1]) plt.show() 이제 Axes의 가로 세로 길이를 인치(Inche) 단위로 뽑기 위한 코드입니다. 먼저 Fig.. 2023. 1. 3.
[Matplotlib] 여러 그래프 그릴 때 x축 , y축 범위 공유하기 (feat. sharex, sharey) 안녕하세요~ 꽁냥이입니다. 여러 그래프를 그릴 때 때로는 y축(또는 x축)의 범위를 통일시킬 필요가 있습니다. 같은 스케일에서 비교를 용이하게 하기 위함이지요. Matplotlib에서는 sharex, sharey를 이용하여 축 범위를 통일시킬 수 있습니다. 이번 포스팅에서는 Matplotlib에서 여러 그래프를 그릴 때 x축, y축 범위를 공유하는 방법을 알아보겠습니다. 축 범위 공유하기 (feat. sharex, sharey) 우선 여러 그래프를 그릴 때에는 subplots를 사용하는데 sharex, sharey 인자는 각각 x, y축 범위를 통일시킬 수 있게하는 인자입니다. sharex(또는 sharey)는 부울(bool) 값을 받거나 'none', 'all', 'row', 'col' 4가지 타입의 .. 2022. 11. 5.
[Matplotlib] 한 라인에 컬러 맵(Color Map) 적용하기 (feat. LineCollection) 안녕하세요~ 꽁냥이에요. 이번 포스팅에서는 Matplotlib의 선 그래프에서 한 라인에 컬러 맵을 적용하는 방법을 알아보려고 합니다. 한 라인에 컬러 맵(Color Map) 적용하기 (feat. LineCollection) 한 라인에 컬러 맵을 적용하는 것은 LineCollection 클래스를 이용하면 됩니다. 아래 코드는 컬러 맵 'bwr'이라는 것을 사인(sin) 곡선에 적용한 것입니다. 코드 설명은 핵심 부분만 하겠습니다. 나머지는 주석을 참고해주세요. import numpy as np import matplotlib.pyplot as plt plt.rcParams['axes.unicode_minus'] = False import matplotlib as mpl import pandas as pd.. 2022. 10. 30.

맨 위로