本文整理汇总了Python中hyperspy.signal.Signal.get_histogram方法的典型用法代码示例。如果您正苦于以下问题:Python Signal.get_histogram方法的具体用法?Python Signal.get_histogram怎么用?Python Signal.get_histogram使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类hyperspy.signal.Signal
的用法示例。
在下文中一共展示了Signal.get_histogram方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: setUp
# 需要导入模块: from hyperspy.signal import Signal [as 别名]
# 或者: from hyperspy.signal.Signal import get_histogram [as 别名]
class Test2D:
def setUp(self):
self.signal = Signal(np.arange(5*10).reshape(5,10))
self.signal.axes_manager[0].name = "x"
self.signal.axes_manager[1].name = "E"
self.signal.axes_manager[0].scale = 0.5
self.signal.mapped_parameters.set_item('splitting.axis', 0)
self.signal.mapped_parameters.set_item(
'splitting.step_sizes',[2,2])
self.data = self.signal.data.copy()
def test_axis_by_str(self):
s1 = self.signal.deepcopy()
s2 = self.signal.deepcopy()
s1.crop(0, 2,4)
s2.crop("x", 2, 4)
assert_true((s1.data==s2.data).all())
def test_crop_int(self):
s = self.signal
d = self.data
s.crop(0, 2,4)
assert_true((s.data==d[2:4,:]).all())
def test_crop_float(self):
s = self.signal
d = self.data
s.crop(0, 2, 2.)
assert_true((s.data==d[2:4,:]).all())
def test_split_axis0(self):
result = self.signal.split(0,2)
assert_true(len(result) == 2)
assert_true((result[0].data == self.data[:2,:]).all())
assert_true((result[1].data == self.data[2:4,:]).all())
def test_split_axis1(self):
result = self.signal.split(1,2)
assert_true(len(result) == 2)
assert_true((result[0].data == self.data[:,:5]).all())
assert_true((result[1].data == self.data[:,5:]).all())
def test_split_axisE(self):
result = self.signal.split("E",2)
assert_true(len(result) == 2)
assert_true((result[0].data == self.data[:,:5]).all())
assert_true((result[1].data == self.data[:,5:]).all())
def test_split_default(self):
result = self.signal.split()
assert_true(len(result) == 2)
assert_true((result[0].data == self.data[:2,:]).all())
assert_true((result[1].data == self.data[2:4,:]).all())
def test_histogram(self):
result = self.signal.get_histogram(3)
assert_true(isinstance(result,signals.Spectrum))
assert_true((result.data==np.array([17, 16, 17])).all())
示例2: _spikes_diagnosis
# 需要导入模块: from hyperspy.signal import Signal [as 别名]
# 或者: from hyperspy.signal.Signal import get_histogram [as 别名]
def _spikes_diagnosis(self, signal_mask=None,
navigation_mask=None):
"""Plots a histogram to help in choosing the threshold for
spikes removal.
Parameters
----------
signal_mask: boolean array
Restricts the operation to the signal locations not marked
as True (masked)
navigation_mask: boolean array
Restricts the operation to the navigation locations not
marked as True (masked).
See also
--------
spikes_removal_tool
"""
self._check_signal_dimension_equals_one()
dc = self.data
if signal_mask is not None:
dc = dc[..., ~signal_mask]
if navigation_mask is not None:
dc = dc[~navigation_mask, :]
der = np.abs(np.diff(dc, 1, -1))
n = ((~navigation_mask).sum() if navigation_mask else
self.axes_manager.navigation_size)
# arbitrary cutoff for number of spectra necessary before histogram
# data is compressed by finding maxima of each spectrum
tmp = Signal(der) if n < 2000 else Signal(np.ravel(der.max(-1)))
# get histogram signal using smart binning and plot
tmph = tmp.get_histogram()
tmph.plot()
# Customize plot appearance
plt.gca().set_title('')
plt.gca().fill_between(tmph.axes_manager[0].axis,
tmph.data,
facecolor='#fddbc7',
interpolate=True,
color='none')
ax = tmph._plot.signal_plot.ax
axl = tmph._plot.signal_plot.ax_lines[0]
axl.set_line_properties(color='#b2182b')
plt.xlabel('Derivative magnitude')
plt.ylabel('Log(Counts)')
ax.set_yscale('log')
ax.set_ylim(10 ** -1, plt.ylim()[1])
ax.set_xlim(plt.xlim()[0], 1.1 * plt.xlim()[1])
plt.draw()
示例3: setUp
# 需要导入模块: from hyperspy.signal import Signal [as 别名]
# 或者: from hyperspy.signal.Signal import get_histogram [as 别名]
class Test2D:
def setUp(self):
self.signal = Signal(np.arange(5 * 10).reshape(5, 10))
self.signal.axes_manager[0].name = "x"
self.signal.axes_manager[1].name = "E"
self.signal.axes_manager[0].scale = 0.5
self.data = self.signal.data.copy()
def test_axis_by_str(self):
s1 = self.signal.deepcopy()
s2 = self.signal.deepcopy()
s1.crop(0, 2, 4)
s2.crop("x", 2, 4)
assert_true((s1.data == s2.data).all())
def test_crop_int(self):
s = self.signal
d = self.data
s.crop(0, 2, 4)
assert_true((s.data == d[2:4, :]).all())
def test_crop_float(self):
s = self.signal
d = self.data
s.crop(0, 2, 2.)
assert_true((s.data == d[2:4, :]).all())
def test_split_axis0(self):
result = self.signal.split(0, 2)
assert_true(len(result) == 2)
assert_true((result[0].data == self.data[:2, :]).all())
assert_true((result[1].data == self.data[2:4, :]).all())
def test_split_axis1(self):
result = self.signal.split(1, 2)
assert_true(len(result) == 2)
assert_true((result[0].data == self.data[:, :5]).all())
assert_true((result[1].data == self.data[:, 5:]).all())
def test_split_axisE(self):
result = self.signal.split("E", 2)
assert_true(len(result) == 2)
assert_true((result[0].data == self.data[:, :5]).all())
assert_true((result[1].data == self.data[:, 5:]).all())
def test_split_default(self):
result = self.signal.split()
assert_true(len(result) == 5)
assert_true((result[0].data == self.data[0]).all())
def test_histogram(self):
result = self.signal.get_histogram(3)
assert_true(isinstance(result, signals.Spectrum))
assert_true((result.data == np.array([17, 16, 17])).all())
def test_estimate_poissonian_noise_copy_data(self):
self.signal.estimate_poissonian_noise_variance()
assert_true(self.signal.metadata.Signal.Noise_properties.variance.data
is not self.signal.data)
def test_estimate_poissonian_noise_noarg(self):
self.signal.estimate_poissonian_noise_variance()
assert_true(
(self.signal.metadata.Signal.Noise_properties.variance.data ==
self.signal.data).all())
def test_estimate_poissonian_noise_with_args(self):
self.signal.estimate_poissonian_noise_variance(
expected_value=self.signal,
gain_factor=2,
gain_offset=1,
correlation_factor=0.5)
assert_true(
(self.signal.metadata.Signal.Noise_properties.variance.data ==
(self.signal.data * 2 + 1) * 0.5).all())
示例4: setUp
# 需要导入模块: from hyperspy.signal import Signal [as 别名]
# 或者: from hyperspy.signal.Signal import get_histogram [as 别名]
class Test2D:
def setUp(self):
self.signal = Signal(np.arange(5 * 10).reshape(5, 10))
self.signal.axes_manager[0].name = "x"
self.signal.axes_manager[1].name = "E"
self.signal.axes_manager[0].scale = 0.5
self.data = self.signal.data.copy()
def test_sum_x(self):
s = self.signal.sum("x")
np.testing.assert_array_equal(self.signal.data.sum(0), s.data)
nt.assert_equal(s.data.ndim, 1)
nt.assert_equal(s.axes_manager.navigation_dimension, 0)
def test_sum_x_E(self):
s = self.signal.sum(("x", "E"))
_verify_test_sum_x_E(self, s)
s = self.signal.sum((0, "E"))
_verify_test_sum_x_E(self, s)
s = self.signal.sum((self.signal.axes_manager[0], "E"))
_verify_test_sum_x_E(self, s)
s = self.signal.sum("x").sum("E")
_verify_test_sum_x_E(self, s)
def test_axis_by_str(self):
m = mock.Mock()
s1 = self.signal.deepcopy()
s1.events.data_changed.connect(m.data_changed)
s2 = self.signal.deepcopy()
s1.crop(0, 2, 4)
nt.assert_true(m.data_changed.called)
s2.crop("x", 2, 4)
nt.assert_true((s1.data == s2.data).all())
def test_crop_int(self):
s = self.signal
d = self.data
s.crop(0, 2, 4)
nt.assert_true((s.data == d[2:4, :]).all())
def test_crop_float(self):
s = self.signal
d = self.data
s.crop(0, 2, 2.)
nt.assert_true((s.data == d[2:4, :]).all())
def test_split_axis0(self):
result = self.signal.split(0, 2)
nt.assert_true(len(result) == 2)
nt.assert_true((result[0].data == self.data[:2, :]).all())
nt.assert_true((result[1].data == self.data[2:4, :]).all())
def test_split_axis1(self):
result = self.signal.split(1, 2)
nt.assert_true(len(result) == 2)
nt.assert_true((result[0].data == self.data[:, :5]).all())
nt.assert_true((result[1].data == self.data[:, 5:]).all())
def test_split_axisE(self):
result = self.signal.split("E", 2)
nt.assert_true(len(result) == 2)
nt.assert_true((result[0].data == self.data[:, :5]).all())
nt.assert_true((result[1].data == self.data[:, 5:]).all())
def test_split_default(self):
result = self.signal.split()
nt.assert_true(len(result) == 5)
nt.assert_true((result[0].data == self.data[0]).all())
def test_histogram(self):
result = self.signal.get_histogram(3)
nt.assert_true(isinstance(result, signals.Spectrum))
nt.assert_true((result.data == np.array([17, 16, 17])).all())
nt.assert_true(result.metadata.Signal.binned)
def test_estimate_poissonian_noise_copy_data(self):
self.signal.estimate_poissonian_noise_variance()
variance = self.signal.metadata.Signal.Noise_properties.variance
nt.assert_true(
variance.data is not self.signal.data)
def test_estimate_poissonian_noise_noarg(self):
self.signal.estimate_poissonian_noise_variance()
variance = self.signal.metadata.Signal.Noise_properties.variance
nt.assert_true((variance.data == self.signal.data).all())
def test_estimate_poissonian_noise_with_args(self):
self.signal.estimate_poissonian_noise_variance(
expected_value=self.signal,
gain_factor=2,
gain_offset=1,
correlation_factor=0.5)
variance = self.signal.metadata.Signal.Noise_properties.variance
nt.assert_true(
(variance.data == (self.signal.data * 2 + 1) * 0.5).all())
def test_unfold_image(self):
s = self.signal
s.axes_manager.set_signal_dimension(2)
#.........这里部分代码省略.........