日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

python從list列表中選出一個數和其對應的坐標方法

系統 1911 0

例1:給一個列表如下,里面每個元素對應的是x和y的值

            
a = [[5,2],[6,3],[8,8],[1,3]]
          

現在要挑出y的值為3對應的x的值,即6和1

            
import numpy as np

a = [[5,2],[6,3],[8,8],[1,3]] 
#c=np.mat(a),因為只有矩陣(也可以用array)才能用a[0,0]這樣的調用
#表示第一個數的用法而list沒有,故在最后append需要用到
#注意:array也沒有index這樣的用法(只有list有,此題a已經是list),
#使用index要改成list
c = np.mat(a) 
b = []
for i in range(len(a)):
  try:      #使用try...except...是因為比如3不在第一個[5,2]中會報錯并終止運行
    b_index = a[i].index(3)   #使用index尋找3所在的索引值
  except:    
    pass   #pass表示如果報錯那么跳過并繼續下一個
  else:   #如果沒有報錯則進行else內容
    b.append(c[i,0])
print(b)

#結果為
[6,1]

          

或者使用簡單的如下:

            
a = [[5,2],[6,3],[8,8],[1,3]]
x = [i for i in a if 3 in i]
print(x)
          

例2:

已知一系列坐標(x,y,z,h)分別對應橫坐標縱坐標z坐標和高,現在要在x-y平面畫出h=0.00221圖(實際上就是等高線圖)

h保留5位小數。

python從list列表中選出一個數和其對應的坐標方法_第1張圖片

上面只展示了一小部分數據

1,導入數據

            
import matplotlib.pyplot as plt
import numpy as np

data = np.loadtxt(r'/media/sf_Share/fisher_matrix/myLSPE/data/41+95+150/r_0.01/sigma_F_0.1/sigma_F=0.1/threefre.txt')

          

2,將第四列即h保留5位小數

            
for i in range(len(data)):
  data[i,3] = float('%.5f'%data[i,3])
          

3,將h=0.00211對應的x,y坐標找到并保存到x_mat和y_mat中

            
x_mat = []
y_mat = []
for i in range(len(data)):
  try:
    data_index = list(data[i]).index(0.00211)
  except:
    pass
  else:
    x_mat.append(data[i,0])
    y_mat.append(data[i,1])
          

4,畫散點圖

            
plt.scatter(x_mat,y_mat)
plt.show()
          

結果如下:

python從list列表中選出一個數和其對應的坐標方法_第2張圖片

完整代碼:

            
import matplotlib.pyplot as plt
import numpy as np

data = np.loadtxt(r'/media/sf_Share/fisher_matrix/myLSPE/data/41+95+150/r_0.01/sigma_F_0.1/sigma_F=0.1/threefre.txt')

for i in range(len(data)):
  data[i,3] = float('%.5f'%data[i,3])
  
#data_list = list(data)
x_mat = []
y_mat = []
for i in range(len(data)):
  try:
    data_index = list(data[i]).index(0.00211)
  except:
    pass
  else:
    x_mat.append(data[i,0])
    y_mat.append(data[i,1])

plt.scatter(x_mat,y_mat)
plt.show()

          

以上這篇python從list列表中選出一個數和其對應的坐標方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 修水县| 石门县| 太仓市| 东平县| 酒泉市| 根河市| 建德市| 涞源县| 子长县| 凤凰县| 朝阳市| 建水县| 和林格尔县| 双流县| 庆元县| 延安市| 准格尔旗| 尼玛县| 黎城县| 临邑县| 通海县| 柳河县| 彰武县| 高邮市| 平湖市| 阜宁县| 慈溪市| 太和县| 东阿县| 虹口区| 望江县| 辽源市| 鄂温| 镇雄县| 齐河县| 临朐县| 河津市| 中卫市| 烟台市| 天镇县| 茂名市|