diff --git a/doc/api/api_changes.rst b/doc/api/api_changes.rst index be878d0a7dc7..3727aa434925 100644 --- a/doc/api/api_changes.rst +++ b/doc/api/api_changes.rst @@ -11,6 +11,12 @@ help figure out possible sources of the changes you are experiencing. For new features that were added to matplotlib, please see :ref:`whats-new`. +Changes in 2.0.x +================ + +* The spacing commands in mathtext have been changed to more closely + match vanilla TeX. + Changes in 1.4.x ================ diff --git a/lib/matplotlib/_mathtext_data.py b/lib/matplotlib/_mathtext_data.py index eb741d913278..cb87d445cd48 100644 --- a/lib/matplotlib/_mathtext_data.py +++ b/lib/matplotlib/_mathtext_data.py @@ -1946,7 +1946,6 @@ 'boxminus' : 8863, 'equiv' : 8801, 'Lleftarrow' : 8666, - 'thinspace' : 8201, 'll' : 8810, 'Cup' : 8915, 'measeq' : 8798, @@ -2169,7 +2168,6 @@ 'cdots' : 8943, 'hat' : 770, 'eqgtr' : 8925, - 'enspace' : 8194, 'psi' : 968, 'frown' : 8994, 'acute' : 769, diff --git a/lib/matplotlib/mathtext.py b/lib/matplotlib/mathtext.py index cbe8bfd6bdd4..69c110ba9a04 100644 --- a/lib/matplotlib/mathtext.py +++ b/lib/matplotlib/mathtext.py @@ -2431,13 +2431,18 @@ def _make_space(self, percentage): self._em_width_cache[key] = width return Kern(width * percentage) - _space_widths = { r'\ ' : 0.3, - r'\,' : 0.4, - r'\;' : 0.8, - r'\quad' : 1.6, - r'\qquad' : 3.2, - r'\!' : -0.4, - r'\/' : 0.4 } + _space_widths = { r'\,' : 0.16667, # 3/18 em = 3 mu + r'\thinspace' : 0.16667, # 3/18 em = 3 mu + r'\/' : 0.16667, # 3/18 em = 3 mu + r'\>' : 0.22222, # 4/18 em = 4 mu + r'\:' : 0.22222, # 4/18 em = 4 mu + r'\;' : 0.27778, # 5/18 em = 5 mu + r'\ ' : 0.33333, # 6/18 em = 6 mu + r'\enspace' : 0.5, # 9/18 em = 9 mu + r'\quad' : 1, # 1 em = 18 mu + r'\qquad' : 2, # 2 em = 36 mu + r'\!' : -0.16667, # -3/18 em = -3 mu + } def space(self, s, loc, toks): assert(len(toks)==1) num = self._space_widths[toks[0]] diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_68.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_68.pdf index a3c7ab5ee242..94cdddaf6dcf 100644 Binary files a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_68.pdf and b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_68.pdf differ diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_69.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_69.pdf index 09f7a773762e..19064b48cd0e 100644 Binary files a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_69.pdf and b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_69.pdf differ diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_70.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_70.pdf new file mode 100644 index 000000000000..2b83c3c73f5c Binary files /dev/null and b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_70.pdf differ diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_70.png b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_70.png new file mode 100644 index 000000000000..55986a513061 Binary files /dev/null and b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_70.png differ diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_70.svg b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_70.svg new file mode 100644 index 000000000000..ea4591841c6d --- /dev/null +++ b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_70.svg @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_68.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_68.pdf index d429f2bdb4ba..c647dc9ec534 100644 Binary files a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_68.pdf and b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_68.pdf differ diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_69.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_69.pdf index be7f1724d154..a5754449e493 100644 Binary files a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_69.pdf and b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_69.pdf differ diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_70.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_70.pdf new file mode 100644 index 000000000000..c6f4bfac8505 Binary files /dev/null and b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_70.pdf differ diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_70.png b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_70.png new file mode 100644 index 000000000000..4c8eeab5035c Binary files /dev/null and b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_70.png differ diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_70.svg b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_70.svg new file mode 100644 index 000000000000..7c4e65dc5827 --- /dev/null +++ b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_70.svg @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_68.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_68.pdf index 4a5908b173ba..7c282bc1868b 100644 Binary files a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_68.pdf and b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_68.pdf differ diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_69.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_69.pdf index 870a8b1c6d3f..c51b5f4e7ae0 100644 Binary files a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_69.pdf and b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_69.pdf differ diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_70.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_70.pdf new file mode 100644 index 000000000000..ceb6df75c042 Binary files /dev/null and b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_70.pdf differ diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_70.png b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_70.png new file mode 100644 index 000000000000..2c86c67da769 Binary files /dev/null and b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_70.png differ diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_70.svg b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_70.svg new file mode 100644 index 000000000000..603294c36659 --- /dev/null +++ b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_70.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/test_mathtext.py b/lib/matplotlib/tests/test_mathtext.py index cec257de255b..9b3ac7ea8e54 100644 --- a/lib/matplotlib/tests/test_mathtext.py +++ b/lib/matplotlib/tests/test_mathtext.py @@ -94,7 +94,8 @@ r'$\operatorname{cos} x$', # github issue #553 r'$\sum _{\genfrac{}{}{0}{}{0\leq i\leq m}{0 M \: M \; M \ M \enspace M \quad M \qquad M \! M$' ] digits = "0123456789"