本文目錄一覽:
求教python中的turtle
簡介:turtle是一個簡單的繪圖工具。它提供了一個海龜,你可以把它理解為一個機器人,只聽得懂有限的指令。
1.在文件頭寫上如下行,這能讓我們在語句中插入中文
#-*- coding: utf-8 -*-
2.用import turtle導入turtle庫
3.繪圖窗口的原點(0,0)在正中間。默認情況下,海龜向正右方移動。
4.操縱海龜繪圖有著許多的命令,這些命令可以劃分為兩種:一種為運動命令,一種為畫筆控制命令
(1)運動命令:
forward(d)
向前移動距離d代表距離
backward(d)
向後移動距離d代表距離
right(degree)
向右轉動多少度
left(degree)
向左轉動多少度
goto(x,y)
將畫筆移動到坐標為(x,y)的位置
stamp()
繪製當前圖形
speed(speed)
畫筆繪製的速度範圍[0,10]整數
(2)畫筆控制命令:
down()
畫筆落下,移動時繪製圖形
up()
畫筆抬起,移動時不繪製圖形
setheading(degree)
海龜朝向,degree代表角度
reset()
恢復所有設置
pensize(width)
畫筆的寬度
pencolor(colorstring)
畫筆的顏色
fillcolor(colorstring)
繪製圖形的填充顏色
fill(Ture)
fill(False)
circle(radius, extent)
繪製一個圓形,其中radius為半徑,extent為度數,例如若extent為180,則畫一個半圓;如要畫一個圓形,可不必寫第二個參數
5.幾個例子
1)畫一個邊長為60的三角形
#-*- coding: utf-8 -*-
importturtle
a=60
turtle.forward(a)
turtle.left(120)
turtle.forward(a)
turtle.left(120)
turtle.forward(a)
turtle.left(120)
2)畫一個邊長為60的正方形,並填充為紅色,邊框為藍色
#-*- coding: utf-8 -*-
importturtle
turtle.reset()
a= 60
turtle.fillcolor(“red”)
turtle.pencolor(“blue”)
turtle.pensize(10)
turtle.fill(True)
turtle.left(90)
turtle.forward(a)
turtle.left(90)
turtle.forward(a)
turtle.left(90)
turtle.forward(a)
turtle.left(90)
turtle.forward(a)
turtle.fill(False)
6.練習:
1)畫一個五邊形
2)畫一個六邊形
3)任意輸入一個正整數m(=3),畫一個多邊形(m條邊)
4)畫一個五角星,如下所示,注意填充為紅色
5)畫一個中國象棋棋盤,如下圖所示,其中漢字不必顯示出來:
6)繪製奧運五環圖,其中五種顏色分別為藍色、黑色、紅色、黃色和綠色。注意根據實際效果調整圓形的大小和位置。
如何用python turtle畫奧運五環?
首先畫第一環,用虛線畫出半徑,取該半徑的中點,然後從此中點延長虛線,且廷長到的終點是第一環的半徑長度。終點便是第二環的圓心,半徑為這條延長線。第三環同用此法。下面要說說第二行第一個環,因為上面已有兩個環啦,而且兩環的半徑之間已有一條虛線,那麼就在這條虛線做垂直平分線,然後做一個倒的等腰三角形,它的腰是圓的半徑,它的頂點是該環的圓心,第五環皆用此法。
五環是由皮埃爾·德·顧拜旦先生於1913年構思設計的奧林匹克運動會的會徽,是由《奧林匹克憲章》確定的,也被稱為奧運五環標誌,它是世界範圍內最為人們廣泛認知的奧林匹克運動會標誌。它由5個奧林匹克環套接組成,由藍、黃、黑、綠、紅5種顏色。環從左到右互相套接,上面是藍、黑、紅環,下面是是黃、綠環。整個造形為一個底部小的規則梯形。最初的解釋是五種顏色代表各國國旗的顏色,後來又將5個不同顏色的圓環解釋為五大洲的象徵。
python怎麼調用函數畫五環?
import turtle
turtle.showturtle() #屏幕上顯示出來海龜繪圖,終端中會用到
turtle.penup() #抬起畫筆,此時畫筆的移動不會留下痕迹
turtle.pendown() #放下畫筆,此時畫筆的移動會留下痕迹
turtle.pensize(3) #筆粗為3
turtle.goto(-200,100) #將畫筆移動到(-200,100)坐標
turtle.color(“red”) #設定畫筆的顏色為紅色
turtle.circle(100) #以當前畫筆所在點為圓最下端開始畫半徑為100的圓
turtle.circle(100,steps=n) #繪製一個周長為100,的n邊形
turtle.forward(200) #將畫筆前進200
turtle.backward(100) #將比後退100
turtle.right(70) #將畫筆箭頭的方向向右移70度
turtle.left(90) #將畫筆箭頭的方向向左移90度
turtle.stamp() #複製當前圖形
turtle.write(“hello,小朋友”,font=(‘宋體’,20,”normal”)) #添加括弧里的字元,font設置字元字體,大小以及作用
turtle.reste() #重置
turtle.hideturtle() #將畫筆隱藏
turtle.done() #把所繪圖顯示出來,不關閉繪圖軟體
給繪製的圖形填充顏色
turtle.begin_fill()
turtle.circle(100)
turtle.color(“yellow”)
turtle.end_fill()
1
2
3
4
例:畫出奧運五環
import turtle
turtle.color(“blue”)
turtle.circle(100)
turtle.penup()
turtle.goto(-200,0)
turtle.pendown()
turtle.color(“red”)
turtle.circle(100)
turtle.penup()
turtle.goto(200,0)
turtle.color(“yellow”)
turtle.pendown()
turtle.circle(100)
turtle.penup()
turtle.goto(-100,-100)
turtle.color(“black”)
turtle.pendown()
turtle.circle(100)
turtle.penup()
turtle.goto(100,-100)
turtle.color(“black”)
turtle.pendown()
turtle.circle(100)
turtle.done()
用Python畫圖
今天開始琢磨用Python畫圖,沒使用之前是一臉懵的,我使用的開發環境是Pycharm,這個輸出的是一行行命令,這個圖畫在哪裡呢?
搜索之後發現,它會彈出一個對話框,然後就開始畫了,比如下圖
第一個常用的庫是Turtle,它是Python語言中一個很流行的繪製圖像的函數庫,這個詞的意思就是烏龜,你可以想像下一個小烏龜在一個x和y軸的平面坐標系裡,從原點開始根據指令控制,爬行出來就是繪製的圖形了。
它最常用的指令就是旋轉和移動,比如畫個圓,就是繞著圓心移動;再比如上圖這個怎麼畫呢,其實主要就兩個命令:
turtle.forward(200)
turtle.left(170)
第一個命令是移動200個單位並畫出來軌跡
第二個命令是畫筆順時針轉170度,注意此時並沒有移動,只是轉角度
然後呢? 循環重複就畫出來這個圖了
好玩吧。
有需要仔細研究的可以看下這篇文章 ,這個牛人最後用這個庫畫個移動的鐘錶,太贊了。
Turtle雖好玩,但是我想要的是我給定數據,然後讓它畫圖,這裡就找到另一個常用的畫圖的庫了。
Matplotlib是python最著名的繪圖庫,它提供了一整套和matlab相似的命令API,十分適合互動式地行製圖。其中,matplotlib的pyplot模塊一般是最常用的,可以方便用戶快速繪製二維圖表。
使用起來也挺簡單,
首先import matplotlib.pyplot as plt 導入畫圖的圖。
然後給定x和y,用這個命令plt.plot(x, y)就能畫圖了,接著用plt.show()就可以把圖形展示出來。
接著就是各種完善,比如加標題,設定x軸和y軸標籤,範圍,顏色,網格等等,在 這篇文章里介紹的很詳細。
現在互聯網的好處就是你需要什麼內容,基本上都能搜索出來,而且還是免費的。
我為什麼要研究這個呢?當然是為了用,比如我把比特幣的曲線自己畫出來可好?
假設現在有個數據csv文件,一列是日期,另一列是比特幣的價格,那用這個命令畫下:
這兩列數據讀到pandas中,日期為df[‘time’]列,比特幣價格為df[‘ini’],那我只要使用如下命令
plt.plot(df[‘time’], df[‘ini’])
plt.show()
就能得到如下圖:
自己畫的是不是很香,哈哈!
然後呢,我在上篇文章 中介紹過求Ahr999指數,那可不可以也放到這張圖中呢?不就是加一條命令嘛
plt.plot(df[‘time’], df[‘Ahr999’])
圖形如下:
但是,Ahr999指數怎麼就一條線不動啊, 原來兩個Y軸不一致,顯示出來太怪了,需要用多Y軸,問題來了。
繼續谷歌一下,把第二個Y軸放右邊就行了,不過呢得使用多圖,重新繪製
fig = plt.figure() # 多圖
ax1 = fig.add_subplot(111)
ax1.plot(df[‘time’], df[‘ini’], label=”BTC price”) # 繪製第一個圖比特幣價格
ax1.set_ylabel(‘BTC price’) # 加上標籤
# 第二個直接對稱就行了
ax2 = ax1.twinx()# 在右邊增加一個Y軸
ax2.plot(df[‘time’], df[‘Ahr999’], ‘r’, label=”ahr999″) # 繪製第二個圖Ahr999指數,紅色
ax2.set_ylim([0, 50])# 設定第二個Y軸範圍
ax2.set_ylabel(‘ahr999’)
plt.grid(color=”k”, linestyle=”:”)# 網格
fig.legend(loc=”center”)#圖例
plt.show()
跑起來看看效果,雖然丑了點,但終於跑通了。
這樣就可以把所有指數都繪製到一張圖中,等等,三個甚至多個Y軸怎麼加?這又是一個問題,留給愛思考愛學習的你。
有了自己的數據,建立自己的各個指數,然後再放到圖形界面中,同時針對異常情況再自動進行提醒,比如要抄底了,要賣出了,用程序做出自己的晴雨表。
python turtle作圖問題
簡介:turtle是一個簡單的繪圖工具。它提供了一個海龜,你可以把它理解為一個機器人,只聽得懂有限的指令。
1.在文件頭寫上如下行,這能讓我們在語句中插入中文
#-*- coding: utf-8 -*-
2.用import turtle導入turtle庫
3.繪圖窗口的原點(0,0)在正中間。默認情況下,海龜向正右方移動。
4.操縱海龜繪圖有著許多的命令,這些命令可以劃分為兩種:一種為運動命令,一種為畫筆控制命令
(1)運動命令:
forward(d)
向前移動距離d代表距離
backward(d)
向後移動距離d代表距離
right(degree)
向右轉動多少度
left(degree)
向左轉動多少度
goto(x,y)
將畫筆移動到坐標為(x,y)的位置
stamp()
繪製當前圖形
speed(speed)
畫筆繪製的速度範圍[0,10]整數
(2)畫筆控制命令:
down()
畫筆落下,移動時繪製圖形
up()
畫筆抬起,移動時不繪製圖形
setheading(degree)
海龜朝向,degree代表角度
reset()
恢復所有設置
pensize(width)
畫筆的寬度
pencolor(colorstring)
畫筆的顏色
fillcolor(colorstring)
繪製圖形的填充顏色
fill(Ture)
fill(False)
circle(radius, extent)
繪製一個圓形,其中radius為半徑,extent為度數,例如若extent為180,則畫一個半圓;如要畫一個圓形,可不必寫第二個參數
5.幾個例子
1)畫一個邊長為60的三角形
#-*- coding: utf-8 -*-
importturtle
a=60
turtle.forward(a)
turtle.left(120)
turtle.forward(a)
turtle.left(120)
turtle.forward(a)
turtle.left(120)
2)畫一個邊長為60的正方形,並填充為紅色,邊框為藍色
#-*- coding: utf-8 -*-
importturtle
turtle.reset()
a= 60
turtle.fillcolor(“red”)
turtle.pencolor(“blue”)
turtle.pensize(10)
turtle.fill(True)
turtle.left(90)
turtle.forward(a)
turtle.left(90)
turtle.forward(a)
turtle.left(90)
turtle.forward(a)
turtle.left(90)
turtle.forward(a)
turtle.fill(False)
6.練習:
1)畫一個五邊形
2)畫一個六邊形
3)任意輸入一個正整數m(=3),畫一個多邊形(m條邊)
4)畫一個五角星,如下所示,注意填充為紅色
5)畫一個中國象棋棋盤,如下圖所示,其中漢字不必顯示出來:
6)繪製奧運五環圖,其中五種顏色分別為藍色、黑色、紅色、黃色和綠色。注意根據實際效果調整圓形的大小和位置。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/194576.html