Python教程

Python3学习24--绘图

本文主要是介绍Python3学习24--绘图,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

本系列博文基于廖雪峰老师的官网Python教程,笔者在大学期间已经阅读过廖老师的Python教程,教程相当不错,官网链接: 廖雪峰官方网站.请需要系统学习Python的小伙伴到廖老师官网学习,笔者的编程环境是Anaconda+Pycharm,Python版本:Python3.



1.Tkinter

# Tkinter
# 1.Python调用内置的Tkinter,Tkinter封装了访问Tk的接口;
# 2.Tk是一个图像库,支持多个操作系统,使用Tcl语言开发;
# 3.Tk会调用操作系统提供本地GUI接口,完成最终的GUI;

from tkinter import *

class Application(Frame):
    def __init__(self, master = None):
        Frame.__init__(self, master)
        self.pack()
        self.createWidgets()
        
    def createWidgets(self):
        self.welcomeLabel = Label(self, text = "Welcome to FUXI Technology.")
        self.welcomeLabel.pack()
        self.quitButton = Button(self, text = "Quit", command = self.quit)
        self.quitButton.pack()
        
app = Application()
app.master.title("Welcome")    # 设置窗口标题
app.mainloop()    # 主消息循环
# 输入文本
from tkinter import *
import tkinter.messagebox as messagebox

class Application(Frame):
    def __init__(self, master = None):
        Frame.__init__(self, master)
        self.pack()
        self.createWidgets()
        
    def createWidgets(self):
        self.nameInput = Entry(self)
        self.nameInput.pack()
        self.alertButton = Button(self, text = "Welcome", command = self.welcome)
        self.alertButton.pack()
        
    def welcome(self):
        name = self.nameInput.get() or "to FUXI Technology."
        messagebox.showinfo("Message", "Welcome %s" % name)
        
app = Application()
app.master.title("Welcome")
app.mainloop()

2.turtle

# 1.绘制长方形
from turtle import *

width(3)    # 设置笔刷宽度
forward(168)    # 前进
right(90)       # 右转90°

pencolor("red")    # 笔刷颜色
forward(100)       
right(90)

pencolor("green")
forward(168)
right(90)

pencolor("blue")
forward(100)
right(90)

done()
# 2.绘制5个五角星
from turtle import *

def drawStar(x, y):
    penup()
    goto(x, y)
    pd()
    seth(0)
    
    for i in range(5):
        fd(40)
        rt(144)
        
for x in range(0, 250, 50):
    drawStar(x, 0)
    
done()
# 3.绘制分型树
from turtle import *

colormode(255)

lt(90)

lv = 14
l = 120
s = 45

width(lv)

r = 0
g = 0
b = 0
pencolor(r, g, b)

penup()
bk(l)
pendown()
fd(l)

def draw_tree(l, level):
    global r, g, b
    # save the current pen width
    w = width()

    # narrow the pen width
    width(w * 3.0 / 4.0)
    # set color:
    r = r + 1
    g = g + 2
    b = b + 3
    pencolor(r % 200, g % 200, b % 200)

    l = 3.0 / 4.0 * l

    lt(s)
    fd(l)

    if level < lv:
        draw_tree(l, level + 1)
    bk(l)
    rt(2 * s)
    fd(l)

    if level < lv:
        draw_tree(l, level + 1)
    bk(l)
    lt(s)

    # restore the previous pen width
    width(w)

speed("fastest")

draw_tree(l, 4)

done()

分型树

这篇关于Python3学习24--绘图的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!