Filtrar una matriz numpy 2D

Quiero tener una matriz secundaria (entre min y max) de un ndarray 2D numpy

    xy_dat = get_xydata()
    x_displayed = xy_dat[((xy_dat > min) & (xy_dat < max))]

min y max son flotantes para poder compararlos con el primer valor de la matriz xy_dat

xy_dat es una matriz numpy 2D:

[[ 735964.            1020.        ]
 [ 735964.04166667    1020.        ]
 [ 735964.08333333    1020.        ]
 ..., 
 [ 736613.39722222    1095.        ]
 [ 736613.40416667    1100.        ]
 [ 736613.41111111    1105.        ]]

x_displayed se filtra correctamente pero he perdido el segundo valor (ahora es una matriz 1D):

[ 735964.04166667  735964.08333333  735964.125      
 ...,  
736613.39027778  736613.39722222  736613.40416667]

¿Cómo hacer el filtro en el primer valor y mantener el otro?

Respuestas a la pregunta(1)

Su respuesta a la pregunta