| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent a283d20 commit d5a5823
2 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -173,6 +173,7 @@ | |||
| 173 | 173 | import functools | |
| 174 | 174 | import logging | |
| 175 | 175 | import math | |
| 176 | + import re | ||
| 176 | 177 | ||
| 177 | 178 | from dateutil.rrule import (rrule, MO, TU, WE, TH, FR, SA, SU, YEARLY, | |
| 178 | 179 | MONTHLY, WEEKLY, DAILY, HOURLY, MINUTELY, | |
@@ -597,7 +598,16 @@ def drange(dstart, dend, delta): | |||
| 597 | 598 | ||
| 598 | 599 | ||
| 599 | 600 | def _wrap_in_tex(text): | |
| 600 | - return r"{\fontfamily{\familydefault}\selectfont " + text + "}" | ||
| 601 | + p = r'([a-zA-Z]+)' | ||
| 602 | + ret_text = re.sub(p, r'}$\1$\\mathdefault{', text) | ||
| 603 | + | ||
| 604 | + # Braces ensure symbols are not spaced like binary operators. | ||
| 605 | + ret_text = ret_text.replace('-', '{-}').replace(':', '{:}') | ||
| 606 | + # To not concatenate space between numbers. | ||
| 607 | + ret_text = ret_text.replace(' ', r'\;') | ||
| 608 | + ret_text = '$\\mathdefault{' + ret_text + '}$' | ||
| 609 | + ret_text = ret_text.replace('$\\mathdefault{}$', '') | ||
| 610 | + return ret_text | ||
| 601 | 611 | ||
| 602 | 612 | ||
| 603 | 613 | ## date tickers and formatters ### | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -322,13 +322,13 @@ def callable_formatting_function(dates, _): | |||
| 322 | 322 | ||
| 323 | 323 | @pytest.mark.parametrize('delta, expected', [ | |
| 324 | 324 | (datetime.timedelta(weeks=52 * 200), | |
| 325 | - range(1990, 2171, 20)), | ||
| 325 | + [r'$\mathdefault{%d}$' % year for year in range(1990, 2171, 20)]), | ||
| 326 | 326 | (datetime.timedelta(days=30), | |
| 327 | - ['1990-01-%02d' % day for day in range(1, 32, 3)]), | ||
| 327 | + [r'$\mathdefault{1990{-}01{-}%02d}$' % day for day in range(1, 32, 3)]), | ||
| 328 | 328 | (datetime.timedelta(hours=20), | |
| 329 | - ['01-01 %02d' % hour for hour in range(0, 21, 2)]), | ||
| 329 | + [r'$\mathdefault{01{-}01\;%02d}$' % hour for hour in range(0, 21, 2)]), | ||
| 330 | 330 | (datetime.timedelta(minutes=10), | |
| 331 | - ['01 00:%02d' % minu for minu in range(0, 11)]), | ||
| 331 | + [r'$\mathdefault{01\;00{:}%02d}$' % minu for minu in range(0, 11)]), | ||
| 332 | 332 | ]) | |
| 333 | 333 | def test_date_formatter_usetex(delta, expected): | |
| 334 | 334 | style.use("default") | |
@@ -341,8 +341,7 @@ def test_date_formatter_usetex(delta, expected): | |||
| 341 | 341 | locator.axis.set_view_interval(mdates.date2num(d1), mdates.date2num(d2)) | |
| 342 | 342 | ||
| 343 | 343 | formatter = mdates.AutoDateFormatter(locator, usetex=True) | |
| 344 | - assert [formatter(loc) for loc in locator()] == [ | ||
| 345 | - r'{\fontfamily{\familydefault}\selectfont %s}' % s for s in expected] | ||
| 344 | + assert [formatter(loc) for loc in locator()] == expected | ||
| 346 | 345 | ||
| 347 | 346 | ||
| 348 | 347 | def test_drange(): | |
@@ -645,14 +644,24 @@ def test_offset_changes(): | |||
| 645 | 644 | ||
| 646 | 645 | @pytest.mark.parametrize('t_delta, expected', [ | |
| 647 | 646 | (datetime.timedelta(weeks=52 * 200), | |
| 648 | - range(1980, 2201, 20)), | ||
| 647 | + ['$\\mathdefault{%d}$' % (t, ) for t in range(1980, 2201, 20)]), | ||
| 649 | 648 | (datetime.timedelta(days=40), | |
| 650 | - ['Jan', '05', '09', '13', '17', '21', '25', '29', 'Feb', '05', '09']), | ||
| 649 | + ['Jan', '$\\mathdefault{05}$', '$\\mathdefault{09}$', | ||
| 650 | + '$\\mathdefault{13}$', '$\\mathdefault{17}$', '$\\mathdefault{21}$', | ||
| 651 | + '$\\mathdefault{25}$', '$\\mathdefault{29}$', 'Feb', | ||
| 652 | + '$\\mathdefault{05}$', '$\\mathdefault{09}$']), | ||
| 651 | 653 | (datetime.timedelta(hours=40), | |
| 652 | - ['Jan-01', '04:00', '08:00', '12:00', '16:00', '20:00', | ||
| 653 | - 'Jan-02', '04:00', '08:00', '12:00', '16:00']), | ||
| 654 | + ['Jan$\\mathdefault{{-}01}$', '$\\mathdefault{04{:}00}$', | ||
| 655 | + '$\\mathdefault{08{:}00}$', '$\\mathdefault{12{:}00}$', | ||
| 656 | + '$\\mathdefault{16{:}00}$', '$\\mathdefault{20{:}00}$', | ||
| 657 | + 'Jan$\\mathdefault{{-}02}$', '$\\mathdefault{04{:}00}$', | ||
| 658 | + '$\\mathdefault{08{:}00}$', '$\\mathdefault{12{:}00}$', | ||
| 659 | + '$\\mathdefault{16{:}00}$']), | ||
| 654 | 660 | (datetime.timedelta(seconds=2), | |
| 655 | - ['59.5', '00:00', '00.5', '01.0', '01.5', '02.0', '02.5']), | ||
| 661 | + ['$\\mathdefault{59.5}$', '$\\mathdefault{00{:}00}$', | ||
| 662 | + '$\\mathdefault{00.5}$', '$\\mathdefault{01.0}$', | ||
| 663 | + '$\\mathdefault{01.5}$', '$\\mathdefault{02.0}$', | ||
| 664 | + '$\\mathdefault{02.5}$']), | ||
| 656 | 665 | ]) | |
| 657 | 666 | def test_concise_formatter_usetex(t_delta, expected): | |
| 658 | 667 | d1 = datetime.datetime(1997, 1, 1) | |
@@ -663,8 +672,7 @@ def test_concise_formatter_usetex(t_delta, expected): | |||
| 663 | 672 | locator.axis.set_view_interval(mdates.date2num(d1), mdates.date2num(d2)) | |
| 664 | 673 | ||
| 665 | 674 | formatter = mdates.ConciseDateFormatter(locator, usetex=True) | |
| 666 | - assert formatter.format_ticks(locator()) == [ | ||
| 667 | - r'{\fontfamily{\familydefault}\selectfont %s}' % s for s in expected] | ||
| 675 | + assert formatter.format_ticks(locator()) == expected | ||
| 668 | 676 | ||
| 669 | 677 | ||
| 670 | 678 | def test_concise_formatter_formats(): | |
@@ -1347,12 +1355,6 @@ def test_date_ticker_factory(span, expected_locator): | |||
| 1347 | 1355 | assert isinstance(locator, expected_locator) | |
| 1348 | 1356 | ||
| 1349 | 1357 | ||
| 1350 | - def test_usetex_newline(): | ||
| 1351 | - fig, ax = plt.subplots() | ||
| 1352 | - ax.xaxis.set_major_formatter(mdates.DateFormatter('%d/%m\n%Y')) | ||
| 1353 | - fig.canvas.draw() | ||
| 1354 | - | ||
| 1355 | - | ||
| 1356 | 1358 | def test_datetime_masked(): | |
| 1357 | 1359 | # make sure that all-masked data falls back to the viewlim | |
| 1358 | 1360 | # set in convert.axisinfo.... | |
| Back | FazBrowse Home | New Git URL |
0 commit comments