Abstract:
A computer implemented method includes forming column range-bands, generating row range-bands, and establishing global range-bands in conjunction with the column range-bands and the row range-bands.

Description:
BRIEF DESCRIPTION OF THE INVENTION 
       [0001]    This invention relates generally to visualizing data. More particularly, this invention relates to a method of depicting the overlap of multiple visual indicators associated with range-bands. 
       BACKGROUND OF THE INVENTION 
       [0002]    A user may quickly identify trends and values of concern in a table with a range-band. This approach is useful for a range-band formed in a single dimension. However, applying multiple dimensions of range-bands to the same cell is problematic. This problem may be solved by selecting a single default range-band to display. For example, row range-bands may be selected as the predominate range-bands, and therefore only row range-bands are displayed in a cell that also has column and/or global range-bands. 
         [0003]    In view of the foregoing, it would be advantageous to provide a system that enables the effective simultaneous display of range-bands for row, column, and global values. 
       SUMMARY OF INVENTION 
       [0004]    The invention includes a computer implemented method of forming column range-bands, generating row range-bands, and establishing global range-bands in conjunction with the column range-bands and the row range-bands. 
         [0005]    The invention also includes a computer readable storage medium with executable instructions to apply a first range-band and form a second range-band. The first range-band and the second range-band intersect at a shared cell and both the first range-band and the second range-band are visible within the shared cell. 
     
    
     
       BRIEF DESCRIPTION OF THE FIGURES 
         [0006]    The invention is more fully appreciated in connection with the following detailed description taken in conjunction with the accompanying drawings, in which: 
           [0007]      FIG. 1  illustrates a computer constructed in accordance with an embodiment of the invention. 
           [0008]      FIG. 2  illustrates processing operations associated with an embodiment of the invention. 
           [0009]      FIG. 3  illustrates a table configured in accordance with an embodiment of the invention. 
           [0010]      FIG. 4  illustrates column range-bands in the table of  FIG. 3  according to an embodiment of the invention. 
           [0011]      FIG. 5  illustrates combined column and row range-bands in the table of  FIG. 3  according to an embodiment of the invention. 
           [0012]      FIG. 6  illustrates combined column, row and global range-bands in the table of  FIG. 3  according to an embodiment of the invention. 
           [0013]      FIG. 7  illustrates a single cell displaying column, row and global range-bands simultaneously according to an embodiment of the invention. 
       
    
    
       [0014]    Like reference numerals refer to corresponding parts throughout the several views of the drawings. 
       DETAILED DESCRIPTION OF THE INVENTION 
       [0015]    The invention is disclosed in connection with the following definitions. 
         [0016]    Range-band is a set of quantitative values with an associated visual indicator (e.g., color, texture, shading, animation and the like). The set may be an interval, band, block or range. The visual indicator is typically applied to a cell background or to the text of a value. 
         [0017]    Color-band is a specific form of a range-band. A color-band is a set of quantitative values associated with a color. Thus, each quantitative value has a corresponding color. 
         [0018]    Column range-band is a column of data with a range-band. 
         [0019]    Row range-band is a row of data with a range-band. 
         [0020]    Global range-band is a table of data with a range-band. 
         [0021]    A range-band visual indicator is the sensory indicia (e.g., color, texture, shading, animation and the like) applied to a set of data. 
         [0022]    A line of symmetry is a line through a data cell which divides the cell into two equal portions. 
         [0023]      FIG. 1  illustrates a computer  100  configured in accordance with an embodiment of the invention. The computer  100  includes standard components, including a central processing unit  102  and input/output devices  104 , which are linked by a bus  106 . The input/output devices  104  may include a keyboard, mouse, touch screen, monitor, printer, and the like. A network interface circuit  108  is also connected to the bus  106 . The network interface circuit  108  provides connectivity to a network (not shown), thereby allowing the computer  100  to operate in a networked environment. 
         [0024]    A memory  110  is also connected to the bus  106 . The memory  106  stores a set of executable programs to implement operations of the invention. One executable program is a range-banding module  114 . The range-banding module  114  includes executable instructions to access a data source (e.g., a database  112 , a data warehouse, and the like) to receive range-band specifications from the user, and to associate user specified range-bands to each data value. All applicable row, column and global range-bands associated with a data value are applied, rather than a single default range-band (e.g., only the row color) as in the prior art. 
         [0025]    Memory  110  also stores a Graphical User Interface (GUI) module  116 . The GUI module  116  displays the dataset in a table format (e.g., the table  300  of  FIG. 3 ) and, once specified by the user, displays all indicia associated with a particular data value simultaneously, applying the appropriate range-band. 
         [0026]    While the various components of memory  110  are shown residing in the single computer  100 , it should be recognized that such a configuration is not required in all applications. For instance, the data source may reside in a separate computer (not shown in  FIG. 1 ) that is connected to a network through the network interface circuit  108 . Similarly, the range-band module  114  may reside in another computer (not shown in  FIG. 1 ), separate from both the computer  100  and the computer storing the data source, which is also connected to a network. Additionally, separate modules of executable code are not required. The invention is directed toward the operations disclosed herein. There are any number of ways and locations to implement those operations, all of which should be considered within the scope of the invention. 
         [0027]      FIG. 2  illustrates the application of three types of range-bands to a table  300 . The first processing operation shown in  FIG. 2  is to apply column range-bands  200 . In one embodiment, this is implemented with executable code of the range-banding module  114  and the result is displayed with the executable code of the GUI module  116 . Either default values are provided or the user specifies the column range-band parameters indicating the column(s) to apply the range-bands to, the indicia to use and the data value range that each indicia applies to. The range-banding module  114  associates the appropriate indicia with each of the specified data values. The GUI module  116  displays the table  300  with column range-bands as illustrated in  FIG. 4 . The indicia for each cell in the specified column(s) (e.g., the column  402 ) corresponds to the range that the cell&#39;s data value falls into. The column range-bands are specified in the legend  404 . 
         [0028]    Returning to  FIG. 2 , the next operation is to supplement column range-bands with row range-bands  202 . Either default values are provided or the user specifies the row range-band parameters indicating the row(s) to apply the range-bands to, the indicia set to use and the data value range that each indicia applies to. The range-banding module  114  associates the appropriate indicia with the specified data values. The GUI module  116  displays the table  300  with both column and row range-bands as illustrated in  FIG. 5 . The indicia of each cell in the specified row(s) (e.g., the row  502 ) corresponds to the range that the cell&#39;s data value falls into. The row range-band values are specified in the legend  504 . 
         [0029]    In the case where row and column range-bands overlap, the cell indicia is divided to display a portion in the row indicia and a portion in the column indicia. In one embodiment of the invention, the indicia is cross-hatching and grayscale divided to display half and half. For example, the cell  506  is divided diagonally. As specified by the legend  504 , its row range-band upper half is a medium-light gray because its data value—2,689.773—falls in the range 2,000-3,999. As specified by the legend  404 , its column range-band lower half has diagonal lines because its data value is greater than 2,000. 
         [0030]    Returning to  FIG. 2 , the next operation is to supplement column and row range-bands with global range-bands  204 . Either default values are provided or the user specifies the global range-band parameters indicating the indicia to use and the data value range that each indicia applies to. The range-banding module  114  associates the appropriate indicia with the specified data values. The GUI module  116  displays the table  300  with column, row and global range-bands as illustrated in  FIG. 6 . A gradient overlay (e.g., color, texture or animation) is applied to each cell in the table  300  using the indicia that corresponds to the range that the cell&#39;s data value falls into. The global range-band values are specified in the legend  604 . 
         [0031]    In the case where global range-bands overlap row or column range-bands, the cell indicia is set to the appropriate row or column range-band indicia and the global indicia is displayed as a gradient overlay. For example, the cell  602  has a cross-hatch pattern for its column band value and gray scale as a gradient overlay. As specified by the legend  404 , the column range-band background is cross-hatched because its data value—8,92.517—is between 0-999. The global range-band gradient overlay is black because the data value is in the range 0-3,999. 
         [0032]    In the case where row, column and global range-bands overlap, the cell indicia is divided to display half the row indicia and half the column indicia with the global indicia displayed as a gradient overlay. For example, the cell  606  is divided diagonally with a gradient overlay. As specified by the legend  404 , the column range-band lower half has diagonal lines because its data value—2,689.773—is greater than 2,000. As specified by the legend  504 , the row range-band upper half is a light gray because its data value falls in the range 2,000-3,999. As specified by the legend  604 , the global range-band gradient overlay is black because the data value is between 0-3,999. 
         [0033]    Refer to the cell  700  of  FIG. 7  for a clearer illustration of the multiple indicia associated with cell  606 . Cell  700  of  FIG. 7  is divided diagonally, the upper half  702  displays the row range-band indicia and the lower half  704  displaying the column range-band indicia. The end  706  displays the global range-band indicia in a gradient overlay. This is just one of many ways to segment the cell for multiple indicia. In further embodiments of the invention, the column indicia may appear in the top half of the cell and the row indicia in the bottom half, the global gradient overlay may fade from the center towards the ends instead of from the one end towards the center, the row, column and global indicia may all appear as equally divided segments of the cell background, and the like. 
         [0034]    The foregoing description, for purposes of explanation, used specific nomenclature to provide a thorough understanding of the invention. However, it will be apparent to one skilled in the art that specific details are not required in order to practice the invention. Thus, the foregoing descriptions of specific embodiments of the invention are presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the invention to the precise forms disclosed; obviously, many modifications and variations are possible in view of the above teachings. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications, they thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated. It is intended that the following claims and their equivalents define the scope of the invention.