2013-10-21 62 views
0

您好我有X列表,並與Y的名單我想用matplotlib.plt.plot(X,Y)matplotlib列表不顯示0或楠的

繪製他們我有Y的一些值是是0還是'空'我怎樣才能讓matplot不連接0或空的點?並顯示其餘的?我是否必須將其分成不同的列表?

在此先感謝!

+0

這是最好的,包括你已經有一些假的數據試了一下一個例子(這也許就是爲什麼你得到了下來票) – tacaswell

回答

4

如果您使用numpy.nan而不是0或爲空,則該行會斷開連接。

參見:

import matplotlib.pyplot as plt 
import numpy as np 
x = np.linspace(0,10,20) 
y = np.sin(x) 
y[3] = np.nan 
y[7] = np.nan 
plt.plot(x,y) 

enter image description here

3

使用np.where設置不被繪製np.nan數據。

from numpy import * 
a=linspace(1, 50, 1000) 
b=sin(a) 
c=where(b>-0.7, b, nan) #In this example, we plot only the values larger than -0.7 
#if you want to skip the 0, c=where(b!=0, b, nan) 
plt.plot(c) 

enter image description here