전체 글 40

[Python] 파이썬 matplotlib 한꺼번에 여러 그래프 그리기, 하나의 좌표평면에 여러 곡선 그리기

안녕하세요! 나비입니다 🦋 이번 포스팅에서는 파이썬 matplotlib을 통해 그래프를 그릴 때, 하나의 좌표평면 안에서 여러 개의 그래프를 그리는 방법을 설명하려고 합니다. 크게 2가지 방법이 있는데요, 추가적으로 설명드려야 할 메소드는 따로 없고, 간단합니다. plot 함수 1개로 여러 그래프 그리기 첫 번째 방법은 기존에 항상 사용하던 plot 함수 1개 안에 곡선(또는 직선) 여러 개의 정보를 모두 집어넣는 것입니다. 이때, 반점(,)을 통해서 그래프 여러 개의 정의역과 치역을 입력해야 합니다. 아래 예제 코드에서 더 자세히 보여드리겠습니다. import numpy as np import matplotlib.pyplot as plt X = np.linspace(0,2,50) plt.plot(X, ..

Python/Matplotlib 2024.05.21

[Python] 파이썬 matplotlib 그래프 축 스케일 설정하기 - xscale, yscale, log, symlog

안녕하세요! 나비입니다 🦋 이번 포스팅에서는 파이썬 matplotlib을 이용해서 축의 스케일을 바꾸는 방법에 대해 다뤄보려 합니다. 축의 스케일은, 그래프를 보다 더 간결하고 예쁘게 표현하기 위해 도입하는 장치로, 주로 로그함수를 기반으로 이루어집니다. 축 스케일 조정은 그래프에 나타낼 x값 또는 y값의 최솟값, 최댓값 사이의 간격이 너무 커서 그래프로 보여주고자 하는 내용이 잘 표현되지 않을 때 자주 사용합니다. matplotlib에서 축 스케일을 조정하기 위해 사용하는 메소드는 xscale, yscale입니다. 순서대로 살펴보도록 하겠습니다. plt.xscale xscale 함수를 사용하는 예제에서는 symlog 스케일로 바꾸는 것을 보여드리겠습니다. symlog란 symmetrical log sc..

Python/Matplotlib 2024.05.20

[Python] 파이썬 numpy 배열 요소 바꾸기, numpy 배열과 리스트의 차이점

안녕하세요! 나비입니다 🦋 이번 포스팅에서는 파이썬 numpy로 생성한 배열에서 각각의 요소 값을 바꾸는 방법에 대해 소개할 예정입니다. 또한, numpy의 배열과 파이썬 리스트 자료형의 차이점에 대해서도 함께 설명하겠습니다. 배열 요소 바꾸는 방법 파이썬 numpy로 선언한 배열을 슬라이싱하고, 그 슬라이싱된 배열의 일부분에 특정한 값을 대입해주면 원래 배열도 함께 바뀝니다. 마치 동기화 하는 것과 비슷한 느낌입니다. import numpy as np #바꾸기 전 A = np.array([0,1,2,3]) print(A) #바꾼 후 a = A[0:3] a = -1 print(A)[0,1,2,3] [-1,-1,-1,3] 위 코드와 같이, 3개의 값을 바꾸고자 할 때 굳이 [-1,-1,-1]이라고 하지 않..

Python/Numpy 2024.05.19

[Python] 파이썬 numpy 불 인덱싱 (boolean indexing) 불 대수 배열 인덱싱

안녕하세요! 나비입니다 🦋 이번에는 파이썬 numpy를 이용해서 배열을 인덱싱하는 방법 중, 특별히 bool 대수를 활용한 ‘boolean indexing’을 소개하려고 합니다. boolean indexing은 주어진 배열에서 원하는 조건을 만족시키는 원소만 선택하는 방법입니다. 일반 indexing의 경우 원소의 실제 위치를 직접 지정해야 했던 것과 다르게, boolean indexing은 특정한 조건을 제시하면 그 조건에 해당하는 원소 또는 배열을 자동으로 출력해줍니다. 예제 코드를 통해 더 구체적으로 설명해 보겠습니다. import numpy as np A = np.array([1,2,3,4]) print(A) A_bool2 = (A%2 == 0) print(A_bool2) A_bool3 = (A%..

Python/Numpy 2024.05.15

[Python] 파이썬 numpy 배열 인덱싱 - 1차원, 다차원 행렬

안녕하세요! 나비입니다 🦋 이번 포스팅에서는 파이썬 numpy 라이브러리를 통해 행렬을 인덱싱(indexing)하는 방법에 대해서 소개할 예정입니다. 먼저, 1차원 행렬을 인덱싱하는 기본적인 방법을 소개하고, 그다음에 다차원 배열 인덱싱까지 해보겠습니다. numpy 1차원 배열 인덱싱import numpy as np A = np.array([1,2,3,4,5,6]) a1 = A[2] a2 = A[1:5] print(a1) print(a2)3 [2,3,4,5] 파이썬에서 배열을 인덱싱하는 방법은 넓게 보면 리스트를 다루는 방법과 비슷합니다. (차이점도 분명 있긴 하지만요) 파이썬 리스트에서 첫 번째 값을 0번째라고 생각하고, 리스트명 뒤에 붙는 “1:4”라는 표기가 4번째를 제외하고 1번째부터 3번째까지라..

Python/Numpy 2024.05.15

[Python] 파이썬 matplotlib 그래프 영역 색칠하기 - fill_between, fill_betweenx

안녕하세요! 나비입니다 🦋 이번 포스팅에서는 파이썬 matplotlib를 통해 좌표평면 상에 그래프 영역을 색칠하는 방법에 대해 다뤄보려고 합니다. 두 그래프가 주어졌을 때, 수평방향으로 색칠하는 메소드와 수직방향으로 색칠하는 메소드를 각각 소개드리고, 색칠하는 영역의 투명도를 설정하는 파라미터도 설명해 보겠습니다. plt.fill_betweenimport matplotlib.pyplot as plt x = [1,2,3,4] y = [2,3,4,5] plt.plot(x, y) plt.fill_between(x[1:3], y[1:3], alpha=0.5) plt.show() Fill_between 함수에 일정 범위로 인덱싱한 x축, y축 배열을 순서대로 입력하고, alpha 파라미터에 0 이상 1 이하 값..

Python/Matplotlib 2024.05.13

[Python] 파이썬 numpy 자주 쓰는 상수 정리 - 원주율, 자연상수, 무한대, Null

안녕하세요! 나비입니다 🦋 오랜만에 파이썬 numpy 카테고리에 글을 쓰고 있는데요, 이번 포스팅에서는 numpy가 지원하는 상수(constant number) 몇 가지를 소개드리려고 합니다. 자주 쓰는 4개의 상수(고정값)를 아래서 순서대로 설명하겠습니다. 목차 원주율 자연상수 무한대 비어있음 원주율 원주율, 즉 pi는 numpy 라이브러리를 통해 np.pi 로 사용할 수 있습니다. numpy를 불러오지 않은 채로 그냥 pi라고 하면, 파이썬이 이를 지원하지 않기 때문에 에러가 뜹니다. 따라서, 반드시 numpy를 import한 후에 “np.pi”라고 하셔야 합니다. 아래 예제에서 numpy를 이용하여 sin, cos, tan 함수에 pi를 한번 넣어볼게요. import numpy as np a = n..

Python/Numpy 2024.05.11

[Python] 파이썬 matplotlib 그래프 색 설정하기 - CSS 색상코드, RGB 16진수 Hex code

안녕하세요! 나비입니다 🦋 이번 포스팅에서는 파이썬 matplotlib으로 그린 그래프의 “색을 설정하는 방법”에 대해 다뤄보려고 합니다. 물론 색을 따로 지정하지 않았을 때 matplotlib에서 자동으로 설정해주는 색깔이 있지만, 이 경우에는 종류에 한계가 있고 다양한 색을 설정하기는 어렵습니다. 그래서 더 다양한 색깔, 내가 원하는 색깔을 마음대로 설정할 수 있는 방법 2가지를 소개해 드리려고 합니다. (포맷 문자열은 이전 포스팅을 참고해주세요!) 순서대로 CSS 색상코드, Hex 코드 이렇게 두 가지 이야기해 보도록 하겠습니다. CSS 색상코드로 그래프 색 지정하기 CSS에서 지원하는 색상코드(색상 이름)을 이용해서 matplotlib 그래프 색을 지정할 수 있습니다. Plot 함수의 color ..

Python/Matplotlib 2024.05.11

[Python] 파이썬 matplotlib 그래프 마커 모양, 색깔 설정하기- 포맷 문자열, marker 파라미터

안녕하세요! 나비입니다 🦋 지난 포스팅에서는 그래프의 선 종류를 설정하는 방법을 다루었었는데요, 이번에는 그래프에 찍히는 점들의 모양과 색을 설정하는 방법에 대해 이야기하려고 합니다. 사용하는 라이브러리는 파이썬의 matplotlib입니다. (정확히는 matplotlib.pyplot) 그래프의 점들을 다른 말로 마커(marker)라고 하는데요, 마커를 설정하는 방법은 크게 2가지가 있습니다. 1) 포맷 문자열 2) marker 파라미터 이 순서대로 설명해 보겠습니다. 포맷 문자열로 마커 지정하기 마커와 관련된 옵션은 모양, 색깔 이렇게 두 가지가 있습니다. 예를 들어, 파란색 동그라미 마커를 만들고 싶다면, blue의 b와 알파벳 o를 따와서 “bo”라는 포맷 문자열을 사용하면 됩니다. 색은 blue(b..

Python/Matplotlib 2024.05.09

[Python] 파이썬 matplotlib 그래프 선 모양, 종류 지정하기 - 포맷 문자열, linestyle, capstyle

안녕하세요! 나비입니다 🦋 이번 포스팅에서는 파이썬 matplotlib을 이용하여 그린 그래프에서 선의 모양과 종류를 지정하는 방법에 대해 다뤄보려고 합니다. 크게 포맷문자열과 linestyle 파라미터를 사용하는 방법을 각각 설명드리고, 선의 끝부분은 뾰족하게/둥글게 만드는 파라미터에 대해서도 간단히 이야기해 보겠습니다. 먼저, 포맷 문자열을 이용해서 선 종류를 설정하는 예제 코드를 보여드리겠습니다. 여기서 설정할 수 있는 선의 종류는 총 4가지입니다. 포맷 문자열로 선 종류 지정하기import matplotlib.pyplot as plt plt.plot([1,2,3,4,5,6], [1,2,1,2,1,2], “-“, label = “solid”) plt.plot([1,2,3,4,5,6], [2,3,2,..

Python/Matplotlib 2024.05.07