Skip to content

Commit 8371dd7

Browse files
committed
Missing part of the fix
1 parent f0a7703 commit 8371dd7

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

src/sage/plot/graphics.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2366,7 +2366,7 @@ def _matplotlib_tick_formatter(self, subplot, base=(10, 10),
23662366
elif x_locator == []:
23672367
x_locator = NullLocator()
23682368
elif isinstance(x_locator, list):
2369-
x_locator = FixedLocator(x_locator)
2369+
x_locator = FixedLocator([float(x) for x in x_locator])
23702370
else: # x_locator is a number which can be made a float
23712371
from sage.functions.other import ceil, floor
23722372
if floor(xmax / x_locator) - ceil(xmin / x_locator) > 1:
@@ -2387,7 +2387,7 @@ def _matplotlib_tick_formatter(self, subplot, base=(10, 10),
23872387
elif y_locator == []:
23882388
y_locator = NullLocator()
23892389
elif isinstance(y_locator, list):
2390-
y_locator = FixedLocator(y_locator)
2390+
y_locator = FixedLocator([float(y) for y in y_locator])
23912391
else: # y_locator is a number which can be made a float
23922392
from sage.functions.other import ceil, floor
23932393
if floor(ymax / y_locator) - ceil(ymin / y_locator) > 1:
@@ -2421,7 +2421,7 @@ def _matplotlib_tick_formatter(self, subplot, base=(10, 10),
24212421
else:
24222422
# circumvent the problem of symbolic tick values (trac #34693)
24232423
if isinstance(x_locator, FixedLocator):
2424-
x_formatter = FixedFormatter(['$%s$' % latex(n) for n in x_locator.locs])
2424+
x_formatter = FixedFormatter(['$%s$' % latex(n) for n in ticks[0]])
24252425
else:
24262426
x_formatter = FuncFormatter(lambda n, pos: '$%s$' % latex(n))
24272427
elif isinstance(x_formatter, (list, tuple)):
@@ -2448,7 +2448,11 @@ def _matplotlib_tick_formatter(self, subplot, base=(10, 10),
24482448
LogFormatterMathtext(base=base[1])(n, pos).replace(
24492449
"\\mathdefault", ""))
24502450
else:
2451-
y_formatter = FuncFormatter(lambda n, pos: '$%s$' % latex(n))
2451+
# circumvent the problem of symbolic tick values (trac #34693)
2452+
if isinstance(y_locator, FixedLocator):
2453+
y_formatter = FixedFormatter(['$%s$' % latex(n) for n in ticks[1]])
2454+
else:
2455+
y_formatter = FuncFormatter(lambda n, pos: '$%s$' % latex(n))
24522456
elif isinstance(y_formatter, (list, tuple)):
24532457
if (not isinstance(ticks[1], (list, tuple)) or
24542458
len(ticks[1]) != len(y_formatter)):

0 commit comments

Comments
 (0)