요약 : 시각화, 난수만들기
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure(figsize = (3, 3), facecolor = 'linen')
ax1 = fig.add_subplot() #fig가 가진 method
ax1.set_title("Title of a Ax", fontsize = 13, fontfamily = 'monospace')
ax1.set_xlabel("X label", fontsize = 10, color = 'darkblue', alpha = 0.7)
ax1.set_ylabel("Y label, Data1", fontsize = 10, color = 'darkblue', alpha = 0.7)
ax1.tick_params(axis = 'x', labelsize=7, length = 5, width = 1, rotation = 30,
bottom = False, labelbottom = False, top = True, labeltop = True)
ax1.grid()
ax1.text(x = 40, y = 40, va = 'center', ha = 'center', s = 'Hello', fontsize = 15)
ax2=ax1.twinx()
ax2.set_ylabel("Data2", fontsize = 10, color = 'darkblue', alpha = 0.7)
ax1.set_xlim([0, 100])
ax1.set_xticks([0, 10, 50, 100])
ax1.set_ylim([0, 100])
ax2.set_ylim([0, 0.1])
fig.tight_layout() #그래프 잘리는 경우 해결법
plt.show()
import matplotlib.pyplot as plt
fig = plt.figure(figsize = (3, 3))
ax = fig.add_subplot()
ax.scatter(0, 0, s = 10000, facecolor = 'red', edgecolor = 'b', linewidth = 5)
n_data = 100
x_data = np.random.normal(0, 1, (n_data, ))
y_data = np.random.normal(0, 1, (n_data, ))
fig, ax = plt.subplots(figsize = (5, 5))
ax.scatter(x_data, y_data, s = 300, facecolor = 'White',
edgecolor = 'tab:blue', linewidth = 2, alpha = 0.5)
-np.random.normal(loc, scale, size)
-loc는 정규분포의 평균(μ), scale은 정규분포의 표준편차(σ), size는 정규분포에서 추출할 수의 규격
-(n_data, )로 하나, n_data로 하나 결과 똑같음. 근데 행렬데이터 다루는 경우가 많기 때문에 그냥 기본 형태 이대로!!!!!!
-스칼라 () -> 벡터 (a, ) -> 매트릭스 (a,b) shape 뽑으면 이렇게 도출됨
-np.arange(시작, 끝, 간격(step)), 끝+1해줘야 끝 값이 나옴
-pad는 여백 설정!
import matplotlib.pyplot as plt
import numpy as np
n_dataa = 100
s_idx = 30
x_data = np.arange(s_idx, s_idx + n_data)
y_data = np.random.normal(0, 1, (n_data, ))
fig, ax = plt.subplots(figsize = (10, 5))
ax.plot(x_data, y_data)
fig.tight_layout(pad=3)
x_ticks = np.arange(s_idx, s_idx + n_data + 1, 20)
ax.set_xticks(x_ticks)
ax.tick_params(labelsize = 25)
ax.grid()
plt.show()
np.random.seed(0)
x_data = np.array([10, 25, 31, 40, 55, 80, 100])
y_data = np.random.normal(0, 1, (7, ))
fig, ax = plt.subplots(figsize = (10, 5))
ax.plot(x_data, y_data)
fig.subplots_adjust(left = 0.2)
ax.tick_params(labelsize = 25)
#---------------------------------------------------------------
ax.set_xticks(x_data)
ylim = ax.get_ylim()
yticks = np.linspace(ylim[0], ylim[1], 8)
ax.set_yticks(yticks)
ax.grid()
plt.show()
PI = np.pi
t = np.linspace(-4*PI, 4*PI, 300)
sin = np.sin(t) #삼각함수 sin
linear = 0.1*t
fig, ax = plt.subplots(figsize = (10, 5))
ax.plot(t, sin)
ax.plot(t, linear)
ax.set_ylim([-1.5, 1.5])
x_ticks = np.arange(-4*PI, 4*PI+0.1, PI)
x_ticklabels = [str(i) + r'$\pi$' for i in range(-4, 5)]
ax.set_xticks(x_ticks)
ax.set_xticklabels(x_ticklabels)
ax.tick_params(labelsize = 20)
ax.grid()