我有三個陣列:
a=np. array([-10,-6, -4, 0,14, 2, 4,12,3, 6, 8,14,11] )
b=np. array([0,5,5,6,8, 10, 2,2,0,0, 0,0,7] )
c=np. array([4,6,10,40,22,14, 20,8,12, 4,3,6,-4】)
我想做一個c(y-axis)值與a(x-axis)值的對比圖,但只針對那些對應于b=0的值,也只針對a>0。 因此,我想找到一種方法來產生新的陣列,它將會給出。
a_new= [3,6,8,14]和相應的(與指數匹配)c_new= [12,4,3,6]。然后我將只是繪制c_new vs a_new。
這只是一個樣本資料。我的實際資料集相當大,所以如果能找到一個快速的方法,那就太好了。希望得到任何幫助!
uj5u.com熱心網友回復:
你可以用你的條件創建一個陣列,用它從a和c中選擇。
importmatplotlib.pyplot as plt
select = (b == 0) & (a > 0)
plt.plot(a[select], c[select])
plt.xlabel('a')
plt.ylabel('c')。
輸出
uj5u.com熱心網友回復:
你可以通過以下方式實作:
你可以通過以下方式實作。
Python 3.6. 9(默認,1月26 2021, 15:33:00)
>>> import numpy as np
>>> a = np. array([-10, -6, -4, 0, 14, 2, 4, 12, 3, 6, 8, 14, 11] )
>>> b = np. array([0, 5, 5, 6, 8, 10, 2, 2, 0, 0, 0, 0, 7] )
>>> c = np. array([4, 6, 10, 40, 22, 14, 20, 8, 12, 4, 3, 6, -4] )
>>> i1 = a > 0>
>>> i2 = b == 0
>>> i = i1 & i2
>>> a[i] 。
array([ 3, 6, 8, 14] )
>>> c[i]
array([12, 4, 3, 6] )
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/309475.html
標籤:
上一篇:如何讓scipy.stats.truncnorm.rvs使用numpy.random.default_rng()?

