def test_log_breaks(): x = [2, 20, 2000] limits = min(x), max(x) breaks = log_breaks()(limits) npt.assert_array_equal(breaks, [1, 10, 100, 1000, 10000]) breaks = log_breaks(3)(limits) npt.assert_array_equal(breaks, [1, 100, 10000]) breaks = log_breaks()((10000, 10000)) npt.assert_array_equal(breaks, [10000]) breaks = log_breaks()((float('-inf'), float('inf'))) assert len(breaks) == 0 # When the limits are in the same order of magnitude breaks = log_breaks()([35, 60]) assert len(breaks) > 0 assert all([1 < b < 100 for b in breaks]) breaks = log_breaks()([200, 800]) npt.assert_array_equal(breaks, [100, 200, 300, 500, 1000]) breaks = log_breaks()((1664, 14008)) npt.assert_array_equal(breaks, [1000, 3000, 5000, 10000, 30000]) breaks = log_breaks()([407, 3430]) npt.assert_array_equal(breaks, [300, 500, 1000, 3000, 5000]) breaks = log_breaks()([1761, 8557]) npt.assert_array_equal(breaks, [1000, 2000, 3000, 5000, 10000]) # No overflow effects breaks = log_breaks(n=6)([1e25, 1e30]) npt.assert_array_almost_equal(breaks, [1e25, 1e26, 1e27, 1e28, 1e29, 1e30])
def test_log_breaks(): x = [2, 20, 2000] limits = min(x), max(x) breaks = log_breaks()(limits) npt.assert_array_equal(breaks, [1, 10, 100, 1000, 10000]) breaks = log_breaks(3)(limits) npt.assert_array_equal(breaks, [1, 100, 10000]) breaks = log_breaks()((10000, 10000)) npt.assert_array_equal(breaks, [10000]) breaks = log_breaks()((float('-inf'), float('inf'))) assert len(breaks) == 0 # When the limits are in the same order of magnitude breaks = log_breaks()([35, 60]) assert len(breaks) > 0 assert all([1 < b < 100 for b in breaks]) breaks = log_breaks()([200, 800]) npt.assert_array_equal(breaks, [100, 200, 300, 500, 1000]) breaks = log_breaks()((1664, 14008)) npt.assert_array_equal(breaks, [1000, 3000, 5000, 10000, 30000]) breaks = log_breaks()([407, 3430]) npt.assert_array_equal(breaks, [300, 500, 1000, 3000, 5000]) breaks = log_breaks()([1761, 8557]) npt.assert_array_equal(breaks, [1000, 2000, 3000, 5000, 10000])
def test_log_breaks(): x = [2, 20, 2000] limits = min(x), max(x) breaks = log_breaks()(limits) npt.assert_array_equal(breaks, [1, 10, 100, 1000, 10000]) breaks = log_breaks(3)(limits) npt.assert_array_equal(breaks, [1, 100, 10000]) breaks = log_breaks()((10000, 10000)) npt.assert_array_equal(breaks, [10000]) breaks = log_breaks()((float('-inf'), float('inf'))) assert len(breaks) == 0 # When the limits are in the same order of magnitude breaks = log_breaks()([35, 60]) assert len(breaks) > 0 assert all([1 < b < 100 for b in breaks]) breaks = log_breaks()([200, 800]) assert len(breaks) > 0 assert all([10 < b < 1000 for b in breaks])
def test_log_breaks(): x = [2, 20, 2000] limits = min(x), max(x) breaks = log_breaks()(limits) npt.assert_array_equal(breaks, [1, 10, 100, 1000, 10000]) breaks = log_breaks(3)(limits) npt.assert_array_equal(breaks, [1, 100, 10000]) breaks = log_breaks()((10000, 10000)) npt.assert_array_equal(breaks, [10000]) breaks = log_breaks()((float('-inf'), float('inf'))) assert len(breaks) == 0 # When the limits are in the same order of magnitude breaks = log_breaks()([35, 60]) assert len(breaks) > 0 assert all([1 < b < 100 for b in breaks]) breaks = log_breaks()([200, 800]) npt.assert_array_equal(breaks, [100, 200, 300, 500, 1000]) breaks = log_breaks()((1664, 14008)) npt.assert_array_equal(breaks, [1000, 3000, 5000, 10000, 30000]) breaks = log_breaks()([407, 3430]) npt.assert_array_equal(breaks, [300, 500, 1000, 3000, 5000]) breaks = log_breaks()([1761, 8557]) npt.assert_array_equal(breaks, [1000, 2000, 3000, 5000, 10000]) # log_breaks -> _log_sub_breaks -> extended_breaks breaks = log_breaks(13)([1, 10]) npt.assert_array_almost_equal(breaks, np.arange(0, 11)) # No overflow effects breaks = log_breaks(n=6)([1e25, 1e30]) npt.assert_array_almost_equal(breaks, [1e25, 1e26, 1e27, 1e28, 1e29, 1e30]) # No overflow effects in _log_sub_breaks breaks = log_breaks()([2e19, 8e19]) npt.assert_array_almost_equal(breaks, [1.e+19, 2.e+19, 3.e+19, 5.e+19, 1.e+20]) # _log_sub_breaks for base != 10 breaks = log_breaks(n=5, base=60)([2e5, 8e5]) npt.assert_array_almost_equal(breaks, [129600, 216000, 432000, 648000, 1080000]) breaks = log_breaks(n=5, base=2)([20, 80]) npt.assert_array_almost_equal(breaks, [16, 32, 64, 128])