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

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

使用 Matplotlib 繪制點顯示不正確

使用 Matplotlib 繪制點顯示不正確

暮色呼如 2021-12-29 17:18:27
我的目標(biāo)是創(chuàng)建兩個隨機數(shù)據(jù)數(shù)組并檢查它們是否落入半徑為 1 的圓內(nèi),使用公式 x^2 + y^2 < 1。落入圓內(nèi)的應(yīng)繪制為藍色圓圈那些落在圓圈外的應(yīng)該繪制為黃色圓圈。我設(shè)法創(chuàng)建了數(shù)組,檢查它們是否在圓圈內(nèi),然后繪制它們。import matplotlib.pyplot as pltimport numpy as npplots = 100#creates x-coordinatesdataOne = np.random.random(size = plots)#creates y-coordinatesdataTwo = np.random.random(size = plots)circle = plt.Circle((0,0), 1, alpha = 0.1)plt.gca().add_patch(circle)plt.xlim(0, 2)plt.ylim(0, 2)squareDataOne = dataOne ** 2squareDataTwo = dataTwo ** 2squareRootData = np.sqrt(squareDataOne + squareDataTwo)insideCircle = squareRootData < 1for values in insideCircle:    if values == True:       plt.plot(squareDataOne, squareDataTwo, 'bo')    else:        plt.plot(squareDataOne, squareDataTwo, 'yo')plt.show()  我的問題在于情節(jié)本身。繪制時,我有落在圓圈外的點仍然是藍色的。圖中根本沒有出現(xiàn)黃色圓圈。任何關(guān)于我的代碼錯誤的建議表示贊賞。
查看完整描述

2 回答

?
阿晨1998

TA貢獻2037條經(jīng)驗 獲得超6個贊

你應(yīng)該試試


for i in range(len(insideCircle)):

    if insideCircle[i]:

        plt.plot(dataOne[i], dataTwo[i], 'bo')

    else:

        plt.plot(dataOne[i], dataTwo[i], 'yo')


plt.show()    

編輯:您應(yīng)該繪制dataOne和dataTwo而不是squareDataOne和squareDataTwo(在代碼中更改)


查看完整回答
反對 回復(fù) 2021-12-29
?
慕工程0101907

TA貢獻1887條經(jīng)驗 獲得超5個贊

您需要更多地考慮向量化的術(shù)語,并了解更多有關(guān)切片 numpy 數(shù)組的知識。對此有一個非常優(yōu)雅的解決方案:


is_inside = np.sqrt(dataOne**2 + dataTwo**2) < 1

plt.plot(dataOne[is_inside], dataTwo[is_inside], 'bo')

plt.plot(dataOne[~is_inside], dataTwo[~is_inside], 'yo')


查看完整回答
反對 回復(fù) 2021-12-29
  • 2 回答
  • 0 關(guān)注
  • 167 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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