1 turtle
turtle這個庫真的很好玩,用很簡單幾行代碼就能畫出好看的圖案,最近無聊翻了翻之前自己畫的哈哈哈哈,分享幾個代碼 畫一個類似五顏六色的棒棒糖圖案
import turtle turtle.pensize(5) # 這里建議筆的粗細設置的更細一點,太粗了不太好看 color = ['orange','blue','yellow','black','green','tomato'] # 設置自己喜歡的幾個顏色 for i in range(600): # 讓接下來的代碼循環多少次,600次就夠了,要是前面加入初始化,把畫布設置的大一點可以設置次數更多 turtle.pencolor(color[i%6]) # 因為設置了六個顏色,要是想基於其他形狀的,記得有多少條邊設置多少個顏色,這里取余也要調整 turtle.fd(i*1.15) # 可以自己去搜搜遞增類型的函數 ,這里簡單設置一個 turtle.left(62) # 我是基於正6變形畫,每次左轉60度,但是為了有交叉感,稍微增大幾度
好了,看看這個的結果
2 利用matplotlib.pyplot畫一個隨機漫步
from random import choice # random 的choice方法能夠在你給出的結果里隨機選擇一個 import matplotlib.pyplot as plt # 引入matplotlib class Random_walk(): def __init__(self,num_points=5000): """一個生成隨機漫步數據的類""" self.num_points = num_points # 初始化,先將x,y值都設置為0,同時需要自己設置行程多少個點(num_points) self.x_values = [0] self.y_values = [0] def fill_walk(self): while len(self.x_values) < self.num_points: # 設置循環到num_points次 x_direction = choice([1,-1]) # x y 軸因為都有正負方向,隨機選擇前進方向以及距離 x_distance = choice([0,1,2,3,4]) x_step = x_direction * x_distance y_direction = choice([1,-1]) y_distance = choice([0,1,2,3,4]) y_step = y_direction * y_distance if x_step == 0 and y_step ==0: continue next_x = self.x_values[-1] + x_step next_y = self.y_values[-1] + y_step self.x_values.append(next_x) self.y_values.append(next_y) def scatter(self): plt.scatter(self.x_values,self.y_values,s=5) plt.show() mx = Random_walk() mx.fill_walk() mx.scatter()
2 例子的代碼其實很簡單,我自己比較懶,不喜歡寫注釋,直接看下結果吧