お酒飲みながら描いた、後悔はしてない
数学って美しいよねって話。
結果
コード
数学でおっぱいを書きます
py.py
import numpy as np
import matplotlib.pyplot as plt
def oppai(y):
x_1 = (1.5*np.exp(-0.62*(y-0.16)**2))/(1+np.exp(-20*(5*y-1)))
x_2 = (1.5+0.8*(y-0.2)**3)*(1+np.exp(20*(5*y-1)))**-1
x_3 = (1+np.exp(-(100*(y+1)-16)))
x_4 = (0.2*(np.exp(-(y+1)**2)+1))/(1+np.exp(100*(y+1)-16))
x_5 = (0.1/np.exp(2*(10*y-1.2)**4))
x = x_1+(x_2/x_3)+x_4+x_5
return x
def plot_oppai(x, y):
plt.title('oppai')
plt.axes().set_aspect('equal', 'datalim')
plt.grid()
plt.plot(x, y, 'black')
plt.show()
def main():
y = np.arange(-3, 3 + 0.01, 0.01)
x = oppai(y)
plot_oppai(x, y)
if __name__ == '__main__':
main()
良さげな画像からカラーコードを取得します
ここに良さげな画像をアップロード(例:kirara.png)
https://www.peko-step.com/tool/getcolor.html
カラーコードを取得
肌色:#F5D1B7
乳首:#C87B6D
乳輪:#E29577
色をつけます
oppaiを弄るだけです。
py.py
def plot_oppai(x, y):
plt.title('oppai')
plt.axes().set_aspect('equal', 'datalim')
plt.grid()
plt.plot(x, y, '#F5D1B7')
plt.fill_between(x, y, facecolor='#F5D1B7', alpha=0.8)#肌
plt.axvspan(1.52, 1.59, 0.51, 0.53, color = '#C87B6D')#乳首
plt.axvspan(0, 0.18, 0.05, 0.5, color = '#F5D1B7')#下乳補正
plt.show()
乳輪を描いて完成
こいつもoppaiを弄るだけです。
py.py
import matplotlib.patches as patches
def plot_oppai(x, y):
plt.title('oppai')
plt.axes().set_aspect('equal', 'datalim')
plt.grid()
plt.plot(x, y, '#F5D1B7')
plt.fill_between(x, y, facecolor='#F5D1B7', alpha=0.8)#肌
w=patches.Wedge(center=(1.55, 0.1),r=0.2,theta1=120,theta2=240,color='#E29577')#乳輪
ax = plt.axes()
ax.add_patch(w)
plt.axvspan(1.52, 1.59, 0.51, 0.53, color = '#C87B6D')#乳首
plt.axvspan(0, 0.18, 0.05, 0.5, color = '#F5D1B7')#下乳補正
plt.show()
最終的なコード
py.py
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.patches as patches
def oppai(y):
x_1 = (1.5*np.exp(-0.62*(y-0.16)**2))/(1+np.exp(-20*(5*y-1)))
x_2 = (1.5+0.8*(y-0.2)**3)*(1+np.exp(20*(5*y-1)))**-1
x_3 = (1+np.exp(-(100*(y+1)-16)))
x_4 = (0.2*(np.exp(-(y+1)**2)+1))/(1+np.exp(100*(y+1)-16))
x_5 = (0.1/np.exp(2*(10*y-1.2)**4))
x = x_1+(x_2/x_3)+x_4+x_5
return x
def plot_oppai(x, y):
plt.title('oppai')
plt.axes().set_aspect('equal', 'datalim')
plt.grid()
plt.plot(x, y, '#F5D1B7')
plt.fill_between(x, y, facecolor='#F5D1B7', alpha=0.8)#肌色
w=patches.Wedge(center=(1.55,0.1),r=0.2,theta1=120,theta2=240,color='#E29577')#乳輪
ax = plt.axes()
ax.add_patch(w)
plt.axvspan(1.52, 1.59, 0.51, 0.53, color = '#C87B6D')#乳首当て
plt.axvspan(0, 0.18, 0.05, 0.5, color = '#F5D1B7')#下乳補正
plt.show()
def main():
y = np.arange(-3, 3 + 0.01, 0.01)
x = oppai(y)
plot_oppai(x, y)
if __name__ == '__main__':
main()
まとめ
数学って美しい
乳首も乳輪も、好きな色に変えて遊んでくだせぇ
ピンクの乳首が好きって人はLGTMを、いやいや、黒い乳首の方が興奮するやろって人はフォローお願いします
参考
・これのおかげ
Matplotlib&Seaborn実装ハンドブック (Pythonライブラリ定番セレクション)