IP Library › Granted Patent US 10,445,421
Granted Patent B2
US 10,445,421 · App. 13/772,512 · Granted Oct 15, 2019

Optimizing rendering of data tables

Inventor: Massimo Villani (Rome, IT)
Assignee: International Business Machines Corporation
G06F17/245G06F17/211
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,445,421
App. No.
13/772,512
Granted
Oct 15, 2019
Kind
B2
Abstract

A system and computer program product for determining optimal column widths used in the rendering of data tables displayed in a graphical user interface. The system includes a processor executing instructions to receive a table parameter associated with the contents of the table and determine if the table parameter has changed. If the table parameter has changed, statistical values are calculated for visible columns of the table. A user choice for a run time column width and a default column width are received for each of the columns. A readability index for data displayed in the visible columns is calculated. A maximum readability index for visible columns is calculated. The optimal column widths based on the maximum readability index are determined. The column widths are set to the optimal column widths. The optimal column widths are stored as meta-data. The table of data is displayed using the optimal column widths.

Claims (69)

1. A data processing system comprising:

at least one memory;

a processor in communication with the memory, the processor operable to execute instructions which cause the processor to:

receive at least one table parameter associated with the contents of the table;

determine if the at least one table parameter has changed;

in response to the at least one table parameter changing, calculate based on the table parameter, two or more statistical values for a plurality of visible columns of the table;

receive a user choice for a run time column width and a default column width associated with a column width for each of the columns in the table;

calculate at least one readability index for data displayed in the visible columns using at least one of a data type, the statistical values, the run time column width and the default column width;

calculate a maximum readability index for visible columns, wherein the maximum readability index of a visible column identifies a length within a distribution of field lengths that allows all data in each row of the visible column to be viewed without adjusting a column width of any of the plurality of visible columns;

determine a chosen resolution for a display of the data processing system, wherein the chosen resolution is associated with a current user session of the data processing system;

determine, from the current user session, a total width that specifies an available space for presenting, on the display, an entire table at the chosen resolution;

determine based on the maximum readability index, one or more optimal column widths for display of the data, the optimal column width maximizing a width of the visible column based on the total width and the chosen resolution;

set the column widths for the visible columns to the optimal column widths;

store the optimal column widths as meta-data; and

display the table of data using the optimal column widths.

2. The data processing system of claim 1 , further comprising instructions that cause the processor to:

receive the meta-data containing the optimal column widths;

determine if the run time column width has changed;

in response to the run time column width being changed, determine new optimal column widths for display of the data;

set the column widths for visible columns to the new optimal column widths; and

display the table of data using the new optimal column widths.

3. The data processing system of claim 1 , further comprising instructions that cause the processor to:

receive the meta-data containing the optimal column widths;

determine if the run time column width has changed;

in response to the run time column width not being changed, set the column widths for visible columns to the optimal column widths; and

display the table of data using the optimal column widths.

4. The data processing system of claim 1 , further comprising instructions that cause the processor to:

in response to the at least one table parameter not being changed, continue to receive the at least one table parameter associated with the contents of the table.

5. The data processing system of claim 1 , wherein calculating the statistical values further comprises instructions that cause the processor to:

calculate an average column width for visible columns; and

calculate a standard deviation of the column widths for visible columns.

6. The data processing system of claim 1 , wherein calculating the at least one reliability index further comprises instructions that cause the processor to:

calculate a worst readability index; and

calculate a best readability index.

7. The data processing system of claim 1 , wherein the maximum readability index for visible columns is calculated using a linear optimization system.

8. A computer program product comprising:

a computer readable storage device; and

program code on the computer readable storage device that when executed within a data processing device, the program code provides the functionality of:

receiving at least one table parameter associated with the contents of the table;

determining if the at least one table parameter has changed;

in response to the at least one table parameter changing, calculating based on the table parameter, two or more statistical values for a plurality of visible columns of the table;

receiving a user choice for a run time column width and a default column width associated with a column width for each of the columns in the table;

calculating at least one readability index for data displayed in the visible columns using at least one of a data type, the statistical values, the run time column width and the default column width;

calculating a maximum readability index for visible columns, wherein the maximum readability index of a visible column identifies a length within a distribution of field lengths that allows all data in each row of the visible column to be viewed without adjusting a column width of any of the plurality of visible columns;

determining a chosen resolution for a display of the data processing system, wherein the chosen resolution is associated with a current user session of the data processing system;

determining, from the current user session, a total width that specifies an available space for presenting, on the display, an entire table at the chosen resolution;

determining based on the maximum readability index, one or more optimal column widths for display of the data, the optimal column width maximizing a width of the visible column based on the total width and the chosen resolution;

setting the column widths for the visible columns to the optimal column widths;

storing the optimal column widths as meta-data; and

displaying the table of data using the optimal column widths.

9. The computer program product of claim 8 , further comprising program code on the computer readable storage device that when executed within the data processing device, the program code provides the functionality of:

receiving the meta-data containing the optimal column widths;

determining if the run time column width has changed;

in response to the run time column width being changed, determining new optimal column widths for display of the data;

setting the column widths for visible columns to the new optimal column widths; and

displaying the table of data using the new optimal column widths.

10. The computer program product of claim 8 , further comprising program code on the computer readable storage device that when executed within the data processing device, the program code provides the functionality of:

receiving the meta-data containing the optimal column widths;

determining if the run time column width has changed;

in response to the run time column width not being changed, setting the column widths for visible columns to the optimal columns widths; and

displaying the table of data using the optimal column widths.

11. The computer program product of claim 8 , further comprising program code on the computer readable storage device that when executed within the data processing device, the program code provides the functionality of:

in response to the at least one table parameter not being changed, continuing to receive the at least one table parameter associated with the contents of the table.

12. The computer program product of claim 8 , wherein calculating the statistical values further comprises program code on the computer readable storage device that when executed within the data processing device, the program code provides the functionality of:

calculating an average column width for visible columns; and

calculating a standard deviation of the column widths for visible columns.

13. The computer program product of claim 8 , wherein calculating the at least one readability index further comprises program code on the computer readable storage device that when executed within the data processing device, the program code provides the functionality of:

calculating a worst readability index; and

calculating a best readability index.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2013
From: VILLANI, MASSIMO
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 029847/0497 →
Continuity (1)
Related Publication 20140237343A1 · Aug 21, 2014