Setters on unit and label must update the name on Axis.
This should be handeled via properties!
E.g.
plots[0].xaxis.unit = "week"
Does not calls the constructor code
# if unit is None:
# unit = "?"
if not name:
if not label and not unit:
name = ""
elif unit != "dimensionless":
name = f"{label} [{unit}]"
else:
name = f"{label} [-]"