Bug summary
Hi, while using rasterized=True with the zorder, the saved svg files have a wrong axes layer hierarchy:
However, interestingly if another drawing command is called after such as ax.scatter(x=[], y=[], rasterized=False, zorder=10) with the same zorder but without rasterization, the generated svg file has correct layer hierarchy.
Code for reproduction
import matplotlib.pyplot as plt
fig, axs = plt.subplots(ncols=2)
for i, ax in enumerate(axs):
ax.scatter(x=[1, 2], y=[1, 2], rasterized=True, zorder=10)
fig.savefig("minimal_not_working.svg")
fig, axs = plt.subplots(ncols=2)
for i, ax in enumerate(axs):
ax.scatter(x=[1, 2], y=[1, 2], rasterized=True, zorder=10)
ax.scatter(x=[], y=[], rasterized=False, zorder=10)
fig.savefig("minimal_working.svg")
Actual outcome
Axes layer hierarchy of minimal_not_working.svg:
- figure_1
- axes_1
- [ parts of the axes_1 ]
- axes_2
- [ parts of the axes_2 ]
Axes layer hierarchy of minimal_working.svg:
- figure_1
- axes_1
- [ parts of the axes_1 ]
- axes_2
- [ parts of the axes_2 ]
Expected outcome
The minimal_not_working.svg should have an axes layer hierarchy simlar to:
- figure_1
- axes_1
- [ parts of the axes_1 ]
- axes_2
- [ parts of the axes_2 ]
Additional information
No response
Operating system
No response
Matplotlib Version
3.11.1
Matplotlib Backend
No response
Python version
No response
Jupyter version
No response
Installation
None
Bug summary
Hi, while using
rasterized=Truewith thezorder, the saved svg files have a wrong axes layer hierarchy:However, interestingly if another drawing command is called after such as
ax.scatter(x=[], y=[], rasterized=False, zorder=10)with the samezorderbut without rasterization, the generated svg file has correct layer hierarchy.Code for reproduction
Actual outcome
Axes layer hierarchy of
minimal_not_working.svg:Axes layer hierarchy of
minimal_working.svg:Expected outcome
The
minimal_not_working.svgshould have an axes layer hierarchy simlar to:Additional information
No response
Operating system
No response
Matplotlib Version
3.11.1
Matplotlib Backend
No response
Python version
No response
Jupyter version
No response
Installation
None