hilbertImage           package:HilbertVis           R Documentation

_P_r_o_d_u_c_e _a _m_a_t_r_i_x _t_h_a_t _v_i_s_u_a_l_i_z_e_s _a _l_o_n_g _d_a_t_a _v_e_c_t_o_r _a_l_o_n_g _a _H_i_l_b_e_r_t _c_u_r_v_e

_D_e_s_c_r_i_p_t_i_o_n:

     Calculate a Hilbert curve visualization of a long data vector and
     return it as a square matrix.

_U_s_a_g_e:

     hilbertImage(data, level = 9, mode = "absmax")

_A_r_g_u_m_e_n_t_s:

    data: A (potentially very long) vector of numerical data. 

   level: The level of the Hilbert curve, determining the size of the
          returned matrix 

    mode: The binning mode. See 'shrinkVector' for details.  

_D_e_t_a_i_l_s:

     See the package vignette for an explanation of this visualization
     technique.

_V_a_l_u_e:

     A matrix of dimension '2^level' x '2^level'. Each matrix element
     corresponds to a bin of consecutive elements of the data vector,
     the bins arranged to follow the Hilbert curve of the given level.
     By default, the value of a  matrix element is either the largest
     or smallest element in the bin, whichever is larger by absolute
     value. (See  'shrinkVector' for other possible binning modes.)

     To display such a matrix graphically, you can use the standard
     functions 'image' or 'levelplot' but the function
     'showHilbertImage' may be more convenient.

_N_o_t_e:

     For an interactive GUI to explore a Hilbert curve visualisation,
     use the function 'hilbertDisplay' in the 'HilbertVisGUI' package.

_A_u_t_h_o_r(_s):

     Simon Anders, EMBL-EBI, sanders@fs.tum.de

_E_x_a_m_p_l_e_s:

        # Get a vector with example data
        dataVec <- makeRandomTestData( )
        
        # Plot it in conventional (linear) fashion
        plotLongVector( dataVec )
        
        # Note how the peaks look quite uniform

        # Get the Hilbert curve matrix
        hMat <- hilbertImage( dataVec )
        
        # Plot it with the 'showHilbertImage' function
        showHilbertImage( hMat )
        
        # Note how you can now see the non-uniformity hidden in the previous plot.
        # Note also the ugly aliasing when you change the size of the plot window.
        # Using EBImage allows to display in each matrix element as one pixel:
        
        # if( require ( EBImage ) )
        #    showHilbertImage( hMat, mode="EBImage" )

