Robert Cimrman wrote:
> John Hunter wrote:
>>>>>>> "Robert" == Robert Cimrman <[EMAIL PROTECTED]> writes:
>>
>>     Robert> BTW would you consider changing the definition of spy(2)
>>     Robert> as shown below, so that one could specify what 'to be a
>>     Robert> zero' means?
>>
>> I added these enhancement, and a couple more, and an
>> examples/spy_demos.py.
>>
>> On reflection, it might be better to allow the user to simply pass a
>> sparsity function rather than a precision
>>
>> def not_zero(Z):
>>     return Z!=0.
>>
>> class not_near_zero:
>>     def __init__(self, precision):
>>         self.precision = precision
>>     def __call__(self, Z):
>>         return absolute(asarray(Z))>self.precision
>>
>> def spy(Z, element=not_zero):
>>     mask = element(Z)
>>
>> Then you could do:
>>
>> spy(Z, issparse=not_near_zero(1e-6))
>>
>>
>>
>> The precision implementation you suggested is in svn, but if there is
>> any consensus that either of these approaches is better, speak up.
> 
> I was thinking about passing directly a function (or an expression?)
> too. But I would not remove the precision argument, since it's usage is
> simpler, and is usually all one needs. The best would be to have both
> possibilities :) (function, if present, taking precedence?)

I agree--and in fact my uninformed view is that even the precision 
option is taking spy beyond the realm of showing true sparcity.  If this 
is genuinely useful to people, then fine.  But if it (mainly the 
function option) is something that merely might be useful to someone 
someday, then I suggest it be left out until there is a clear need.  (My 
2 cents-worth, or less.)

Curiosity questions about implementation:

1) What is the "tocoo" method, and what objects have it?
2) Is there a reason why one shouldn't simply default precision to 0 and 
use the condition "absolute(asarray(Z)) <= precision"?

One more miscellaneous thought: perhaps spy and spy2 should be 
consolidated into a single function with a kwarg to select the marker 
version or the image version?  Their purpose is identical (isn't it?), 
and it would reduce namespace clutter.

Eric


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to