『壹』 python plot畫點
我先假設你用的是python(雖然我感覺像是matlab)
importmatplotlib.pyplotasplt
plt.plot(x,y,'ro',label="point")
plt.legend()
plt.show()
這里legend可以顯示圖示
如果是matlab 你直接標legend=xxxx就行了 可以查一下用法
『貳』 python中點圓畫法
1、我們的電腦上要安裝有Python,我們找到安裝的Python並打開。
2、在打開的Python窗口中執行文件菜單的新建命令,新建一個idle的文件項目。
3、在新建的idle項目中輸入下面代碼:importturtle、turtle.color("blue")turtle.circle(100)繪制出第一個大圓出來。
4、下面執行第一個帶蔽大圓的填充命令,執行下面代碼:importturtle、褲行配turtle.color("blue")、turtle.begin_fill()、turtle.circle(100)、turtle.end_fill()、通過turtle.begin_fill()與turtle.endfill()。
5、下面來畫第二個小圓,需要先跳轉畫筆,並更改畫筆顏色,畫出第胡指二個小圓。跳轉畫筆使用goto命令。
6、最後畫中間的小圓操作和大圓一樣,執行填充命令即可。這樣一個圓中圓的效果就完成了。
『叄』 如何使用Python在屏幕上作畫
fromturtleimport*
defcurvemove():
for蔽輪iinrange(200):
right(1)
forward(1)
color('red','pink')宏銀信
begin_fill()
left(140)
forward(111.65)
curvemove()
left(120)
curvemove()
forward(111.65)
end_fill()
done()
要用turtle模塊,如果要畫更復雜的畫要用第三方模塊。以上畫了個「心」搏升。
『肆』 python 畫點連線
沒有太明白你的意思:依次連接我理解的是按照生成的順序連接
隨機產生點用random模塊
random().random()() 生成0至1之間的隨機浮點數,結果大於等於0.0,小於1.0
random.randint(a,b) 生成1至5之間的隨機整數,結果大於等於1,小於等於5,a必須小於等於b
random.choice(testlist)從testlist中隨機挑選一個數,也可以是元組、字元串
劃線函數可以用下面的
dc = wx.PaintDC(self)
dc.SetPen(wx.Pen('red',1))
dc.DrawLine(10, 0, 20, 100)
『伍』 如何和採用Python語言在turtle工具畫散點
1 import turtle #導入turtle模塊 2 turtle.color("blue") #定義顏色 3 turtle.penup() #penup和pendown()設置畫筆抬起或放下時是否繪制直線 4 turtle.goto(-110,-25) #初始位置以中心坐標為(0,0) 5 turtle.pendown() 6 turtle.circle(45) #繪制...
『陸』 python如何畫標簽為0,1的原點
簡單介紹python中的繪圖
繪制簡單的折線圖
散點圖
設置每個坐標軸的取值范圍
將主點顏色改成白,邊緣顏色為紅
自動保存圖表
隨機漫步
隨機漫步漸變色
小知識點
繪制起點和終點
畫布尺寸
隱藏坐標軸
pygal
roll one dice
繪制簡單的折線圖
首先下載matplotlib安裝程序
import matplotlib.pyplot as plt
x_values = [1, 2, 3, 4, 5, 6] # 代表x軸的值
y_values = [1, 2, 4, 8, 16, 32] # 代表與x相對應的y軸的值
# plt.plot(y_values, linewidth=3)
plt.plot(x_values, y_values, linewidth=3)
# 設置圖表標題,並改變橫縱坐標的名稱
plt.title("figure test", fontsize=24)
plt.xlabel("xValue", fontsize=14)
plt.ylabel("yValue", fontsize=14)
# 更改刻度標記的大小
plt.tick_params(axis='both', labelsize=12)
plt.show() # 打開matplotlib查看器,顯示繪制的圖形
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
散點圖
import matplotlib.pyplot as plt
# 繪制單個x = 2, y = 4坐標軸上的點
# plt.scatter(2, 4, s=100) # s用來更改慎掘棗單個點的大小
# 繪制一群點
x_values = [1, 2, 3, 4, 5]
y_values = [1, 2, 4, 8, 16]
plt.scatter(x_values, y_values, s=100)
# 設置圖表標題,並改變橫縱坐標的名稱
plt.title("figure test", fontsize=24)
plt.xlabel("xValue", fontsize=14)
plt.ylabel("yValue", fontsize=14)
# 更改刻度標記的大小
plt.tick_params(axis='both', which = 'major', labelsize=12)
plt.show()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
另一種方法繪制此圖:(散敗自動生成數據)
import matplotlib.pyplot as plt
# 繪制單個x = 2, y = 4坐標寬拆軸上的點
# plt.scatter(2, 4, s=100) # s用來更改單個點的大小
# 繪制一群點
i = 1
x_values = list(range(1, 6))
y_values = [2**(i-1) for i in x_values]
plt.scatter(x_values, y_values, s=100)
# 設置圖表標題,並改變橫縱坐標的名稱
plt.title("figure test", fontsize=24)
plt.xlabel("xValue", fontsize=14)
plt.ylabel("yValue", fontsize=14)
# 更改刻度標記的大小
plt.tick_params(axis='both', which='major', labelsize=12)
plt.show()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
設置每個坐標軸的取值范圍
plt.axis([0, 100, 0, 1000])
1
1
前面對應x, 後面對應y
將主點顏色改成白,邊緣顏色為紅
plt.scatter(x_values, y_values, c='white', edgecolor='red', s=20)
plt.scatter(x_values, y_values, c=(1, 1, 1), edgecolor='red', s=20)
1
2
1
2
c for color; 含三個0~1之間的小數值
顏色映射(colormap)
plt.scatter(x_values, y_values, c=y_values, cmap=plt.cm.Reds,
edgecolor='none', s=40)
1
2
1
2
要了解pyplot中所有的顏色映射: https://matplotlib.org/gallery/color/colormap_reference.html#sphx-glr-gallery-color-colormap-reference-py
自動保存圖表
plt.savefig(『Figure1.png』, bbox_inches=『tight』)
第一個參數表示名字, 將其以Figure1.png存儲在example.py同一個文件夾里
第二個參數表示將圖表多餘的空白區域裁剪掉
隨機漫步
隨機遊走(random walk)也稱隨機漫步,隨機行走等是指基於過去的表現,無法預測將來的發展步驟和方向。核心概念是指任何無規則行走者所帶的守恆量都各自對應著一個擴散運輸定律 ,接近於布朗運動,是布朗運動理想的數學狀態,現階段主要應用於互聯網鏈接分析及金融股票市場中。(來自網路)
import matplotlib.pyplot as plt
from random import choice
class RandomWalk:
def __init__(self, num_points=5000):
self.num_points = num_points
# 從(0, 0)開始出發
self.x_values = [0]
self.y_values = [0]
def start_walk(self):
while len(self.x_values) < self.num_points:
x_direction = choice([-1, 1])
x_distance = choice([0, 1, 2])
x_walk = x_direction * x_distance
y_direction = choice([1, -1])
y_distance = choice([0, 10, 20])
y_walk = y_direction * y_distance
# 拒絕原地不動
if x_walk == 0 and y_walk == 0:
continue
# 計算下一個點的x和y值
next_x = self.x_values[-1] + x_walk # 從x_values的倒數第一個開始加上x方向走的距離
next_y = self.y_values[-1] + y_walk # 從y_values的倒數第一個開始加上y方向走的距離
self.x_values.append(next_x)
self.y_values.append(next_y)
randomwalk = RandomWalk()
randomwalk.start_walk()
plt.scatter(randomwalk.x_values, randomwalk.y_values, s=5)
plt.show()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
隨機漫步漸變色
randomwalk = RandomWalk()
randomwalk.start_walk()
point_numbers = list(range(randomwalk.num_points))
plt.scatter(randomwalk.x_values, randomwalk.y_values, c=point_numbers, cmap=plt.cm.Reds, edgecolor='none', s=5)
plt.show()
1
2
3
4
5
6
7
1
2
3
4
5
6
7
小知識點
繪制起點和終點
randomwalk = RandomWalk()
randomwalk.start_walk()
point_numbers = list(range(randomwalk.num_points))
plt.scatter(randomwalk.x_values, randomwalk.y_values, c=point_numbers, cmap=plt.cm.Reds, edgecolor='none', s=5)
# 繪制起點和終點
plt.scatter(0, 0, c='green', edgecolors='none', s=100)
plt.scatter(randomwalk.x_values[-1], randomwalk.y_values[-1], c='red', edgecolors='none', s=100)
plt.show()
1
2
3
4
5
6
7
8
9
10
11
1
2
3
4
5
6
7
8
9
10
11
畫布尺寸
plt.figure(dpi=128, figsize=(10, 6))
單位為英寸;函數figure()用於指定圖表的寬度、高度、解析度和背景色。
dpi: 傳遞解析度
隱藏坐標軸
plt.axes().get_xaxis().set_visible(False)
plt.axes().get_yaxis().set_visible(False)
pygal
http://www.pygal.org/en/stable/documentation/types/index.html
roll one dice
from random import randint
import pygal
class Die:
def __init__(self, num_sides=6):
self.num_sides = num_sides
def roll(self):
return randint(1, self.num_sides)
die = Die()
results = []
# 擲100次骰子
for roll_num in range(100):
result = die.roll()
results.append(result)
frequencies = []
for value in range(1, die.num_sides + 1):
frequency = results.count(value)
frequencies.append(frequency)
horizontal_bar_chart = pygal.Bar()
horizontal_bar_chart.title = "randomly roll a 6-side die"
horizontal_bar_chart.x_labels = ['1', '2', '3', '4', '5', '6']
horizontal_bar_chart.x_title = "Result"
horizontal_bar_chart.y_title = "Frequency"
horizontal_bar_chart.add('6side', frequencies)
horizontal_bar_chart.render_to_file('die_visual.svg')
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
『柒』 python matplotlib 如何畫點 而不要畫點之間的連線
plot(x,y,marker='*')
用marker參數來指定,或者用set_marker函數,參看matplotlib的幫助
>>>from matplotlib.lines import Line2D
>>> help(Line2D.set_marker)
def set_marker(self, marker):
"""
Set the line marker
========== ==========================
marker description
========== ==========================
'.' point
',' pixel
'o' circle
'v' triangle_down
'^' triangle_up
'<' triangle_left
'>' triangle_right
'1' tri_down
'2' tri_up
'3' tri_left
'4' tri_right
's' square
'p' pentagon
'*' star
'h' hexagon1
'H' hexagon2
'+' plus
'x' x
'D' diamond
'd' thin_diamond
'|' vline
'_' hline
TICKLEFT tickleft
TICKRIGHT tickright
TICKUP tickup
TICKDOWN tickdown
CARETLEFT caretleft
CARETRIGHT caretright
CARETUP caretup
CARETDOWN caretdown
'None' nothing
' ' nothing
'' nothing
========== ==========================
ACCEPTS: [ '+' | '*' | ',' | '.' | '1' | '2' | '3' | '4'
| '<' | '>' | 'D' | 'H' | '^' | '_' | 'd'
| 'h' | 'o' | 'p' | 's' | 'v' | 'x' | '|'
| TICKUP | TICKDOWN | TICKLEFT | TICKRIGHT
| 'None' | ' ' | '' ]
"""
『捌』 python怎麼在屏幕上畫圖
首先說你的要求有些不明確的部分
比如說你在所有窗體上寫
那是否畫圖的同時還要拖動其他窗體?
這個要求的話
目前的python各種gui庫貌似還沒有支持到這么個繪畫不規則窗體而不會擋住其他窗體還又在其上的;
如果只是在他們上面你可以畫圖而不用一定要拖動其他窗體的話
可以設計窗體為全屏大小,背景透明,不顯示標題欄,然後用普通的畫圖函數就可以了
對了
推薦使用wxpython
『玖』 怎樣用python畫圖
思路:
1. 確定好需要畫的圖。
2. 創建一個畫布,用來畫你需要的圖。
(1)畫布大小,可以使用默認大小,也可以自定義畫布大小。
(2)畫布背景色bgcolor()。
(3)確定起點位置。
3. 畫筆的設置。
(1)畫筆的大小,顏色。
(2)畫筆運行屬性。
二、定義畫布參數
importturtleast
t.screensize(width=None,heigh=None,bg=None)#以像素為單位,參數分別為畫布的寬,高,背景色
t.screensize()#返回默認大小(400,300)
t.Screen()#也是表示默認畫布大小,注意S大寫
t.setup(w=0.5,h=0.75,startx=None,starty=None)#w,h為整數是表示像素,為小數時表示占據電腦屏幕的比例
#startx,starty坐標表示矩形窗口左上角頂點的位置,默認為屏幕中心位置
三、定義畫筆
1、畫筆的狀態
在畫布上默認有一個坐標原點為畫布中心的坐標軸,坐標原點上有一隻面朝x軸正方向小烏龜。這里我們描述小烏龜時使用了兩個詞語:坐標原點(位置),面朝x軸正方向(方向),turtle繪圖中,就是使用位置方向描述小烏龜(畫筆)的狀態。
2、畫筆的屬性
畫筆(畫筆的屬性,顏色、畫線的寬度)
(1)turtle.pensize():設置畫筆的寬度;
(2)turtle.pencolor():沒有參數傳入,返回當前畫筆顏色,傳入參數設置畫筆顏色,可以是字元串如"green","red",也可以是RGB 3元組;
>>>pencolor('brown')
>>>tup=(0.2,0.8,0.55)
>>>pencolor(tup)
>>>pencolor()
'#33cc8c'
(3)turtle.speed(speed):設置畫筆移動速度,畫筆繪制的速度范圍[0,10]整數,數字越大越快。
相關推薦:《Python入門教程》
3、繪圖命令
操縱海龜繪圖有著許多的命令,這些命令可以劃分為3種:一種為運動命令,一種為畫筆控制命令,還有一種是全局控制命令。
(1)畫筆運動命令:
(3)全局控制命令:
四、命令詳解
turtle.circle(radius,extent=None,steps=None)
描述:以給定半徑畫圓
參數:
radius(半徑);半徑為正(負),表示圓心在畫筆的左邊(右邊)畫圓;
extent(弧度) (optional);
steps (optional) (做半徑為radius的圓的內切正多邊形,多邊形邊數為steps);
舉例:
circle(50)#整圓;
circle(50,steps=3)#三角形;
circle(120,180)#半圓
五、繪圖舉例
(1)菱形太陽花
importturtleast#turtle庫是python的內部庫,直接import使用即可
defdraw_diamond(turt):
foriinrange(1,3):
turt.forward(100)#向前走100步
希望我的回答對你有幫助
『拾』 Python屏幕操作
實現對電腦屏幕自動點擊操作,減少工作量。python 環境3.6 windows 10。目前教程比較多的是PyUserinput 但是pyhook是一個坑啊,不兼容3.x 解決比較麻煩。因此找到了pyautogui,它的功能比較多有興趣的可以查看的文檔,我只選擇了它的點擊功能。git地址 在此 。
window下不需要其他依賴,但是目前直接用pip安裝pyautogui,其中pygetwindow模塊會因為編碼問題報錯。需要先安裝pygetwindow 。
輸入如下命令
pip install pygetwindow==0.0.1
然後使用pip 安裝pyautogui。
pip install autogui.
即可完成pyautogui的安裝。
簡單的demo(偷偷的):
比較簡單的例子。有興趣的朋友可以多研究研究哦。
還有其他功能的demo在文檔中,感興趣可以多看看。