matplotlib II

2021. 1. 29. 19:31·AI/이론
matplotlib II

Matplotlib II¶


matplotlib graph¶

In [1]:
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np


scatter¶

  • scatter함수 사용
  • marker: scatter 모양 지정
  • https://matplotlib.org/3.1.1/api/markers_api.html
In [2]:
data_1 = np.random.rand(512, 2)
data_2 = np.random.rand(512, 2)

plt.scatter(data_1[:, 0], data_1[:, 1], c="b", marker="x")
plt.scatter(data_2[:, 0], data_2[:, 1], c="r", marker="o")

plt.show()
In [3]:
N = 50
x = np.random.rand(N)
y = np.random.rand(N)
area = np.pi * (15 * np.random.rand(N)) ** 2
len(x), len(y), len(area)
Out[3]:
(50, 50, 50)
  • area도 같은크기로 1:1 mapping이 되어야 한다.
In [4]:
N = 50
x = np.random.rand(N)
y = np.random.rand(N)
colors = np.random.rand(N)
area = np.pi * (15 * np.random.rand(N)) ** 2
plt.scatter(x, y, s=area, c=colors, alpha=0.5)
plt.show()
  • s: 데이터의 크기를 지정, 데이터의 크기 비교가능하다.
  • alpha: 투명도를 나타냄


bar chart¶

  • bar함수 사용
In [5]:
data = [[5.0, 25.0, 50.0, 20.0], [4.0, 23.0, 51.0, 17], [6.0, 22.0, 52.0, 19]]

X = np.arange(0, 8, 2)
plt.bar(X + 0.00, data[0], color="b", width=0.50)
plt.bar(X + 0.50, data[1], color="g", width=0.50)
plt.bar(X + 1.0, data[2], color="r", width=0.50)
plt.xticks(X + 0.50, ("A", "B", "C", "D"))
plt.show()
In [6]:
data = np.array([[5.0, 25.0, 50.0, 20.0], [4.0, 23.0, 51.0, 17], [6.0, 22.0, 52.0, 19]])

color_list = ["b", "g", "r"]
data_label = ["A", "B", "C"]
X = np.arange(data.shape[1])

for i in range(3):
    plt.bar(
        X,
        data[i],
        bottom=np.sum(data[:i], axis=0),
        color=color_list[i],
        label=data_label[i],
    )
plt.legend()
plt.show()
In [7]:
A = [5.0, 30.0, 45.0, 22.0]
B = [5, 25, 50, 20]

X = range(4)

plt.bar(X, A, color="b")
plt.bar(X, B, color="r", bottom=60)
plt.show()


barh¶

In [8]:
women_pop = np.array([5, 30, 45, 22])
men_pop = np.array([5, 25, 50, 20])
X = np.arange(4)

plt.barh(X, women_pop, color="r")
plt.barh(X, -men_pop, color="b")
plt.show()


histogram¶

In [9]:
X = np.random.randn(1000)
plt.hist(X, bins=100)
plt.show()


boxplot¶

image.png

  • https://towardsdatascience.com/understanding-boxplots-5e2df7bcbd51
In [10]:
data = np.random.randn(100, 5)
plt.boxplot(data)
plt.show()

'AI > 이론' 카테고리의 다른 글

PyTorch basic  (0) 2021.02.01
베이즈 통계학  (0) 2021.02.01
통계학  (0) 2021.01.29
seaborn  (0) 2021.01.29
matplotlib I  (0) 2021.01.29
확률론 맛보기  (0) 2021.01.28
Pandas IV  (0) 2021.01.28
Pandas III  (0) 2021.01.28
'AI/이론' 카테고리의 다른 글
  • 통계학
  • seaborn
  • matplotlib I
  • 확률론 맛보기
N-analyst
N-analyst
  • N-analyst
    개발자CuCu
    N-analyst
  • 전체
    오늘
    어제
  • 공지사항

    • 티스토리에서 원하는 글 찾는 방법
    • 분류 전체보기 (140)
      • 티스토리 (4)
      • 알고리즘 (5)
        • 알고리즘 정리 (1)
        • 백준 (4)
      • 마크다운(Typora) (13)
        • 사용법 (13)
      • 에러 (1)
        • 파이썬 (1)
      • 데이터 분석 (5)
        • python_analysis (3)
        • Machine Learning (2)
      • AI (109)
        • 파이토치로 시작하는 딥러닝 기초 (2)
        • 부스트 캠프 AI tech (41)
        • 이론 (66)
      • 파이썬(python) (1)
        • 기타 (1)
      • 웹 프로그래밍 (1)
        • 설정 팁 (1)
  • 블로그 메뉴

    • 홈
    • 태그
  • 인기 글

  • 최근 글

  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.6
N-analyst
matplotlib II
상단으로

티스토리툴바