Summary
When setting axesedgecolor per-axis with ax.format(...), calling axs.format(...) afterward (even only for title) appears to reset the edge colors.
Minimal Reproducible Example
importultraplotasupltfig, axs=uplt.subplots(ncols=2)
fori, axinenumerate(axs):
ax.format(
axesedgecolor=f"C{i}",
title="Axes edge color",
)This applies different edge colors to each axes as expected.
importultraplotasupltfig, axs=uplt.subplots(ncols=2)
fori, axinenumerate(axs):
ax.format(
axesedgecolor=f"C{i}",
)
axs.format(
title="Axes edge color",
)In this case, after axs.format(...), the per-axis edge colors are reset.
Expected behavior
Calling axs.format(...) for unrelated properties (e.g., title) should not overwrite/reset per-axis axesedgecolor values already set with ax.format(...).
Actual behavior
Per-axis axesedgecolor appears to be reset after axs.format(...).
Additional context
If this is intended behavior, it would be helpful to document it clearly. Otherwise, this may be a bug/regression in property merging/precedence between Axes.format and AxesGroup.format.
Summary
When setting
axesedgecolorper-axis withax.format(...), callingaxs.format(...)afterward (even only fortitle) appears to reset the edge colors.Minimal Reproducible Example
This applies different edge colors to each axes as expected.
In this case, after
axs.format(...), the per-axis edge colors are reset.Expected behavior
Calling
axs.format(...)for unrelated properties (e.g.,title) should not overwrite/reset per-axisaxesedgecolorvalues already set withax.format(...).Actual behavior
Per-axis
axesedgecolorappears to be reset afteraxs.format(...).Additional context
If this is intended behavior, it would be helpful to document it clearly. Otherwise, this may be a bug/regression in property merging/precedence between
Axes.formatandAxesGroup.format.