Check if interval breaks are defined in the logspace if scale="log"
(self)
| 548 | _infer_interval_breaks(np.array([0, 2, 1]), check_monotonic=True) |
| 549 | |
| 550 | def test__infer_interval_breaks_logscale(self) -> None: |
| 551 | """ |
| 552 | Check if interval breaks are defined in the logspace if scale="log" |
| 553 | """ |
| 554 | # Check for 1d arrays |
| 555 | x = np.logspace(-4, 3, 8) |
| 556 | expected_interval_breaks = 10 ** np.linspace(-4.5, 3.5, 9) |
| 557 | np.testing.assert_allclose( |
| 558 | _infer_interval_breaks(x, scale="log"), expected_interval_breaks |
| 559 | ) |
| 560 | |
| 561 | # Check for 2d arrays |
| 562 | x = np.logspace(-4, 3, 8) |
| 563 | y = np.linspace(-5, 5, 11) |
| 564 | x, y = np.meshgrid(x, y) |
| 565 | expected_interval_breaks = np.vstack([10 ** np.linspace(-4.5, 3.5, 9)] * 12) |
| 566 | x = _infer_interval_breaks(x, axis=1, scale="log") |
| 567 | x = _infer_interval_breaks(x, axis=0, scale="log") |
| 568 | np.testing.assert_allclose(x, expected_interval_breaks) |
| 569 | |
| 570 | def test__infer_interval_breaks_logscale_invalid_coords(self) -> None: |
| 571 | """ |
nothing calls this directly
no test coverage detected