James,

I see that you have implemented a strategy change in axes.py for 
inverted axes, with corresponding additions to the API.  I don't have 
strong opinions about the strategy.  Keeping track of orientation via a 
flag is reasonable, although I'm not positive it is better, given that 
it complicates the API.  My first reaction to the new API is at best 
lukewarm, however, so perhaps it is worth a bit of thrashing out on the 
list.

What you have now (and similarly for yaxis):

+    def invert_xaxis(self, invert=True):
+        "Invert the x-axis if 'invert' is True."
+        self._invertedx = invert
+
+    def xaxis_inverted(self):
+        'Returns True if the x-axis is inverted.'
+        return self._invertedx


Some alternatives:

1) Attributes (could later be properties or those terrifying traits):
     x_right=True or False
     y_up

     xdir    'right' or 'normal' or True; vs 'left' or 'reversed' or False
and similarly for ydir

2) Getters and setters:
    set_xdir() with values as some selection from above
             ydir() similar
    set_xRight(False)
             yUp(False)

Matlab uses "xdir", "reversed" etc.

I like the idea of being more descriptive, with "right"|"left" and 
"up"|"down", either as values or in the function and/or attribute names.

I also thought the old scheme of xlim(5,0) was elegant; the problem was 
that there and in related functions the variables should have been 
called "left" and "right", not "xmin" and "xmax".

I could probably come up with more possibilities, but first I want to 
see whether anyone agrees that this might be a good time to think about 
API strategy and consistency.

Eric

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Reply via email to