python matplotlib繪圖這個縱軸為什麼會出問題

2021-04-02 08:10:11 字數 3797 閱讀 9329

1樓:匿名使用者

import matplotlib.pyplot as pltimport random

x1 = list(range(10))

y1 = [random.randint(0,10) for i in range(10)]

plt.plot(x1, y1,  color='r',marke***cecolor='blue',marker='o')

for a, b in zip(x1, y1):

plt.text(a, b, (a,b),ha='center', va='bottom', fontsize=10)

plt.legend()

plt.show()

python用matplotlib繪圖時,曲線或散點怎麼刪除?

2樓:山炮小二黑

在matplotlib中,每一個物件(圖示,軸等)都提供了各種方法來獲取其屬性或者之類物件。

如,最大的artist容器是matplotlib.figure.figure,它包括組成圖表的所有元素。

圖表的背景是一個rectangle物件,用figure.patch屬性表示。當你通過呼叫add_subplot或者add_axes方法往圖表中新增軸(子圖時),這些子圖都將新增到figure.

axes屬性中,同時這兩個方法也返回新增進axes屬性的物件,注意返回值的型別有所不同,實際上axessubplot是axes的子類。

fig = plt.figure()

ax = fig.add_subplot(1,1,1)

然後我們新增一條「line」到這個「axes」中去

lines = ax.plot(np.arange(1000))

此時,你可以執行fig.show()檢視到圖表物件中已經多了一條線

當然,你也可以吧lines物件的位置列印出來,我這裡是:

ok,可能這個時候你已經知道如何做了,通過查詢api我們知道是有一個pop方法的,那麼你可能會這麼寫:

lines.pop(0)

然後你會再次執行程式,你會發現畫的先仍然存在,為什麼呢?

好吧,其實這個地方你可以理解為是一個值傳遞,而非引用刪除,那麼正確的方法是:

ax.lines.pop(0)

你同樣可以這樣,傳遞一個地址過去

ax.lines.remove(lines[0])

你大概可能通過這些方法進行刪除

lines.pop(0)

lines.remove()

del lines

回答完畢。

python的 matplotlib畫圖,怎麼把子圖的每個橫座標顯示出來? 5

3樓:匿名使用者

import matplotlib.pyplot as plt

plt.rcparams['font.sans-serif'] = ['simhei'] # 用來正常顯示中文標籤

plt.rcparams['axes.unicode_minus'] = false # 用來正常顯示負號

fig = plt.figure(figsize=(20, 20), dpi=80)

ax1 = fig.add_subplot(2,2,1)

x = range(5)

y = [2, 2, 5, 2, 4]

s = ['數量1', '數量2', '數量3', '數量4', '數量5']

plt.bar(x, y, width=0.5)

plt.xticks(x, s, rotation=270)

plt.xlabel('資料情況' )

plt.ylabel('數量(個)')

for xl, yl in zip(x, y):

plt.text(xl, yl+0.3, str(yl), ha='center', va='bottom', fontsize=10.5)

ax2 = fig.add_subplot(2,2,2)

plt.bar(range(4), [3, 4,2,3], width=0.3)

ax3 = fig.add_subplot(2,2,3)

plt.bar(range(4), [3, 4,2,3], width=0.3)

ax4 = fig.add_subplot(2,2,4)

plt.bar(range(4), [3, 4,2,3], width=0.3)

plt.show()

4樓:匿名使用者

ax = subplots(nrows,ncols,sharex,sharey,squeeze,subplot_kw,gridspec_kw,**fig_kw)  

建立畫布和子圖。

nrowsncols表示將畫布分割成幾行幾列 ,

sharexsharey表是共用xy軸的設定。

squeeze  bool

a.預設引數為true:額外的維度從返回的axes(軸)物件中擠出,對於n*1或1*n個子圖,返回一個1維陣列,對於n*m,n>1和m>1返回一個2維陣列。

b.為false,不進行擠壓操作:返回一個元素為axes例項的2維陣列,即使它最終是1x1。

subplot_kw:字典型別,可選引數。把字典的關鍵字傳遞給add_subplot()來建立每個子圖。

subplot_kw:字典型別,可選引數。把字典的關鍵字傳遞給add_subplot()來建立每個子圖。

gridspec_kw:字典型別,可選引數。把字典的關鍵字傳遞給gridspec建構函式建立子圖放在網格里(grid)。

**fig_kw:把所有詳細的關鍵字引數傳給figure()函式。

可見你沒有辦法單獨設定某個子圖的ax的。

5樓:匿名使用者

首先你得把**放上來,別人才能回答呀

6樓:匿名使用者

我也表示想知道,你解決了嗎

7樓:匿名使用者

在python中使用matplotlib畫圖,預設橫座標都是由小到大(1,2,3,4,5),但我現在專案特殊需求,想讓橫座標值由大到小逆序顯示(5,4,3,2,1),如何實現呢?

import matplotlib.pyplot as pltplt.figure()

ax1 = plt.subplot(121)ax2 = plt.subplot(122)xlist = [1,2,3,4,5]

ylist = [10,20,30,40,50]plt.sca(ax1)

plt.title("test x label")plt.xlabel("x")

plt.ylabel("y")

plot1, = plt.plot(xlist,ylist,'ro')

plt.show()

python使用matplotlib做出的圖,怎麼輸出高清的影象

8樓:匿名使用者

matplotlib

是一個由 john hunter 等開發的,用以繪製二維圖形的 python 模組。它利用了 python 下的數值計算模組 numeric

及 numarray,克隆回了許多 matlab 中的函答數, 用以幫助使用者輕鬆地獲得高質量的二維圖形。

為什麼會出現負荊請罪這個故事

因為有這樣一個真實故事值得人學習所以廣為流傳。負荊請罪講述了怎樣的故事?有兩種說法 1 秦國為了攻取。趙國不斷地向趙國進攻,在第三年的時候趙國損失慘重,但是秦軍的勢力也被制。止,於是秦國想和趙國講和,這樣可以一起攻打楚國。秦國為此派了使者來到了趙。國,約了趙王在澠池見面。秦王表面想和趙王和好,但是處...

為什麼手上會出現這個白點如何去除

這是缺鈣的現象,多吃點蔬菜和水果,我以前也有過。刮蹭到的,沒事自然會消失,不放心抹點指甲油修復下 我的手機上面怎麼觸控一下螢幕出現一個小白點 怎麼取消白點啊?設定 關於手機。連續點七次版本號進入開啟開發者模式。然後去設定 開發者模式。關閉 顯示觸控操作 以及 開發人員選項 開關,返回主螢幕。那個小白...

為什麼說這個世界沒有壞人也沒有好人,這個問題困擾我很久了一直

其實他的意思就是bai說,du沒有壞人,也沒有好人,很多人他zhi們dao都只是為自己思考,看你怎 內麼去對待,當你對容待一個壞人的時候,你有足夠的能力,那麼你就會讓他變成一個好人,當一個好人,也沒有能力去把控,你做的不夠好,他也會變成一個壞人。有個問題一直想不通,困擾我很久了,說出來看看別人怎麼想...