133 neuron dataset

This page reflects some work performed with John Beggs that resulted in the following PLOS ONE paper. (NSF award 0904912)
  • 1-D strip chart vis

    2D spatial grid of neurons

    We will stack glyphs, representing firings, on top (in Z) of this grid.


    A subset (first 500) of neuron firings at start of time series (with z-scaled cubic glyphs).


    Packed: remove time delays

    For the following visualizations, we simply removed the time-delays between firings, i.e., instead of using the actual time as the z-coord, we simply increment z by 1 for each new time recording. This compresses (in z) the glyphs considerably.


    500 firings (and zoom of lower-right region).


    5000 firings.


    50000 firings.


    All (~120000) firings.


    Transfer Entropy (TE) Matrix

    In MATLAB:
    >> load InVitroExperiment_133neurons_ASDF
    >> TEmatrix = ASDFTEdelay(asdf,1);
    >> size(TEmatrix)
    
    ans =
    
       133   133
    
    >> whos TEmatrix
      Name            Size              Bytes  Class     Attributes
    
      TEmatrix      133x133            141512  double
    
    >> TEmatrix
    
    TEmatrix =
    
       1.0e-03 *
    
      Columns 1 through 10
    
             0    0.0000    0.0008    0.0046    0.0001    0.0035    0.0532    0.0024    0.0008    0.0053
        0.0000         0    0.0015    0.0000    0.0000    0.0019    0.0000    0.0000    0.0027    0.0000
        0.0008    0.0015         0    0.0033    0.0001    0.0001    0.0072    0.0000    0.0011    0.0000
        0.0027    0.0000    0.0000         0    0.0000    0.0005    0.0234    0.0000    0.0033    0.0000
        0.0003    0.0000    0.0001    0.0000         0    0.0000    0.0002    0.0001    0.0005    0.0000
        0.0024    0.0007    0.0003    0.0046    0.0000         0    0.0006    0.0001    0.0036    0.0000
        0.0458    0.0000    0.0020    0.0132    0.0009    0.0095         0    0.0243    0.0071    0.0123
        0.0062    0.0000    0.0012    0.0000    0.0001    0.0001    0.0196         0    0.0012    0.0000
        0.0022    0.0000    0.0000    0.0000    0.0001    0.0003    0.0113    0.0012         0    0.0015
        0.0053    0.0000    0.0000    0.0071    0.0000    0.0074    0.0125    0.0069    0.0000         0
    
    >> save teMtx TEmatrix
    
    
    Then, from Python:
    import scipy
    from scipy import io
    
    te = {}
    scipy.io.loadmat("full-path-to/teMtx",te)
    
    In [2]: teMtx = te['TEmatrix']
    
    In [3]: teMtx.size
    Out[3]: 17689
    
    In [4]: teMtx.shape
    Out[4]: (133, 133)
    
    
    In [6]: teMtx[0:9,0:9]
    Out[6]: 
    array([[  0.00000000e+00,   1.68033989e-08,   7.59139762e-07,
              4.62332534e-06,   1.39243600e-07,   3.50863669e-06,
              5.32143167e-05,   2.44901501e-06,   7.68650565e-07],
           [  1.73985789e-08,   0.00000000e+00,   1.45115517e-06,
              4.93031343e-09,   3.11438363e-08,   1.92049751e-06,
              2.16824470e-08,   6.40914027e-09,   2.65017478e-06],
           [  7.59736245e-07,   1.45118790e-06,   0.00000000e+00,
              3.30347955e-06,   7.32821449e-08,   1.20916632e-07,
              7.22468653e-06,   1.50957302e-08,   1.05983595e-06],
           [  2.70174543e-06,   4.93023466e-09,   1.16339858e-08,
              0.00000000e+00,   4.09147792e-08,   5.44135943e-07,
              2.33556551e-05,   8.26447814e-09,   3.32418446e-06],
           [  2.56281682e-07,   3.11322475e-08,   7.34055651e-08,
              4.09002090e-08,   0.00000000e+00,   3.82542228e-09,
              2.11237318e-07,   5.35178533e-08,   5.05555796e-07],
           [  2.41442747e-06,   6.50163414e-07,   3.05966530e-07,
              4.62225512e-06,   3.72983776e-09,   0.00000000e+00,
              5.57714298e-07,   8.77744168e-08,   3.57742867e-06],
           [  4.58499154e-05,   1.91341003e-08,   2.02548314e-06,
              1.32224727e-05,   9.27983365e-07,   9.52643411e-06,
              0.00000000e+00,   2.43260508e-05,   7.10147031e-06],
           [  6.24163376e-06,   6.42654021e-09,   1.20168903e-06,
              8.31400729e-09,   5.35358119e-08,   8.76587892e-08,
              1.95692578e-05,   0.00000000e+00,   1.21180911e-06],
           [  2.15953316e-06,   8.75691293e-09,   2.06638852e-08,
              1.15044561e-08,   7.26714240e-08,   3.17082577e-07,
              1.12806867e-05,   1.20285631e-06,   0.00000000e+00]])
    
    Then visualize (note that each matrix below has its color LUT scaled accordingly):


    10x10 submatrix: red square = 0.0532 * 1.0e-03 (in the Matlab above)
    Python: maxTE = 5.32143167096e-05 at idx,idy = (6,0)


    Full 133x133 TE matrix (no spaces between colored square glyphs) and zoomed lower-right region.
    Python: maxTE = 0.000224195159452 at idx,idy = (117,124))


    Representing the TE matrix as graphs (edge values * 10000000 --> "%.1f")
    (Note: we temporarily disregard the spatial layout of the neurons)


    ForceDirected (thresh=1000). Zoomed in on the largest (1 of 3) clusters. (Recall maxTE at 117->124)


    Circular (thresh=1000).


    Circular (thresh=500).


  • MATLAB-ParaView page
  • up