本文整理汇总了Python中chaco.api.ArrayDataSource类的典型用法代码示例。如果您正苦于以下问题:Python ArrayDataSource类的具体用法?Python ArrayDataSource怎么用?Python ArrayDataSource使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了ArrayDataSource类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_bounds_all_nans
def test_bounds_all_nans(self):
myarray = empty(10)
myarray[:] = nan
sd = ArrayDataSource(myarray)
bounds = sd.get_bounds()
self.assertTrue(isnan(bounds[0]))
self.assertTrue(isnan(bounds[1]))
示例2: __init__
def __init__(self,data_q,num):
super(PlotterWindow,self).__init__()
self.data_q = data_q
self.x = ArrayDataSource(zeros(num))
self.y = ArrayDataSource(zeros(num))
self.v = MultiArrayDataSource(zeros((num,2)))
xrange = DataRange1D()
xrange.add(self.x)
yrange = DataRange1D()
yrange.add(self.y)
quiverplot = QuiverPlot(index=self.x,value=self.y,vectors=self.v,
index_mapper=LinearMapper(range=xrange),
value_mapper=LinearMapper(range=yrange),
bgcolor='white')
add_default_axes(quiverplot)
add_default_grids(quiverplot)
quiverplot.tools.append(PanTool(quiverplot,constrain_key='shift'))
quiverplot.overlays.append(ZoomTool(quiverplot))
self.plot = OverlayPlotContainer(quiverplot, padding=50)
self.timer = Timer(50.0, self.onTimer)
self.configure_traits()
示例3: test_init_defaults
def test_init_defaults(self):
data_source = ArrayDataSource()
assert_array_equal(data_source._data, [])
self.assertEqual(data_source.value_dimension, "scalar")
self.assertEqual(data_source.index_dimension, "scalar")
self.assertEqual(data_source.sort_order, "none")
self.assertFalse(data_source.is_masked())
self.assertEqual(data_source.persist_data, True)
示例4: recalculate
def recalculate(self):
if self.data_range is not None:
low, high = self.data_range.low, self.data_range.high
x = _xfunc(low, high)
new_array = p_yes(self.a, self.m, self.k, x)
ArrayDataSource.set_data(self, new_array)
else:
self._data = np.array([], dtype='f')
示例5: test_simple_map
def test_simple_map(self):
a = ArrayDataSource(array([0.0, 0.5, 1.0]))
self.colormap.range.add(a)
b = self.colormap.map_screen(a.get_data())
self.colormap.range.remove(a)
expected = array([0.0, 0.5, 1.0])
close = allclose(ravel(b[:,:1]), expected, atol=0.02)
self.assertTrue(close,
"Simple map failed. Expected %s. Got %s" % (expected, b[:,:1]))
return
示例6: test_bounds
def test_bounds(self):
# ascending
bounds = self.data_source.get_bounds()
self.assertEqual(bounds, (0, 9))
# descending
myarray = arange(10)[::-1]
data_source = ArrayDataSource(myarray, sort_order="descending")
bounds = data_source.get_bounds()
self.assertEqual(bounds, (0, 9))
# no order
myarray = array([12, 3, 0, 9, 2, 18, 3])
data_source = ArrayDataSource(myarray, sort_order="none")
bounds = data_source.get_bounds()
self.assertEqual(bounds, (0, 18))
示例7: test_reverse_construction
def test_reverse_construction(self):
mapper = LinearMapper()
r = DataRange1D()
ds = ArrayDataSource()
ary = array([1,2,3,4,5,6,7])
mapper.range = r
mapper.low_pos = 1.0
mapper.high_pos = 7.0
r.add(ds)
ds.set_data(ary)
self.assertTrue(r.low == 1)
self.assertTrue(r.high == 7)
screen_pts = mapper.map_screen(array([1,3,7]))
self.assertTrue(tuple(screen_pts) == (1.0, 3.0, 7.0))
return
示例8: test_array_factory
def test_array_factory(self):
""" Test that the array factory creates valid colormap. """
colors = array([[0.0,0.0,0.0], [1.0,1.0,1.0]])
cm = ColorMapper.from_palette_array(colors)
cm.range = DataRange1D()
ar = ArrayDataSource(array([0.0, 0.5, 1.0]))
cm.range.add(ar)
b = cm.map_screen(ar.get_data())
cm.range.remove(ar)
expected = array([0.0, 0.5, 1.0])
self.assertTrue(allclose(ravel(b[:,:1]), expected, atol=0.02),
"Array factory failed. Expected %s. Got %s" % (expected, b[:,:1]))
return
示例9: test_piecewise_construction
def test_piecewise_construction(self):
ary = array([1,2,3,4,5,6,7])
ds = ArrayDataSource()
ds.set_data(ary)
r = DataRange1D()
r.add(ds)
self.assert_(r.low_setting == "auto")
self.assert_(r.high_setting == "auto")
self.assert_(r.low == 1)
self.assert_(r.high == 7)
mapper = LinearMapper()
mapper.range = r
mapper.low_pos = 1.0
mapper.high_pos = 7.0
screen_pts = mapper.map_screen(array([1,3,7]))
self.assert_(tuple(screen_pts) == (1.0, 3.0, 7.0))
return
示例10: PlotterWindow
class PlotterWindow(HasTraits):
plot = Instance(OverlayPlotContainer)
timer = Instance(Timer)
traits_view = View(
Item('plot',editor=ComponentEditor(),show_label=False),
width=500,height=500,resizable=True,title="Plotter")
def __init__(self,data_q,num):
super(PlotterWindow,self).__init__()
self.data_q = data_q
self.x = ArrayDataSource(zeros(num))
self.y = ArrayDataSource(zeros(num))
self.v = MultiArrayDataSource(zeros((num,2)))
xrange = DataRange1D()
xrange.add(self.x)
yrange = DataRange1D()
yrange.add(self.y)
quiverplot = QuiverPlot(index=self.x,value=self.y,vectors=self.v,
index_mapper=LinearMapper(range=xrange),
value_mapper=LinearMapper(range=yrange),
bgcolor='white')
add_default_axes(quiverplot)
add_default_grids(quiverplot)
quiverplot.tools.append(PanTool(quiverplot,constrain_key='shift'))
quiverplot.overlays.append(ZoomTool(quiverplot))
self.plot = OverlayPlotContainer(quiverplot, padding=50)
self.timer = Timer(50.0, self.onTimer)
self.configure_traits()
def onTimer(self,*args):
d = self.data_q.get()
self.x.set_data(d[0])
self.y.set_data(d[1])
self.v.set_data(d[2])
示例11: test_reverse_map
def test_reverse_map(self):
# sort_order ascending
myarray = arange(10)
data_source = ArrayDataSource(myarray, sort_order='ascending')
self.assertEqual(data_source.reverse_map(4.0), 4)
# sort_order descending
myarray = arange(10)[::-1]
data_source = ArrayDataSource(myarray, sort_order='descending')
self.assertEqual(data_source.reverse_map(4.0), 5)
# sort_order none
myarray = array([12, 3, 0, 9, 2, 18, 3])
data_source = ArrayDataSource(myarray, sort_order='none')
with self.assertRaises(NotImplementedError):
data_source.reverse_map(3)
示例12: test_bounds
def test_bounds(self):
# ascending
myarray = arange(10)
sd = ArrayDataSource(myarray, sort_order="ascending")
bounds = sd.get_bounds()
self.assert_(bounds == (0,9))
# descending
myarray = arange(10)[::-1]
sd = ArrayDataSource(myarray, sort_order="descending")
bounds = sd.get_bounds()
self.assert_(bounds == (0,9))
# no order
myarray = array([12,3,0,9,2,18,3])
sd = ArrayDataSource(myarray, sort_order="none")
bounds = sd.get_bounds()
self.assert_(bounds == (0,18))
return
示例13: test_change_min_max
def test_change_min_max(self):
""" Test that changing min_value and max_value does not break map. """
datarange = self.colormap.range
# Perform a dummy mapping.
a = ArrayDataSource(array([0.0, 0.5, 1.0]))
datarange.add(a)
b = self.colormap.map_screen(a.get_data())
datarange.remove(a)
# Update the min_value.
datarange.low = -1.0
# Test that the map still works.
a = ArrayDataSource(array([-1.0, 0.0, 1.0]))
datarange.add(a)
b = self.colormap.map_screen(a.get_data())
datarange.remove(a)
expected = array([0.0, 0.5, 1.0])
close = allclose(ravel(b[:,:1]), expected, atol=0.02)
self.assertTrue(close,
"Changing min value broke map. Expected %s. Got %s" % (expected, b[:,:1]))
# Update the max_value.
datarange.high = 0.0
# Test that the map still works.
a = ArrayDataSource(array([-1.0, -0.5, 0.0]))
datarange.add(a)
b = self.colormap.map_screen(a.get_data())
datarange.remove(a)
expected = array([0.0, 0.5, 1.0])
close = allclose(ravel(b[:,:1]), expected, atol=0.02)
self.assertTrue(close,
"Changing min value broke map. Expected %s. Got %s" % (expected, b[:,:1]))
return
示例14: ArrayDataSourceTestCase
class ArrayDataSourceTestCase(UnittestTools, unittest.TestCase):
def setUp(self):
self.myarray = arange(10)
self.mymask = array([i % 2 for i in self.myarray], dtype=bool)
self.data_source = ArrayDataSource(self.myarray)
def test_init_defaults(self):
data_source = ArrayDataSource()
assert_array_equal(data_source._data, [])
self.assertEqual(data_source.value_dimension, "scalar")
self.assertEqual(data_source.index_dimension, "scalar")
self.assertEqual(data_source.sort_order, "none")
self.assertFalse(data_source.is_masked())
self.assertEqual(data_source.persist_data, True)
def test_basic_setup(self):
assert_array_equal(self.myarray, self.data_source._data)
self.assertEqual(self.data_source.value_dimension, "scalar")
self.assertEqual(self.data_source.sort_order, "none")
self.assertFalse(self.data_source.is_masked())
def test_set_data(self):
new_array = arange(0, 20, 2)
with self.assertTraitChanges(self.data_source, 'data_changed',
count=1):
self.data_source.set_data(new_array)
assert_array_equal(new_array, self.data_source._data)
self.assertEqual(self.data_source.get_bounds(), (0, 18))
self.assertEqual(self.data_source.sort_order, "none")
def test_set_data_ordered(self):
new_array = arange(20, 0, -2)
with self.assertTraitChanges(self.data_source, 'data_changed',
count=1):
self.data_source.set_data(new_array, sort_order='descending')
assert_array_equal(new_array, self.data_source._data)
self.assertEqual(self.data_source.get_bounds(), (2, 20))
self.assertEqual(self.data_source.sort_order, "descending")
def test_set_mask(self):
with self.assertTraitChanges(self.data_source, 'data_changed',
count=1):
self.data_source.set_mask(self.mymask)
assert_array_equal(self.myarray, self.data_source._data)
assert_array_equal(self.mymask, self.data_source._cached_mask)
self.assertTrue(self.data_source.is_masked())
self.assertEqual(self.data_source.get_bounds(), (0, 9))
def test_remove_mask(self):
self.data_source.set_mask(self.mymask)
self.assertTrue(self.data_source.is_masked())
with self.assertTraitChanges(self.data_source, 'data_changed',
count=1):
self.data_source.remove_mask()
assert_array_equal(self.myarray, self.data_source._data)
self.assertIsNone(self.data_source._cached_mask, None)
self.assertFalse(self.data_source.is_masked())
self.assertEqual(self.data_source.get_bounds(), (0, 9))
def test_get_data(self):
assert_array_equal(self.myarray, self.data_source.get_data())
def test_get_data_no_data(self):
data_source = ArrayDataSource(None)
assert_array_equal(data_source.get_data(), 0.0)
def test_get_data_mask(self):
self.data_source.set_mask(self.mymask)
data, mask = self.data_source.get_data_mask()
assert_array_equal(data, self.myarray)
assert_array_equal(mask, self.mymask)
@unittest.skip('get_data_mask() fails in this case')
def test_get_data_mask_no_data(self):
data_source = ArrayDataSource(None)
data, mask = data_source.get_data_mask()
assert_array_equal(data, 0.0)
assert_array_equal(mask, True)
def test_get_data_mask_no_mask(self):
data, mask = self.data_source.get_data_mask()
assert_array_equal(data, self.myarray)
assert_array_equal(mask, ones(shape=10, dtype=bool))
def test_bounds(self):
# ascending
bounds = self.data_source.get_bounds()
self.assertEqual(bounds, (0, 9))
#.........这里部分代码省略.........
示例15: test_get_data_mask_no_data
def test_get_data_mask_no_data(self):
data_source = ArrayDataSource(None)
data, mask = data_source.get_data_mask()
assert_array_equal(data, 0.0)
assert_array_equal(mask, True)