第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

反轉(zhuǎn)數(shù)組中的點(diǎn) - Matplotlib

反轉(zhuǎn)數(shù)組中的點(diǎn) - Matplotlib

慕后森 2023-05-09 16:09:47
我在 Matplotlib 中繪制了一系列點(diǎn)。這是我的代碼:masked = r['masks']  fig=plt.figure()  ax2=fig.add_axes([0,0,1,1])  colors = ['b', 'g', 'r', 'c', 'm','y']  for idx in range(masked.shape[2]):    array = masked[:,:,idx]    xs = []    ys = []    for i in range(len(array)):        for j in range(len(array[0])):            if array[i][j] == True:                xs.append(j)                ys.append(i)    # ys.reverse()    ax2.scatter(xs, ys, color=str(colors[idx]))    plt.show()這給了我這個情節(jié): 情節(jié) 1當(dāng)我在上面的代碼片段中取消注釋時ys.reverse(),我希望圖像垂直翻轉(zhuǎn),但我卻得到了這個,這是完全錯誤的:地塊 2我該如何解決這個問題并使情節(jié)正確翻轉(zhuǎn)?注意:我不想要這樣的解決方案plt.gca.invert_yaxis()- 我想要更正點(diǎn)數(shù)組。謝謝,Vineeth
查看完整描述

2 回答

?
Helenr

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超4個贊

這是一個散點(diǎn)圖,因此反轉(zhuǎn)ys會弄亂數(shù)據(jù),即您的點(diǎn)將(x0, y0)變成(x0, yn).


如果你想翻轉(zhuǎn)ys而不僅僅是翻轉(zhuǎn)繪圖軸,你需要做一些類似的事情ys = (ys.max() + ys.min()) - ys。您可以替換(ys.max() + ys.min())為更合適的數(shù)字。


在您的代碼中,您將替換:


ax2.scatter(xs, ys, color=str(colors[idx]))

和:


xs = np.asarray(xs)

ys = np.asarray(ys)


# reverse ys

ys = (ys.max() + ys.min()) - ys


ax2.scatter(xs, ys, color=str(colors[idx]))


查看完整回答
反對 回復(fù) 2023-05-09
?
狐的傳說

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超3個贊

當(dāng)您繪制散點(diǎn)圖時,matplotlib 所做的是獲取 x 和 y 數(shù)組的第 n 個元素,并使用這些坐標(biāo)繪制一個點(diǎn)。這就是為什么僅僅顛倒順序不起作用的原因(至少我還沒有找到這樣的工作解決方案)。你應(yīng)該做的是正確地轉(zhuǎn)換點(diǎn) - 警告,前面有一些線性代數(shù)!這個想法很簡單:

  • 首先減去每個 xs 點(diǎn)的 xs 均值(它的均值將為零)

  • 然后,用水平翻轉(zhuǎn)矩陣 [[-1, 0], [0, 1]] 變換 xs 和 ys 點(diǎn)

  • 最后,將 xs 均值加回去,因此這些點(diǎn)再次以 x 為中心,位于它們之前的位置

因此,在創(chuàng)建數(shù)組后,您應(yīng)該嘗試以下操作:

xs_mean = sum(xs) / len(xs)

matrix = [[-1, 0], [0, 1]]


xss, yss = [], []

for x, y in zip(xss, yss):

    [x, y] = np.matmul(matrix, [x, y])

    xss.append(x + x_mean)

    yss.append(y)


ax2.scatter(xss, yss, color=str(colors[idx]))

我相信可能有更簡單的方法來做到這一點(diǎn),但我希望這被證明是有用的


查看完整回答
反對 回復(fù) 2023-05-09
  • 2 回答
  • 0 關(guān)注
  • 170 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號