導航:首頁 > 編程語言 > python畫圖如何給坐標加線

python畫圖如何給坐標加線

發布時間:2023-07-28 17:33:16

python_海龜繪圖_坐標系問題_畫筆各種方法-python工作筆記013

然後我們繼續看,這次我們用海龜繪圖,程序包,去畫畫,

看看海龜繪圖都有哪些方法

可以看到,先導入import turtle 海龜繪圖

然後turtle.showturtle() 會顯示一個箭頭

turtle.write("hello world") 會顯示對應文字

然後turtle.forward(300),會向前走300像素

然後看看海龜繪圖的,坐標體系

然後turtle.color("red"),把畫筆顏色換成紅色

然後turtle.left(90)把箭頭,逆時針轉90度

然後turtle.forward(300) 向前移動300個像素

然後turtle.goto(0,50) 走到0,50這個坐標點去

再看一下坐標系,原點0,0開始操作

還有上面這些操作,我們也試一試

turtle.goto(0,0)是回到原點

turtle.penup()是抬起畫筆

然後turtle.goto(0,300),turtle.goto(0,0) 然後再去,turtle.pendown()放下畫筆

然後再去turtle.goto(0,50) turtle.goto(50,50)走到對應的坐標去

然後再去turtle.circle(100),以100為半徑,逆時針畫一個圓

可以看到,半徑是100對吧

Ⅱ 如何使用python在一張圖片上畫左上角到右下角的對角線請提供詳細代碼 謝謝!

#-*-coding:utf-8-*-


fromPILimportImage
importImageDraw

#打開圖像
img=Image.open('i.jpg')
img_d=ImageDraw.Draw(img)
#兩個參數,前面是x,y坐標,後面是顏色
img_d.line(((0,0),img.size),(0,0,0))
#保存圖片
img.save('ii.jpg')

自己看看PIL庫吧

Ⅲ 用Python畫圖

今天開始琢磨用Python畫圖,沒使用之前是一臉懵的,我使用的開發環境是Pycharm,這個輸出的是一行行命令,這個圖畫在哪裡呢?

搜索之後發現,它會彈出一個對話框,然後就開始畫了,比如下圖

第一個常用的庫是Turtle,它是Python語言中一個很流行的繪制圖像的函數庫,這個詞的意思就是烏龜,你可以想像下一個小烏龜在一個x和y軸的平面坐標系裡,從原點開始根據指令控制,爬行出來就是繪制的圖形了。

  它最常用的指令就是旋轉和移動,比如畫個圓,就是繞著圓心移動;再比如上圖這個怎麼畫呢,其實主要就兩個命令:

turtle.forward(200)

turtle.left(170)

第一個命令是移動200個單位並畫出來軌跡

第二個命令是畫筆順時針轉170度,注意此時並沒有移動,只是轉角度

然後呢? 循環重復就畫出來這個圖了

好玩吧。

有需要仔細研究的可以看下這篇文章 https://blog.csdn.net/zengxiantao1994/article/details/76588580 ,這個牛人最後用這個庫畫個移動的鍾表,太贊了。

Turtle雖好玩,但是我想要的是我給定數據,然後讓它畫圖,這里就找到另一個常用的畫圖的庫了。

Matplotlib是python最著名的繪圖庫,它提供了一整套和matlab相似的命令API,十分適合互動式地行制圖。其中,matplotlib的pyplot模塊一般是最常用的,可以方便用戶快速繪制二維圖表。

使用起來也挺簡單,

首先import matplotlib.pyplot as plt 導入畫圖的圖。

然後給定x和y,用這個命令plt.plot(x, y)就能畫圖了,接著用plt.show()就可以把圖形展示出來。

接著就是各種完善,比如加標題,設定x軸和y軸標簽,范圍,顏色,網格等等,在 https://blog.csdn.net/guoziqing506/article/details/78975150 這篇文章里介紹的很詳細。

現在互聯網的好處就是你需要什麼內容,基本上都能搜索出來,而且還是免費的。

我為什麼要研究這個呢?當然是為了用,比如我把比特幣的曲線自己畫出來可好?

假設現在有個數據csv文件,一列是日期,另一列是比特幣的價格,那用這個命令畫下:

這兩列數據讀到pandas中,日期為df['time']列,比特幣價格為df['ini'],那我只要使用如下命令

plt.plot(df['time'], df['ini'])

plt.show()

就能得到如下圖:

自己畫的是不是很香,哈哈!

然後呢,我在上篇文章 https://www.jianshu.com/p/d4013d8a73de 中介紹過求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中畫圖,坐標軸如何加粗

選擇圖片上方的箭頭,雙擊圖片,在右下方有個「more properties...」,單擊打開裡面有個「LineWidth」,修改就可以改變線寬!

或者使用下面的語句
h=plot(x,y)
g=get(h,'Parent')
set(g,'LineWidth',2)

Ⅳ python畫圖縱坐標

簡單的可以這樣,舉個例子,數據就直接用圖片中的一部分:

frompylabimport*
fromdatetimeimportdatetime

data_str="""2016-06-15_16:2599.7324
2016-06-15_17:2599.7323
2016-06-15_18:2599.7322
2016-06-15_19:2599.7349
2016-06-15_20:2599.7207"""

lines=data_str.split(' ')

X_labels=[]
X=[]
Y=[]
forlineinlines:
xy=line.split()
X_labels.append(xy[0])
X.append(datetime.strptime(xy[0],"%Y-%m-%d_%H:%M"))
Y.append(float(xy[1]))

figure(figsize=(8,6))
plot(X,Y,'b.-')
grid(True)
xticks(X,X_labels,rotation=90)
subplots_adjust(bottom=0.35)
savefig('graph.png')
show()

畫出來效果如上所示。

數據多了的時候有些參數要自己調整一下。

Ⅵ python中怎麼在等高線圖中添加參考線

#導入模塊

import numpy as np

import matplotlib.pyplot as plt


#建立步長為0.01,即每隔0.01取一個點

step = 0.01

x = np.arange(-10,10,step)

y = np.arange(-10,10,step)

#也可以用x = np.linspace(-10,10,100)表示從-10到10,分100份


#將原始數據變成網格數據形式

X,Y = np.meshgrid(x,y)

#寫入函數,z是大寫

Z = X**2+Y**2

#填充顏色,f即filled

plt.contourf(X,Y,Z)

#畫等高線

contour = plt.contour(X,Y,Z)

#平行於坐標系的參考線

plt.axhline(y=2.5,c='red',ls='--',lw=3)

plt.axvline(x=2,c='green',ls='--',lw=3)

#等高線上標明z(即高度)的值,默認是保留3個小數,可以如下保留四位

plt.clabel(contour,fontsize=10,colors=('k','r'),fmt='%.2f')

plt.show()

差不多就這樣吧,有問題的話再留言吧

Ⅶ python繪圖篇

1,xlable,ylable設置x,y軸的標題文字。

2,title設置標題。

3,xlim,ylim設置x,y軸顯示範圍。

plt.show()顯示繪圖窗口,通常情況下,show()會阻礙程序運行,帶-wthread等參數的環境下,窗口不會關閉。

plt.saveFig()保存圖像。

面向對象繪圖

1,當前圖表和子圖可以用gcf(),gca()獲得。

subplot()繪制包含多個圖表的子圖。

configure subplots,可調節子圖與圖表邊框距離。

可以通過修改配置文件更改對象屬性。

圖標顯示中文

1,在程序中直接指定字體。

2, 在程序開始修改配置字典reParams.

3,修改配置文件。

Artist對象

1,圖標的繪制領域。

2,如何在FigureCanvas對象上繪圖。

3,如何使用Renderer在FigureCanvas對象上繪圖。

FigureCanvas和Render處理底層圖像操作,Artist處理高層結構。

分為簡單對象和容器對象,簡單的Aritist是標準的繪圖元件,例如Line 2D,Rectangle,Text,AxesImage等,而容器類型包含許多簡單的的 Aritist對象,使他們構成一個整體,例如Axis,Axes,Figure等。

直接創建Artist對象進項繪圖操作步奏:

1,創建Figure對象(通過figure()函數,會進行許多初始化操作,不建議直接創建。)

2,為Figure對象創建一個或多個Axes對象。

3,調用Axes對象的方法創建各類簡單的Artist對象。

Figure容器

如何找到指定的Artist對象。

1,可調用add_subplot()和add_axes()方法向圖表添加子圖。

2,可使用for循環添加柵格。

3,可通過transform修改坐標原點。

Axes容器

1,patch修改背景。

2,包含坐標軸,坐標網格,刻度標簽,坐標軸標題等內容。

3,get_ticklabels(),,get-ticklines獲得刻度標簽和刻度線。

1,可對曲線進行插值。

2,fill_between()繪制交點。

3,坐標變換。

4,繪制陰影。

5,添加註釋。

1,繪制直方圖的函數是

2,箱線圖(Boxplot)也稱箱須圖(Box-whisker Plot),是利用數據中的五個統計量:最小值、第一四分位

數、中位數、第三四分位數與最大值來描述數據的一種方法,它可以粗略地看出數據是否具有對稱性以及分

布的分散程度等信息,特別可以用於對幾個樣本的比較。

3,餅圖就是把一個圓盤按所需表達變數的觀察數劃分為若干份,每一份的角度(即面積)等價於每個觀察

值的大小。

4,散點圖

5,QQ圖

低層繪圖函數

類似於barplot(),dotchart()和plot()這樣的函數採用低層的繪圖函數來畫線和點,來表達它們在頁面上放置的位置以及其他各種特徵。

在這一節中,我們會描述一些低層的繪圖函數,用戶也可以調用這些函數用於繪圖。首先我們先講一下R怎麼描述一個頁面;然後我們講怎麼在頁面上添加點,線和文字;最後講一下怎麼修改一些基本的圖形。

繪圖區域與邊界

R在繪圖時,將顯示區域劃分為幾個部分。繪制區域顯示了根據數據描繪出來的圖像,在此區域內R根據數據選擇一個坐標系,通過顯示出來的坐標軸可以看到R使用的坐標系。在繪制區域之外是邊沿區,從底部開始按順時針方向分別用數字1到4表示。文字和標簽通常顯示在邊沿區域內,按照從內到外的行數先後顯示。

添加對象

在繪制的圖像上還可以繼續添加若干對象,下面是幾個有用的函數,以及對其功能的說明。

•points(x, y, ...),添加點

•lines(x, y, ...),添加線段

•text(x, y, labels, ...),添加文字

•abline(a, b, ...),添加直線y=a+bx

•abline(h=y, ...),添加水平線

•abline(v=x, ...),添加垂直線

•polygon(x, y, ...),添加一個閉合的多邊形

•segments(x0, y0, x1, y1, ...),畫線段

•arrows(x0, y0, x1, y1, ...),畫箭頭

•symbols(x, y, ...),添加各種符號

•legend(x, y, legend, ...),添加圖列說明

閱讀全文

與python畫圖如何給坐標加線相關的資料

熱點內容
汽車導航不讀文件夾 瀏覽:107
全球雲伺服器如何注冊 瀏覽:884
udp直播流如何在伺服器里播放器 瀏覽:591
macbrew安裝php 瀏覽:425
點特徵提取演算法 瀏覽:502
python彈窗顯示輸入的文字 瀏覽:751
python數字和中文互轉 瀏覽:639
汽車空調壓縮機外殼 瀏覽:458
大型伺服器都是採用什麼模式 瀏覽:5
伺服器為什麼跳閘 瀏覽:398
怎麼用python分析基金收益 瀏覽:990
couple演算法 瀏覽:791
android調用文件管理器 瀏覽:152
中國我的世界最大的小游戲伺服器地址 瀏覽:833
程序員爆破粒子 瀏覽:889
我的世界pcl啟動器怎麼加入伺服器 瀏覽:253
傳奇源碼擴充人物結構 瀏覽:844
購買多個文件夾 瀏覽:774
其他app如何投屏到微光視頻教學 瀏覽:340
車輛不解壓會給大綠本嗎 瀏覽:789