繁体   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