의사 프랙탈 도형을 Python을 사용하여 그려 보았습니다.
9423 단어 파이썬matplotlib
이번에 사용하는 프로그램
fractal.py
import matplotlib.pyplot as plt
import matplotlib.collections as mc
import numpy as np
import math
def return_point(p1, p2):
point = (p2-p1)*0.08 + p1
return point
N = 1000
x = np.linspace(-1, 1, N)
x_point = [0, 100, 200]
y_point = [0, math.sqrt(3)*100, 0]
for i in range (N):
new_x_point = return_point(x_point[i], x_point[i+1])
new_y_point = return_point(y_point[i], y_point[i+1])
x_point.append(new_x_point)
y_point.append(new_y_point)
fractal = [[(x_point[i], y_point[i]), (x_point[i+1], y_point[i+1])] for i in range(N)]
lc = mc.LineCollection(fractal, colors='#333333', linewidths=1, antialiased=True)
fig = plt.figure(figsize=(10,10))
ax = fig.add_subplot(1,1,1)
# ↓非本質的な設定
ax.set_axis_bgcolor('#f3f3f3')
plt.gca().spines['right'].set_visible(False)
plt.gca().spines['left'].set_visible(False)
plt.gca().spines['top'].set_visible(False)
plt.gca().spines['bottom'].set_visible(False)
plt.tick_params(labelbottom=False, labelleft=False, labelright=False, labeltop=False)
# ↑非本質的な設定
ax.add_collection(lc)
ax.autoscale()
plt.savefig('./fractal.png')
7 행째
point = (p2-p1)*0.08 + p1
의 0.08
의 값을 바꾸어 보는 것도 일흥.실행 후
오, 아름다운 (CD 재킷에있을 것)
(그런데, 뭔가 이름이 붙어 있으면 코멘트란에서 가르쳐 주세요)
【추기】
엄밀하게는 프랙탈 도형이 아니라고 생각하고 제목을 "프랙탈 도형을 Python을 사용하여 그려 보았다"에서 "가짜 프랙탈 도형을 Python을 사용하여 그려 보았다"로 변경했습니다.
참고한 기사
고마워요.
파이썬으로 프랙탈 도형 만들기 part1 (쉘핀 스키의 개스켓)
htps : // 코 m / 오카 카츠 / ms / f2에 79fc501에 d9f799734
Matplotlib에서 여러 선분을 그리는 방법
https://omedstu.jimdofree.com/2019/10/04/matplotlib에서 여러 선 집합을 그리는 방법 /
matplotlib의 엄청나게 정리
https://qiita.com/nkay/items/d1eb91e33b9d6469ef51#2-그래프 axes 만들기
Reference
이 문제에 관하여(의사 프랙탈 도형을 Python을 사용하여 그려 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/aghhh/items/aff81f26e6f248568ede텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)