您好,登錄后才能下訂單哦!
前言
在學(xué)校太閑,就寫了這個程序,可以在復(fù)平面繪制曲線,畫圓什么的很輕松,f(z) = e^(1j * z),螺旋線,函數(shù)圖象等都可以。
效果圖
說明
此程序使用turtle繪圖,可以用作畫函數(shù)圖像,假設(shè)你想畫函數(shù)g(x)的圖像,那么就輸入f(z) = z + 1j * g(z),g(z)是含z的表達(dá)式。
表達(dá)式可支持Python math庫,random庫,time庫的所有函數(shù),具體使用方法請自行探索。
代碼
# Python 2.x import turtle from random import * from math import * from time import * def printf(f): global z turtle.goto(f.real * 20, f.imag * 20) print("f(" + str(z) + ") = " + str(f)) z += d def format(s): s = s.replace("^","**") return s def evale(s): n = eval(s) return n delay = input("delay = ") * 1e-3 turtle.setup(1280, 720) turtle.speed(10) turtle.pensize(2) turtle.goto(-640, 0) turtle.goto(640, 0) turtle.goto(0, 0) turtle.goto(0, 360) turtle.goto(0, -360) turtle.goto(0, 0) while True: express = format(raw_input("f(z) = ")) d = input("d = ") min = input("min = ") max = input("max = ") z = min f = evale(express) turtle.pencolor(random(), random(), random()) turtle.penup() printf(f) turtle.pendown() while z < max: f = evale(express) printf(f)
注意
這個程序使用Python 2.x,若需要Python 3.x的程序,請自行修改。
以上這篇Python 復(fù)平面繪圖實(shí)例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。