The plotting is always made on top of the axes. This is not the desirable behavior as the ticks of the axes should be on top of the data. I even tried to change the order of doplot and doaxes on the graph.graph.finish(), but it does not fix it.
I am not sure whether the behaviour you want is the "correct" one. I personally do like the data to be on top of the ticks. Another question is how one could allow the user to easily modify the order of the layers (which represent a new mechanism introduced in the last PyX version).
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
This seems to be fixed by changing the graph.layers order.
In graph.grpah.init(self), replacing
for name in ["background", "filldata", "axes.grid", "axis.baseline", "axis.ticks", "axis.labels", "axis.title", "data", "key"]:
for
for name in ["background", "filldata", "data", "axes.grid", "axis.baseline", "axis.ticks", "axis.labels", "axis.title", "key"]:
fixes this bug.
I am not sure whether the behaviour you want is the "correct" one. I personally do like the data to be on top of the ticks. Another question is how one could allow the user to easily modify the order of the layers (which represent a new mechanism introduced in the last PyX version).
With r3355 you can now reorder the graph layers by, e.g.
g.layer("axes", above="data")