[SciPy-dev] Feature request : Comparison of sparse matrices is not implemented.
Robert Kern
rkern at ucsd.edu
Thu Dec 2 13:24:12 CST 2004
Nils Wagner wrote:
> Robert Kern wrote:
>
>> Nils Wagner wrote:
>>
>>> Hi all,
>>>
>>> I tried to visualize the structure of large and sparse matrices using
>>>
>>> from matplotlib.colors import LinearSegmentedColormap
>>> from matplotlib.matlab import *
>>> from scipy import *
>>> import IPython
>>>
>>> def spy2(Z):
>>> """
>>> SPY(Z) plots the sparsity pattern of the matrix S as an image
>>> """
>>>
>>> #binary colormap min white, max black
>>> cmapdata = {
>>> 'red' : ((0., 1., 1.), (1., 0., 0.)),
>>> 'green': ((0., 1., 1.), (1., 0., 0.)),
>>> 'blue' : ((0., 1., 1.), (1., 0., 0.))
>>> }
>>> binary = LinearSegmentedColormap('binary', cmapdata, 2)
>>>
>>> Z = where(Z>0,1.,0.)
>>> imshow(transpose(Z), interpolation='nearest', cmap=binary)
>>
>>
>>
>> Since imshow() doesn't deal with sparse matrices (to my knowledge),
>> but only dense matrices, you need to use Z.todense() regardless.
>>
> This might be a memory problem for such large matrices arising in my
> applications...
> Just, to receive an impression the number of rows, cols and entries are
> 67986, 67986 and 4222171, respectively.
Then you'll have to patch imshow to deal with sparse matrices.
--
Robert Kern
rkern at ucsd.edu
"In the fields of hell where the grass grows high
Are the graves of dreams allowed to die."
-- Richard Harter
More information about the Scipy-dev
mailing list