簡體   English   中英

繪制兩個不同長度的數組

[英]Plotting two arrays of different lengths

所以我有一些數據

import pyfits
import matplotlib.pyplot
a = pyfits.getdata('data.fits')
x = a['time']
y = a['flux']

我的數組包含NaN值的某些數據出現問題。 為了擺脫它們,我做了以下工作:

x = x[numpy.logical_not(numpy.isnan(x))]
y = y[numpy.logical_not(numpy.isnan(y))]

這將從數組xy刪除所有NaN值。 問題在於xy包含的NaN值數量不相同。

所以:

len(y) = 4275

然而:

len(x) = 4313

我希望能夠做到這一點:

pyplot.plot(x,y)

但是嘗試繪制不同尺寸的數組存在問題。 有辦法可以做到嗎?

您可以壓縮這兩個數組,並丟棄xyNaN任何點(x, y) (我認為這很有意義)。 現在我對numpy或它是否提供了一種簡短的方法不熟悉,您可能需要自己實現它。

您如何獲取數據圖? 我假設在導入時您將x或y設為0,這樣每個x都有一個合適的y?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM