python (matplotlib) 으로 몇 개의 직선을 그리다
17202 단어 Pythonmatplotlib
나는pythn으로 몇 개의 직선을 그리고 싶지만 아무리 해도 좋은 방법을 찾지 못하고 자신의 방법을 여기에 총결하였다.
기계를 사용하다
실제로 해봤어요.
number_line.py
import numpy as np
import matplotlib.pyplot as plt
import pylab
%matplotlib inline
#テキトーな配列を生成
rand_size = 7 #配列のサイズ
rand = np.random.random_sample(rand_size) #テキトーな配列を生成
print(rand)
rand = sorted(rand) #ソート
y = [0]*rand_size #y=0
#数直線
fig,ax=plt.subplots(figsize=(10,10)) #画像サイズ
fig.set_figheight(1) #高さ調整
ax.tick_params(labelbottom=True, bottom=False) #x軸設定
ax.tick_params(labelleft=False, left=False) #y軸設定
xmin, xmax= 0,1 #数直線の最小値・最大値
plt.tight_layout() #グラフの自動調整
plt.scatter(rand,y,c='r') #散布図
plt.hlines(y=0,xmin=xmin,xmax=xmax) #横軸
plt.vlines(x=[i for i in range(xmin,xmax+1,1)],ymin=-0.04,ymax=0.04) #目盛り線(大)
plt.vlines(x=[i/10 for i in range(xmin*10,xmax*10+1,1)],ymin=-0.02,ymax=0.02) #目盛り線(小)
line_width=0.1#目盛り数値の刻み幅
plt.xticks(np.arange(xmin,xmax+line_width,line_width)) #目盛り数値
pylab.box(False) #枠を消す
↓ 이렇게 된 느낌↓여러 선의 값을 표시합니다.
여러 선의 값을 표시합니다...
number_line2.py
import numpy as np
import matplotlib.pyplot as plt
import pylab
%matplotlib inline
#テキトーな配列を生成
rand_size = 7 #配列のサイズ
rand = np.random.random_sample(rand_size) #テキトーな配列を生成
print(rand)
rand = sorted(rand) #ソート
y = [0]*rand_size #y=0
#数直線
fig,ax=plt.subplots(figsize=(10,10)) #画像サイズ
fig.set_figheight(1) #高さ調整
ax.tick_params(labelbottom=True, bottom=False) #x軸設定
ax.tick_params(labelleft=False, left=False) #y軸設定
#数直線上の数値を表示
for i in range(int(rand_size/2)+1):
ax.annotate('{0:.3f}'.format(rand[2*i]),
xy=(rand[2*i],y[2*i]),
xytext=(10, 20),
textcoords='offset points',
arrowprops=dict(arrowstyle="->",connectionstyle="arc3,rad=.3")
)
for i in range(int(rand_size/2)):
ax.annotate('{0:.3f}'.format(rand[2*i+1]),
xy=(rand[2*i+1],y[2*i+1]),
xytext=(10, -50),
textcoords='offset points',
arrowprops=dict(arrowstyle="->",connectionstyle="arc3,rad=-.3")
)
xmin, xmax= 0,1 #数直線の最小値・最大値
plt.tight_layout() #グラフの自動調整
plt.scatter(rand,y,c='r') #散布図
plt.hlines(y=0,xmin=xmin,xmax=xmax) #横軸
plt.vlines(x=[i for i in range(xmin,xmax+1,1)],ymin=-0.04,ymax=0.04) #目盛り線(大)
plt.vlines(x=[i/10 for i in range(xmin*10,xmax*10+1,1)],ymin=-0.02,ymax=0.02) #目盛り線(小)
line_width=0.1#目盛り数値の刻み幅
plt.xticks(np.arange(xmin,xmax+line_width,line_width)) #目盛り数値
pylab.box(False) #枠を消す
↓ 이렇게 된 느낌↓끝말
도서관에 한 번에 직선을 몇 개 그릴 수는 없죠...?
만약 다른 좋은 방법이 있다면 교수님을 청합니다...
Reference
이 문제에 관하여(python (matplotlib) 으로 몇 개의 직선을 그리다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ofutonton/items/53b80a876a8c21bd49d6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)