US20150135052A1 - Space-optimized display of multi-column tables - Google Patents

Space-optimized display of multi-column tables Download PDF

Info

Publication number
US20150135052A1
US20150135052A1 US14/479,160 US201414479160A US2015135052A1 US 20150135052 A1 US20150135052 A1 US 20150135052A1 US 201414479160 A US201414479160 A US 201414479160A US 2015135052 A1 US2015135052 A1 US 2015135052A1
Authority
US
United States
Prior art keywords
width
text
container
column
combined
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US14/479,160
Inventor
James Thompson
Joshua Goldenberg
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Palantir Technologies Inc
Original Assignee
Palantir Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to US201361899803P priority Critical
Priority to US14/137,120 priority patent/US8832594B1/en
Application filed by Palantir Technologies Inc filed Critical Palantir Technologies Inc
Priority to US14/479,160 priority patent/US20150135052A1/en
Publication of US20150135052A1 publication Critical patent/US20150135052A1/en
Application status is Abandoned legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/20Handling natural language data
    • G06F17/21Text processing
    • G06F17/24Editing, e.g. insert/delete
    • G06F17/245Tables; Ruled lines
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/20Handling natural language data
    • G06F17/21Text processing
    • G06F17/211Formatting, i.e. changing of presentation of document
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/20Handling natural language data
    • G06F17/21Text processing
    • G06F17/25Automatic justification
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object or an image, setting a parameter value or selecting a range
    • G06F3/04842Selection of a displayed object
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/20Handling natural language data
    • G06F17/21Text processing
    • G06F17/22Manipulating or registering by use of codes, e.g. in sequence of text characters
    • G06F17/2294Handling of whitespace

Abstract

The display of a multi-column table can be optimized. For example, a container, such as a multi-column table, can have a first container width. The container includes first text, second text, and a divider, such as an icon, whitespace, or text, between the first text and the second text. The first text, the second text, and the divider can have a combined text width. The container can be resized to a second container width that is smaller than the first container width. If it is determined that the combined text width is then greater than the second container width, the first text, the second text, or both can be abbreviated until the combined text width is less than the second container width.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This application is a continuation of U.S. application Ser. No. 14/137,120, filed on Dec. 20, 2013, and titled “SPACE-OPTIMIZED DISPLAY OF MULTI-COLUMN TABLES,” which application claims a priority benefit under 35 U.S.C. §119 to U.S. Provisional Patent Application No. 61/899,803, filed on Nov. 4, 2013, and titled “SPACE-OPTIMIZED DISPLAY OF MULTI-COLUMN TABLES.” All of the above-identified applications are hereby incorporated by reference herein in their entireties.
  • TECHNICAL FIELD
  • The present disclosure relates to systems and techniques for displaying a multi-column table.
  • BACKGROUND
  • Computer operating systems, software applications, web applications, and the like, often allow user interactions with graphical user interfaces. The graphical user interface can support content panes that include containers, such as tables with one or more columns. Each of the columns of a table can include text, images, videos, and/or the like. In some instances, the content panes are resizable. However, when resizing a content pane, the contents of the table may not be displayed properly.
  • SUMMARY
  • Generally, when a content pane is resized into a smaller form, the content of a table having multiple columns may be wider than a width of the resized content pane. Thus, the content in one or more columns may be displayed such that some or all of the content is hidden. However, as the content pane is resized, techniques described herein can be used to ensure that columns are dynamically adjusted such that the information in one column is not further reduced if the column already displays less information than another column. For example, a first column of a table could include first text and a second column of the table could include second text. The first column and the second column may be separated by an icon, whitespace, or text (e.g., a forward slash) referred to herein as a divider. As the horizontal width of the content pane is resized to a smaller value, the individual widths and/or a combined width of the first column, the second column, and the divider can be analyzed. In one embodiment, if the combined width is greater than the horizontal width of the content pane, then the first column and/or the second column can also be resized to a smaller value. If a width of the first column is greater than a width of the second column, then the width of the first column can be reduced until the combined width is less than the horizontal width of the content pane. Any text in the first column can be abbreviated to fit within the resized first column. If the width of the first column is less than the width of the second column, then the width of the second column can be reduced until the combined width is less than the horizontal width of the content pane. Any text in the second column can be abbreviated to fit within the resized second column. If the width of the first column is equal to the width of the second column, then the width of the first column and the second column both can be reduced until the combined width is less than the horizontal width of the content pane. Any text in the first column and the second column can be abbreviated to fit within the resized first column and second column, respectively.
  • One aspect of this disclosure provides a method for optimizing display of a multi-column table. The method comprises displaying a container of a first container width. The container may comprise first text and second text. A combined text width comprising a first width of the first text, a second width of the second text, and a divider width of an icon, whitespace, or text between the first text and the second text may be less than the first container width. The method further comprises resizing the container to a second container width that is smaller than the first container width. The method further comprises determining whether the combined text width is greater than the second container width. The method further comprises, in response to determining that the combined text width is greater than the second container width, in response to determining that the first text width is greater than the second text width, abbreviating the first text until the combined text width is less than the second container width or the first text width is equal to the second text width. The method further comprises, in response to determining that the combined text width is greater than the second container width, in response to determining that the second text width is greater than the first text width, abbreviating the second text until the combined text width is less than the second container width or the first text width is equal to the second text width. The method further comprises, in response to determining that the combined text width is greater than the second container width, in response to determining that the first text width is equal to the second text width, abbreviating the first text and the second text equally until the combined text width is less than the second container width.
  • Another aspect of this disclosure provides a computing system configured to optimize display of a multi-column table. The computer system comprises a network interface that is coupled to a data network for receiving and transmitting one or more packet flows. The computer system further comprises a computer processor. The computer system further comprises a computer readable storage medium storing program instructions configured for execution by the computer processor in order to cause the computing system to display a container of a first container width. The container may comprise a first column and a second column. A combined width comprising a first width of the first column and a second width of the second column may be less than the first container width. The one or more stored program instructions may further cause the processor to resize the container to a second container width that is smaller than the first container width. The one or more stored program instructions may further cause the processor to determine whether the combined width is greater than the second container width. The one or more stored program instructions may further cause the processor to, in response to the determination that the combined width is greater than the second container width, in response to a determination that the first width is greater than the second width, abbreviating the first column until the combined width is less than the second container width or the first width is equal to the second width. The one or more stored program instructions may further cause the processor to, in response to the determination that the combined width is greater than the second container width, in response to a determination that the second width is greater than the first width, abbreviating the second column until the combined width is less than the second container width or the first width is equal to the second width. The one or more stored program instructions may further cause the processor to, in response to the determination that the combined width is greater than the second container width, in response to a determination that the first width is equal to the second width, abbreviating the first column and the second column equally until the combined width is less than the second container width.
  • Another aspect of this disclosure provides a non-transitory computer-readable medium comprising one or more program instructions recorded thereon, the instructions configured for execution by a computing system comprising one or more processors in order to cause the computing system to display a container of a first container width. The container may comprise a first column and a second column. A combined width comprising a first width of the first column and a second width of the second column may be less than the first container width. The instructions may be further configured to cause the computing system to resize the container to a second container width that is smaller than the first container width. The instructions may be further configured to cause the computing system to determine whether the combined width is greater than the second container width. The instructions may be further configured to cause the computing system to, in response to the determination that the combined width is greater than the second container width, in response to a determination that the first width is greater than the second width, abbreviating the first column until the combined width is less than the second container width or the first width is equal to the second width. The instructions may be further configured to cause the computing system to, in response to the determination that the combined width is greater than the second container width, in response to a determination that the second width is greater than the first width, abbreviating the second column until the combined width is less than the second container width or the first width is equal to the second width. The instructions may be further configured to cause the computing system to, in response to the determination that the combined width is greater than the second container width, in response to a determination that the first width is equal to the second width, abbreviating the first column and the second column equally until the combined width is less than the second container width.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 illustrates a user interface displaying a resizable table.
  • FIGS. 2A-2F illustrate user interfaces displaying a space-optimized version of the resizable table.
  • FIGS. 3A-3B illustrate user interfaces displaying a space-optimized version of a multi-column table that includes a histogram.
  • FIG. 4 is a flowchart depicting an illustrative operation of optimizing display of a multi-column table.
  • FIG. 5 illustrates a computer system with which certain methods discussed herein may be implemented.
  • DETAILED DESCRIPTION Overview
  • Disclosed herein are various systems and methods that allow for optimized display of a multi-column table. In particular, the systems and methods disclosed herein can allow for the columns in a table to be adjusted so as to ensure that the information in one column is not further reduced if the column already displays less information than another column when the width of the table is reduced. As used herein, a “width” can refer to a numerical measure of length (e.g., a number of pixels, a percentage, centimeters, inches, etc.) or can refer to a number of characters.
  • As described above, a resizable content pane (e.g., a window displayed within the graphical user interface of an operation system) can include containers. For example, the containers could be tables with one or more columns. Each of the columns of a table can include text, images, videos, and/or the like.
  • Generally, when a content pane is resized into a smaller form, the size of the columns may be wider than a width of the resized content pane. Thus, the content in the columns may be displayed such that some or all of the content is hidden. However, as the content pane is resized, the various systems and methods described herein can allow the columns to be dynamically adjusted such that the information in one column is not further reduced if the column already displays less information than another column.
  • For example, a first column of a table could include first text and a second column of the table could include second text. The first column and the second column may be separated by an icon, whitespace, text (e.g., a forward slash), or other content that divides the information included in the two columns and is referred to herein as a divider. As the horizontal width of the content pane is reduced, the first column and the second column can be adjusted based on the width of the text displayed in each respective column. If the width of the first text is greater than the width of the second text, then the first text can be abbreviated, and vice-versa. If the width of the first text is the same as the width of the second text, then the first text and the second text can be abbreviated equally or nearly equally. The first text and/or the second text may be abbreviated until the width of the table is less than the width of the content pane.
  • In an embodiment, the techniques described herein apply for content present in a single column or area of a user interface (e.g., there may be no columns). For example, a content pane can include one or more columns, where the first column includes first text and second text separated by a divider. As the horizontal width of the content pane is resized to a smaller value, instead of analyzing the combined width of the first column, the second column, and the divider, the combined width of the first text, the second text, and the divider can be analyzed. Based on a comparison of the combined width and the horizontal width of the content pane, the first text and/or the second text can then be resized to a smaller width (e.g., the text can be abbreviated) according to the rules as discussed above with respect to the first column and the second column. Thus, any discussion herein regarding resizing columns may be applied to resizing of text in embodiments where multiple text items are displayed in a single user interface and/or column. For example, references herein to a first column and second column may be read to cover first text and second text (that is not necessarily in separate columns).
  • In some embodiments, a table can include one or more columns that include text and another column that includes a histogram (or other graphical feature) associated with the text. As an example, multi-column table 310 in FIG. 3A may include one or more columns that include text (e.g., text 370 and 372) and another column that includes histograms 320-341. A number of occurrences may be associated with the text 370 and a number of occurrences may be associated with the text 372. A width of a histogram 332 in FIG. 3A can be based on a combination of the number of occurrences associated with the text 370 and the number of occurrences associated with the text 372. The width of the histogram 332 can also be based on a total number of conflicts associated with the entire set of text in the multi-column table 310. In further embodiments, a histogram can further include a horizontal bar that corresponds with a number of conflicts between the occurrences associated with text. As an example, a width of a horizontal bar 374 in FIG. 3A can depend on a number of conflicts between the occurrences associated with the text 370 and the occurrences associated with the text 372. For instance, a database may include a list of titles for the employees of a company. The first text may be “Engineer” and the second text may be “engineer.” The total number of employees with the title “Engineer” or “engineer” may be 100, and the width of the histogram may reflect this. However, there may be a certain number of employees, for example 20, that carry the title “Engineer” and “engineer.” The width of the horizontal bar within the histogram may reflect the number of conflicts. In another instance, a database (or other data set) may include a total number of conflicts for various conflict types. One of the conflict types may be “Titles,” which may include the list of titles for the employees of a company described above. The total number of conflicts may be 1000, and the width of the histogram may reflect this. As described above, 20 of those conflicts may be between use of the title “Engineer” and “engineer” that are each associated with individual employees, and the width of the horizontal bar 374 within the histogram may reflect those conflicts (20). The horizontal bar can be one of several colors, where the colors are chosen based on the number of conflicts.
  • Examples of Space-Optimized Multi-Column Tables
  • FIG. 1 illustrates a user interface 100 displaying a resizable table 110. The user interface 100 can be generated by an electronic device, such as the computer system 500 described below. As illustrated in FIG. 1, the table 110 is comprised within a resizable content pane 120. However, in other embodiments the table 110 may be independent of any content panes and may be resizable via controls built into the table 110.
  • In the example of FIG. 1, the table 110 includes a column comprising the text “Government Organization” and “Organization,” where “Government Organization” and “Organization” are separated by a divider represented as a forward slash. In other embodiments, the table 110 includes two columns, where the first column comprises the text “Government Organization” and the second column comprises the text “Organization,” separated by a divider, such as a forward slash.
  • In one embodiment, the table 110 can be resized by selecting a border or an area around the border of the table 110 using a cursor (e.g., a mouse pointer or a finger) and dragging the cursor in a desired direction. Likewise, the content pane 120 can be resized by selecting a border or an area around the border of the content pane 120 using the cursor and dragging the cursor in a desired direction. As an example, cursor 130 can be placed near or on the border of the content pane 120 to adjust the size of the content pane 120. In some embodiments, resizing the content pane 120 also resizes the table 110. In other embodiments, resizing the content pane 120 only results in the resizing of the table 110 if the content pane 120 is resized to have a smaller width than the table 110.
  • FIGS. 2A-2F illustrate the user interface 100 resizing of the content pane 120 and the space-optimized table 110 in response to input from the user. As illustrated in FIG. 2A, the content pane 120 is resized to have a smaller width than as illustrated in FIG. 1 via cursor 130. In this embodiment, the table 110 is also resized to have a smaller width than as illustrated in FIG. 1 based on the resizing of the content pane 120. In an embodiment, the width of the table 110 is reduced by the same percentage as the reduction in the width of the content pane 120. In some embodiments, the width of the table 110 may not be reduced at all in response to reducing width of the content pane 120 (or at a smaller percentage of changes to the content pane) unless/until the content pane 120 width reaches the table 110 width. Because the width of “Government Organization/Organization” is still less than the width of the table 110, the text has not been changed.
  • As illustrated in FIG. 2B, the content pane 120 is again resized to a smaller width. In addition, the table 110 is again resized to a smaller width. However, unlike as illustrated in FIG. 2A, the width of “Government Organization/Organization” is greater than the width of the resized table 110. Accordingly, “Government Organization/Organization” is abbreviated to fit within the table 110.
  • In an embodiment, text to the left of the divider (e.g., the “/”) and text to the right of the divider are analyzed (e.g., by the processor of a user device, such as the processor 504 of the computer system 500, described in greater detail below). If the text to the left of the divider (“left text”) has a larger width than the text to the right of the divider (“right text”), then the left text is abbreviated until either the left text, the right text, and the divider have a width that is less than the width of the table 110 or the left text and the right text have the same width, at which point both the left text and the right text are abbreviated (e.g., by the same amount) until the left text, the right text, and the divider have a width that is less than the width of the table 110. The same process can be followed if the right text has a larger width than the left text. If the left text and the right text both have the same width, then the left text and the right text are abbreviated (e.g., by the same amount) until the left text, the right text, and the divider have a width that is less than the width of the table 110.
  • As illustrated in FIG. 2B, the left text has a width that is greater than the width of the right text. Thus, “Government Organization” is abbreviated to “Government Organiz . . . ” and “Organization” is not abbreviated. Likewise, as illustrated in FIGS. 2C and 2D, the content pane 120 and the table 110 are again reduced in size. The left text still has a width that is greater than the width of the right text, so “Government Organiz . . . ” is further abbreviated to “Government . . . ” and then to “Governme . . . ” while “Organization” is still not abbreviated.
  • However, as illustrated in FIG. 2D, the left text and the right text have the same width. As illustrated in FIG. 2E, the content pane 120 and the table 110 are again reduced in size. Because the left text and the right text have the same width, the left text and the right text are both abbreviated to “Governme . . . ” and “Organizati . . . ,” respectively. As the content pane 120 and the table 110 are further reduced in size, as illustrated in FIG. 2F, the left text and the right text are further abbreviated to “Govern . . . ” and “Organiz . . . ,” respectively.
  • FIGS. 3A-3B illustrate user interfaces 300 displaying a space-optimized version of a multi-column table 310 that includes a histogram, such as histograms 320-341. The user interface 300 can be generated by an electronic device, such as the computer system 500 described below. As illustrated in FIG. 3A, the multi-column table 310 is comprised within a resizable content pane 315. In an embodiment, the multi-column table 310 includes a column comprising text, where at least a portion of the text is separated by a divider represented as a forward slash (e.g., the text includes “Man” and “Persons employed in the tech field” separated by a forward slash). In other embodiments, the multi-column table 310 includes at least two columns, where the first column comprises some text (or whitespace) and the second column comprises other text (or whitespace), where the two columns are separated by the divider represented as a forward slash (e.g., the first column includes “Man” and the second column includes “Persons employed in the tech field”).
  • The multi-column table 310 further includes a column that includes the histograms 320-341. Each histogram 320-341 resides in an individual row and is associated with text in the same respective row. For example, histogram 320 is associated with the text “Nexus A,” histogram 324 is associated with the text “Object Type,” histogram 330 is associated with the text “Government Organization/Organization,” and so on.
  • The width of a histogram 320-341 may depend on the total number of occurrences corresponding to the text associated with the respective histogram 320-341. For example, the width of the histogram 324 may depend on the total number of occurrences corresponding to “Object Type.” As another example, the width of the histogram 330 may depend on a combination of the total number of occurrences corresponding to “Government Organization” and the total number of occurrences corresponding to “Organization.” As another example, the width of the histogram 330 may depend on the total number of occurrences of “Government Organization” and “Organization.” Alternatively, the width of a histogram 320-341 may depend on a total number of conflicts associated with the text that corresponds with the histograms 320-341.
  • In an embodiment, the widths of histograms 320-341 have a logarithmic relationship. Thus, the width of a first histogram and the width of a second histogram provide a comparison of the total number of occurrences corresponding to the text associated with each respective histogram using a logarithmic scale. For example, histogram 320 has a width that is longer than the width of histogram 321. If the text associated with the histogram 320 corresponds to 10,000 total occurrences and the histograms 320-341 have a base 10 logarithmic relationship, then the reduced width of histogram 321 may indicate that the text associated with the histogram 321 corresponds to 1,000 total occurrences. In another embodiment, the widths of the histograms 320-341 are the same. For example, the widths of the histograms 320-341 may be the same when the width of a histogram 320-341 depends on a total number of conflicts associated with the text that corresponds with the histograms 320-341.
  • In an embodiment, each histogram 320-341 includes a horizontal bar. For example, histogram 330 includes horizontal bar 355. For the histograms 320-329 that are associated with text identified as “Conflict Source” or “Conflict Type,” the width of each horizontal bar may correspond with the total number of conflicts associated with the text. For the histograms 330-341, the width of each horizontal bar may correspond with the total number of conflicts between occurrences associated with a first portion of the text (e.g., text before the divider) and occurrences associated with a second portion of the text (e.g., text after the divider). For example, the first portion of the text could be “James R Thomas” and the second portion of the text could be “James Thomas.” The total number of persons with the title “James R Thomas” could be 500 and the total number of persons with the title “James Thomas” could be 2000. The width of a histogram, such as the histogram 334, may correspond with 2500, the total number of occurrences of both “James R Thomas” and “James Thomas.” However, there may be a certain number of persons, for example 125, that carry the title “James R Thomas” and “James Thomas.” The width of the horizontal bar within the histogram may reflect the number of conflicts. In other embodiments, the histograms 320-341 each have the same width, and the width corresponds with the total number of conflicts associated with all of the text in the multi-column table 310.
  • Unlike the width of the histograms 320-341, the widths of each horizontal bar may not have a logarithmic relationship. Rather, the widths of each horizontal bar may have a linear relationship with their respective histogram 320-341. For example, if the number of conflicts is equal to 50% of the total number of occurrences or the total number of conflicts, then the width of a horizontal bar would be half the width of the histogram. One or more indicators, referred to herein as smart ticks, can be displayed underneath or above each histogram 320-341 to aid a user in determining the width of a horizontal bar. In some embodiments, the one or more smart ticks can be evenly spaced apart. For example, two smart ticks can be evenly spaced such that if the width of a horizontal bar lines up with the left-most smart tick, then the total number of conflicts is 33% of the total number of occurrences or the total number of conflicts. Likewise, if the width of the horizontal bar lines up with the right-most smart tick, then the total number of conflicts is 67% of the total number of occurrences or the total number of conflicts.
  • In an embodiment, the horizontal bars can be one of several colors. For example, a horizontal bar could be a first color if the total number of conflicts exceeds a threshold value and a second color if the total number of conflicts does not exceed the threshold value. As illustrated in FIG. 3A, horizontal bar 355 is a first color because the total number of conflicts exceeds the threshold value and horizontal bar 356 is a second color because the total number of conflicts does not exceed the threshold value.
  • In an embodiment, the width of content pane 315 can be reduced in a manner as described above with respect to content pane 120 of FIGS. 1 and 2A-2F. In addition, the text in table 310 can be abbreviated in the same manner as described above with respect to table 110 of FIGS. 1 and 2A-2F. As illustrated in FIG. 3A, cursor 350 can be used to resize the content pane 315. As illustrated in FIG. 3B, in response to the content pane 315 being resized to a reduced width, the table 310 is also reduced in width and the text within the one or more columns of table 310 are abbreviated if appropriate according to the procedures described above. In this example, the first text and second text in any rows having text that is too long to fit in the reduced width contact pane 315 may be selectively reduced using the process discussed above. In particular, the longer text is first reduced until the text widths are equal and then both the first and second text are equally reduced, if further width reduction is necessary.
  • In some embodiments, columns including text are reduced in size before columns including other data, such as the histograms 320-341. For example, the column containing the histograms 320-341 may not be resized until columns containing text can no longer be resized.
  • Example Process Flows
  • FIG. 4 is a flowchart 400 depicting an illustrative method for optimizing display of a multi-column table. Depending on the embodiment, the method of FIG. 4 may be performed by various computing devices, such as devices that execute instructions to generate a graphical user interface. Depending on the embodiment, the method of FIG. 4 may include fewer and/or additional blocks and the blocks may be performed in an order different than illustrated.
  • In block 402, a container of a first container width is displayed. For example, the container could be a table with one or more columns. The table could include first text and second text, where the first text and the second text are separated by a divider (e.g., a forward slash, an icon, whitespace, etc.). The width of the first text, the second text, and the divider can be referred to as the combined text width.
  • In block 404, the container can be resized to a second container width that is smaller than the first container width. For example, a cursor can be used to drag the border or an area around the border of the container to resize the container.
  • In block 406, whether the combined text width is greater than the second container width is determined. The determination can be made immediately after the container is resized.
  • At block 408, the first text and/or the second text is abbreviated if the combined text width is greater than the second container width until the combined text width is less than the second container width. For example, the first text is abbreviated if the first text width is greater than the second text width until the first text width and the second text width are equal. Then, the first text and the second text are both abbreviated (e.g., equally) until the combined text width is less than the second container width. The second text is similarly abbreviated if the second text width is greater than the first text width. If both the first text width and the second text width are equal, then the first text and the second text are both abbreviated (e.g., equally) until the combined text width is less than the second container width.
  • Implementation Mechanisms
  • According to one embodiment, the techniques described herein are implemented by one or more special-purpose computing devices. The special-purpose computing devices may be hard-wired to perform the techniques, or may include digital electronic devices such as one or more application-specific integrated circuits (ASICs) or field programmable gate arrays (FPGAs) that are persistently programmed to perform the techniques, or may include one or more general purpose hardware processors programmed to perform the techniques pursuant to program instructions in firmware, memory, other storage, or a combination. Such special-purpose computing devices may also combine custom hard-wired logic, ASICs, or FPGAs with custom programming to accomplish the techniques. The special-purpose computing devices may be desktop computer systems, server computer systems, portable computer systems, handheld devices, networking devices or any other device or combination of devices that incorporate hard-wired and/or program logic to implement the techniques.
  • Computing device(s) are generally controlled and coordinated by operating system software, such as iOS, Android, Chrome OS, Windows XP, Windows Vista, Windows 7, Windows 8, Windows Server, Windows CE, Unix, Linux, SunOS, Solaris, iOS, Blackberry OS, VxWorks, or other compatible operating systems. In other embodiments, the computing device may be controlled by a proprietary operating system. Conventional operating systems control and schedule computer processes for execution, perform memory management, provide file system, networking, I/O services, and provide a user interface functionality, such as a graphical user interface (“GUI”), among other things.
  • For example, FIG. 5 is a block diagram that illustrates a computer system 500 upon which an embodiment may be implemented. Computer system 500 includes a bus 502 or other communication mechanism for communicating information, and a hardware processor, or multiple processors, 504 coupled with bus 502 for processing information. Hardware processor(s) 504 may be, for example, one or more general purpose microprocessors.
  • Computer system 500 also includes a main memory 506, such as a random access memory (RAM), cache and/or other dynamic storage devices, coupled to bus 502 for storing information and instructions to be executed by processor 504. Main memory 506 also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 504. Such instructions, when stored in storage media accessible to processor 504, render computer system 500 into a special-purpose machine that is customized to perform the operations specified in the instructions.
  • Computer system 500 further includes a read only memory (ROM) 508 or other static storage device coupled to bus 502 for storing static information and instructions for processor 504. A storage device 510, such as a magnetic disk, optical disk, or USB thumb drive (Flash drive), etc., is provided and coupled to bus 502 for storing information and instructions.
  • Computer system 500 may be coupled via bus 502 to a display 512, such as a cathode ray tube (CRT) or LCD display (or touch screen), for displaying information to a computer user. An input device 514, including alphanumeric and other keys, is coupled to bus 502 for communicating information and command selections to processor 504. Another type of user input device is cursor control 516, such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to processor 804 and for controlling cursor movement on display 512. This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allows the device to specify positions in a plane. In some embodiments, the same direction information and command selections as cursor control may be implemented via receiving touches on a touch screen without a cursor.
  • Computing system 500 may include a user interface module to implement a GUI that may be stored in a mass storage device as executable software codes that are executed by the computing device(s). This and other modules may include, by way of example, components, such as software components, object-oriented software components, class components and task components, processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables.
  • In general, the word “module,” as used herein, refers to logic embodied in hardware or firmware, or to a collection of software instructions, possibly having entry and exit points, written in a programming language, such as, for example, Java, Lua, C or C++. A software module may be compiled and linked into an executable program, installed in a dynamic link library, or may be written in an interpreted programming language such as, for example, BASIC, Perl, or Python. It will be appreciated that software modules may be callable from other modules or from themselves, and/or may be invoked in response to detected events or interrupts. Software modules configured for execution on computing devices may be provided on a computer readable medium, such as a compact disc, digital video disc, flash drive, magnetic disc, or any other tangible medium, or as a digital download (and may be originally stored in a compressed or installable format that requires installation, decompression or decryption prior to execution). Such software code may be stored, partially or fully, on a memory device of the executing computing device, for execution by the computing device. Software instructions may be embedded in firmware, such as an EPROM. It will be further appreciated that hardware modules may be comprised of connected logic units, such as gates and flip-flops, and/or may be comprised of programmable units, such as programmable gate arrays or processors. The modules or computing device functionality described herein are preferably implemented as software modules, but may be represented in hardware or firmware. Generally, the modules described herein refer to logical modules that may be combined with other modules or divided into sub-modules despite their physical organization or storage
  • Computer system 500 may implement the techniques described herein using customized hard-wired logic, one or more ASICs or FPGAs, firmware and/or program logic which in combination with the computer system causes or programs computer system 500 to be a special-purpose machine. According to one embodiment, the techniques herein are performed by computer system 500 in response to processor(s) 504 executing one or more sequences of one or more instructions contained in main memory 506. Such instructions may be read into main memory 506 from another storage medium, such as storage device 510. Execution of the sequences of instructions contained in main memory 506 causes processor(s) 504 to perform the process steps described herein. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions.
  • The term “non-transitory media,” and similar terms, as used herein refers to any media that store data and/or instructions that cause a machine to operate in a specific fashion. Such non-transitory media may comprise non-volatile media and/or volatile media. Non-volatile media includes, for example, optical or magnetic disks, such as storage device 510. Volatile media includes dynamic memory, such as main memory 506. Common forms of non-transitory media include, for example, a floppy disk, a flexible disk, hard disk, solid state drive, magnetic tape, or any other magnetic data storage medium, a CD-ROM, any other optical data storage medium, any physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, NVRAM, any other memory chip or cartridge, and networked versions of the same.
  • Non-transitory media is distinct from but may be used in conjunction with transmission media. Transmission media participates in transferring information between nontransitory media. For example, transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise bus 802. Transmission media can also take the form of acoustic or light waves, such as those generated during radio-wave and infra-red data communications.
  • Various forms of media may be involved in carrying one or more sequences of one or more instructions to processor 804 for execution. For example, the instructions may initially be carried on a magnetic disk or solid state drive of a remote computer. The remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem local to computer system 500 can receive the data on the telephone line and use an infra-red transmitter to convert the data to an infra-red signal. An infra-red detector can receive the data carried in the infra-red signal and appropriate circuitry can place the data on bus 502. Bus 502 carries the data to main memory 506, from which processor 504 retrieves and executes the instructions. The instructions received by main memory 506 may retrieve and execute the instructions. The instructions received by main memory 506 may optionally be stored on storage device 510 either before or after execution by processor 504.
  • Computer system 500 also includes a communication interface 518 coupled to bus 502. Communication interface 518 provides a two-way data communication coupling to a network link 520 that is connected to a local network 522. For example, communication interface 518 may be an integrated services digital network (ISDN) card, cable modem, satellite modem, or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, communication interface 518 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN (or WAN component to communicated with a WAN). Wireless links may also be implemented. In any such implementation, communication interface 518 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
  • Network link 520 typically provides data communication through one or more networks to other data devices. For example, network link 520 may provide a connection through local network 522 to a host computer 524 or to data equipment operated by an Internet Service Provider (ISP) 526. ISP 526 in turn provides data communication services through the world wide packet data communication network now commonly referred to as the “Internet” 528. Local network 522 and Internet 528 both use electrical, electromagnetic or optical signals that carry digital data streams. The signals through the various networks and the signals on network link 520 and through communication interface 518, which carry the digital data to and from computer system 500, are example forms of transmission media.
  • Computer system 500 can send messages and receive data, including program code, through the network(s), network link 520 and communication interface 518. In the Internet example, a server 530 might transmit a requested code for an application program through Internet 528, ISP 526, local network 522 and communication interface 518.
  • The received code may be executed by processor 504 as it is received, and/or stored in storage device 510, or other non-volatile storage for later execution.
  • Terminology
  • Each of the processes, methods, and algorithms described in the preceding sections may be embodied in, and fully or partially automated by, code modules executed by one or more computer systems or computer processors comprising computer hardware. The processes and algorithms may be implemented partially or wholly in application-specific circuitry.
  • The various features and processes described above may be used independently of one another, or may be combined in various ways. All possible combinations and subcombinations are intended to fall within the scope of this disclosure. In addition, certain method or process blocks may be omitted in some implementations. The methods and processes described herein are also not limited to any particular sequence, and the blocks or states relating thereto can be performed in other sequences that are appropriate. For example, described blocks or states may be performed in an order other than that specifically disclosed, or multiple blocks or states may be combined in a single block or state. The example blocks or states may be performed in serial, in parallel, or in some other manner. Blocks or states may be added to or removed from the disclosed example embodiments. The example systems and components described herein may be configured differently than described. For example, elements may be added to, removed from, or rearranged compared to the disclosed example embodiments.
  • Conditional language, such as, among others, “can,” “could,” “might,” or “may,” unless specifically stated otherwise, or otherwise understood within the context as used, is generally intended to convey that certain embodiments include, while other embodiments do not include, certain features, elements and/or steps. Thus, such conditional language is not generally intended to imply that features, elements and/or steps are in any way required for one or more embodiments or that one or more embodiments necessarily include logic for deciding, with or without user input or prompting, whether these features, elements and/or steps are included or are to be performed in any particular embodiment.
  • Any process descriptions, elements, or blocks in the flow diagrams described herein and/or depicted in the attached figures should be understood as potentially representing modules, segments, or portions of code which include one or more executable instructions for implementing specific logical functions or steps in the process. Alternate implementations are included within the scope of the embodiments described herein in which elements or functions may be deleted, executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those skilled in the art.
  • It should be emphasized that many variations and modifications may be made to the above-described embodiments, the elements of which are to be understood as being among other acceptable examples. All such modifications and variations are intended to be included herein within the scope of this disclosure. The foregoing description details certain embodiments of the invention. It will be appreciated, however, that no matter how detailed the foregoing appears in text, the invention can be practiced in many ways. As is also stated above, it should be noted that the use of particular terminology when describing certain features or aspects of the invention should not be taken to imply that the terminology is being re-defined herein to be restricted to including any specific characteristics of the features or aspects of the invention with which that terminology is associated. The scope of the invention should therefore be construed in accordance with the appended claims and any equivalents thereof.

Claims (21)

1. (canceled)
2. A method of optimizing display of a multi-column table, the method comprising:
displaying, within a resizable window having a window width, on a display of a computing system having one or more hardware processors, a container of a first container width, wherein the container comprises first text and second text, and wherein a combined text width comprising a first width of the first text, a second width of the second text, and a divider width of an icon, whitespace, or text between the first text and the second text is less than the first container width;
receiving user input requesting resizing of the resizable window to, at least in part, reduce the window width of the resizable window to a second window width;
calculating a second container width that is smaller than the first container width, the second container width corresponding to a difference between the window width and the second window width;
determining, by the computing system, whether the combined text width is greater than the second container width;
in response to determining, by the computing system, that the combined text width is greater than the second container width:
in response to determining, by the computing system, that the first text width is greater than the second text width, truncating the first text to eliminate one or more characters from the first text until the combined text width is less than the second container width or the first text width is equal to the second text width; and
in response to determining, by the computing system, that the second text width is greater than the first text width, truncating the second text to eliminate one or more characters from the second text until the combined text width is less than the second container width or the first text width is equal to the second text width.
3. The method of claim 2, further comprising, in response to determining, by the computing system, that the combined text width is greater than the second container width: in response to determining, by the computing system, that the first text width is equal to the second text width, truncating the first text to eliminate one or more characters from the first text and truncating the second text to eliminate one or more characters from the second text until the combined text width is less than the second container width.
4. The method of claim 2, wherein truncating the first text and truncating the second text comprises truncating the first text and the second text equally.
5. The method of claim 2, wherein the first text width is a pixel width of the first text as displayed on the computing system.
6. The method of claim 2, further comprising:
in response to receiving user input requesting resizing of the resizable window:
resizing the container such that a ratio of the second container width to the first container width is the same as a ratio of the second window width to the window width.
7. The method of claim 2, further comprising displaying, on the display of the computing system, concurrently with the first text and the second text, a horizontal histogram.
8. The method of claim 7, wherein the horizontal histogram comprises a horizontal bar, and wherein a width of the horizontal bar corresponds with a number of conflicts between occurrences associated with the first text and occurrences associated with the second text.
9. The method of claim 8, wherein the horizontal histogram further comprises at least one smart tick, wherein the at least one smart tick are evenly spaced along a width of the horizontal histogram.
10. The method of claim 8, wherein the horizontal bar is a first color if a number of occurrences associated with the first text is greater than a threshold value, and wherein the horizontal bar is a second color if the number of occurrences associated with the first text is less than the threshold value.
11. The method of claim 7, wherein the combined text width further comprises a width of the horizontal histogram, the method further comprising:
in response to determining that the combined text width is greater than the second container width:
in response to determining that the first text width is greater than the second text width, truncating the first text until the combined text width is less than the second container width or the first text width is equal to the second text width;
in response to determining that the second text width is greater than the first text width, truncating the second text until the combined text width is less than the second container width or the first text width is equal to the second text width; and
in response to determining that the first text width is equal to the second text width, truncating the first text and the second text equally until the combined text width is less than the second container width.
12. A computing system configured to optimize display of a multi-column table, the computer system comprising:
a network interface that is coupled to a data network for receiving and transmitting one or more packet flows;
a display;
a computer processor; and
a computer readable storage medium storing program instructions configured for execution by the computer processor in order to cause the computing system to:
display, within a resizable window having a window width, on the display, a container of a first container width, wherein the container comprises a first column and a second column, and wherein a combined width comprising a first width of the first column and a second width of the second column is less than the first container width;
receive user input requesting resizing of the resizable window to, at least in part, reduce the window width of the resizable window to a second window width;
calculate a second container width that is smaller than the first container width, the second container width corresponding to a difference between the window width and the second window width;
determine whether the combined width is greater than the second container width;
in response to the determination that the combined width is greater than the second container width:
in response to a determination that the first width is greater than the second width, truncate the first column to eliminate one or more characters from the first text until the combined width is less than the second container width or the first width is equal to the second width;
in response to a determination that the second width is greater than the first width, truncate the second column to eliminate one or more characters from the second text until the combined width is less than the second container width or the first width is equal to the second width; and
13. The computing system of claim 12, wherein the one or more stored program instructions further cause the processor to, in response to the determination that the combined width is greater than the second container width: in response to a determination that the first width is equal to the second width, truncate the first column to eliminate one or more characters from the first text and truncate the second column to eliminate one or more characters from the second text until the combined width is less than the second container width.
14. The computing system of claim 12, wherein the one or more stored program instructions further cause the processor to truncate the first text and the second text equally in response to the determination that the first width is equal to the second width.
15. The computing system of claim 12, wherein the one or more stored program instructions further cause the processor to:
in response to receiving user input requesting resizing of the resizable window:
resize the container such that a ratio of the second container width to the first container width is the same as a ratio of the second window width to the window width.
16. The computing system of claim 12, wherein the one or more stored program instructions further cause the processor to display, on the display, concurrently with the first text and the second text, a horizontal histogram.
17. A non-transitory computer-readable medium comprising one or more program instructions recorded thereon, the instructions configured for execution by a computing system comprising one or more hardware processors in order to cause the computing system to:
display, within a resizable window having a window width, on a display of the computing system, a container of a first container width, wherein the container comprises a first column and a second column, and wherein a combined width comprising a first width of the first column and a second width of the second column is less than the first container width;
receive user input requesting resizing of the resizable window to, at least in part, reduce the window width of the resizable window to a second window width;
calculate a second container width that is smaller than the first container width, the second container width corresponding to a difference between the window width and the second window width;
determine whether the combined width is greater than the second container width;
in response to the determination that the combined width is greater than the second container width:
in response to a determination that the first width is greater than the second width, truncate the first column to eliminate one or more characters from the first text until the combined width is less than the second container width or the first width is equal to the second width; and
in response to a determination that the second width is greater than the first width, truncate the second column to eliminate one or more characters from the second text until the combined width is less than the second container width or the first width is equal to the second width.
18. The non-transitory computer-readable medium of claim 17, wherein the instructions are further configured to cause the computing system to, in response to the determination that the combined width is greater than the second container width: in response to a determination that the first width is equal to the second width, truncate the first column to eliminate one or more characters from the first text and truncate the second column to eliminate one or more characters from the second text until the combined width is less than the second container width.
19. The non-transitory computer-readable medium of claim 17, wherein the instructions are further configured to cause the computing system to truncate the first text and the second text equally in response to the determination that the first width is equal to the second width.
20. The non-transitory computer-readable medium of claim 17, wherein the instructions are further configured to cause the computing system to:
in response to receiving user input requesting resizing of the resizable window:
resize the container such that a ratio of the second container width to the first container width is the same as a ratio of the second window width to the window width.
21. The non-transitory computer-readable medium of claim 17, wherein the instructions are further configured to cause the computing system to display, on the display of the computing system, concurrently with the first text and the second text, a horizontal histogram.
US14/479,160 2013-11-04 2014-09-05 Space-optimized display of multi-column tables Abandoned US20150135052A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US201361899803P true 2013-11-04 2013-11-04
US14/137,120 US8832594B1 (en) 2013-11-04 2013-12-20 Space-optimized display of multi-column tables with selective text truncation based on a combined text width
US14/479,160 US20150135052A1 (en) 2013-11-04 2014-09-05 Space-optimized display of multi-column tables

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US14/479,160 US20150135052A1 (en) 2013-11-04 2014-09-05 Space-optimized display of multi-column tables

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US14/137,120 Continuation US8832594B1 (en) 2013-11-04 2013-12-20 Space-optimized display of multi-column tables with selective text truncation based on a combined text width

Publications (1)

Publication Number Publication Date
US20150135052A1 true US20150135052A1 (en) 2015-05-14

Family

ID=51455394

Family Applications (2)

Application Number Title Priority Date Filing Date
US14/137,120 Active US8832594B1 (en) 2013-11-04 2013-12-20 Space-optimized display of multi-column tables with selective text truncation based on a combined text width
US14/479,160 Abandoned US20150135052A1 (en) 2013-11-04 2014-09-05 Space-optimized display of multi-column tables

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US14/137,120 Active US8832594B1 (en) 2013-11-04 2013-12-20 Space-optimized display of multi-column tables with selective text truncation based on a combined text width

Country Status (4)

Country Link
US (2) US8832594B1 (en)
EP (1) EP2869211B1 (en)
AU (1) AU2014253499B2 (en)
CA (1) CA2868332A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9400776B1 (en) * 2015-03-09 2016-07-26 Vinyl Development LLC Adaptive column selection
WO2018144149A1 (en) * 2016-12-22 2018-08-09 Metricstream, Inc. Graphically displaying data having complex relationships

Families Citing this family (110)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8930331B2 (en) 2007-02-21 2015-01-06 Palantir Technologies Providing unique views of data based on changes or rules
US9383911B2 (en) 2008-09-15 2016-07-05 Palantir Technologies, Inc. Modal-less interface enhancements
US8799240B2 (en) 2011-06-23 2014-08-05 Palantir Technologies, Inc. System and method for investigating large amounts of data
US8732574B2 (en) 2011-08-25 2014-05-20 Palantir Technologies, Inc. System and method for parameterizing documents for automatic workflow generation
US9501849B2 (en) * 2012-05-11 2016-11-22 Vmware, Inc. Multi-dimensional visualization tool for browsing and troubleshooting at scale
US9348677B2 (en) 2012-10-22 2016-05-24 Palantir Technologies Inc. System and method for batch evaluation programs
US9123086B1 (en) 2013-01-31 2015-09-01 Palantir Technologies, Inc. Automatically generating event objects from images
US10140664B2 (en) 2013-03-14 2018-11-27 Palantir Technologies Inc. Resolving similar entities from a transaction database
US10037314B2 (en) 2013-03-14 2018-07-31 Palantir Technologies, Inc. Mobile reports
US8924388B2 (en) 2013-03-15 2014-12-30 Palantir Technologies Inc. Computer-implemented systems and methods for comparing and associating objects
US8937619B2 (en) 2013-03-15 2015-01-20 Palantir Technologies Inc. Generating an object time series from data objects
US8868486B2 (en) 2013-03-15 2014-10-21 Palantir Technologies Inc. Time-sensitive cube
US8788405B1 (en) 2013-03-15 2014-07-22 Palantir Technologies, Inc. Generating data clusters with customizable analysis strategies
US9965937B2 (en) 2013-03-15 2018-05-08 Palantir Technologies Inc. External malware data item clustering and analysis
US8917274B2 (en) 2013-03-15 2014-12-23 Palantir Technologies Inc. Event matrix based on integrated data
US10275778B1 (en) 2013-03-15 2019-04-30 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive investigation based on automatic malfeasance clustering of related data in various data structures
US8799799B1 (en) 2013-05-07 2014-08-05 Palantir Technologies Inc. Interactive geospatial map
US9335897B2 (en) 2013-08-08 2016-05-10 Palantir Technologies Inc. Long click display of a context menu
US9223773B2 (en) 2013-08-08 2015-12-29 Palatir Technologies Inc. Template system for custom document generation
US8713467B1 (en) 2013-08-09 2014-04-29 Palantir Technologies, Inc. Context-sensitive views
US9785317B2 (en) 2013-09-24 2017-10-10 Palantir Technologies Inc. Presentation and analysis of user interaction data
US8938686B1 (en) 2013-10-03 2015-01-20 Palantir Technologies Inc. Systems and methods for analyzing performance of an entity
US8812960B1 (en) 2013-10-07 2014-08-19 Palantir Technologies Inc. Cohort-based presentation of user interaction data
US8924872B1 (en) 2013-10-18 2014-12-30 Palantir Technologies Inc. Overview user interface of emergency call data of a law enforcement agency
US9116975B2 (en) 2013-10-18 2015-08-25 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive simultaneous querying of multiple data stores
US9021384B1 (en) 2013-11-04 2015-04-28 Palantir Technologies Inc. Interactive vehicle information map
US8868537B1 (en) 2013-11-11 2014-10-21 Palantir Technologies, Inc. Simple web search
US9105000B1 (en) 2013-12-10 2015-08-11 Palantir Technologies Inc. Aggregating data from a plurality of data sources
US10025834B2 (en) 2013-12-16 2018-07-17 Palantir Technologies Inc. Methods and systems for analyzing entity performance
US9552615B2 (en) 2013-12-20 2017-01-24 Palantir Technologies Inc. Automated database analysis to detect malfeasance
US10356032B2 (en) 2013-12-26 2019-07-16 Palantir Technologies Inc. System and method for detecting confidential information emails
US9043696B1 (en) 2014-01-03 2015-05-26 Palantir Technologies Inc. Systems and methods for visual definition of data associations
US8832832B1 (en) 2014-01-03 2014-09-09 Palantir Technologies Inc. IP reputation
US9483162B2 (en) 2014-02-20 2016-11-01 Palantir Technologies Inc. Relationship visualizations
US9009827B1 (en) 2014-02-20 2015-04-14 Palantir Technologies Inc. Security sharing system
US8924429B1 (en) 2014-03-18 2014-12-30 Palantir Technologies Inc. Determining and extracting changed data from a data source
US9857958B2 (en) 2014-04-28 2018-01-02 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive access of, investigation of, and analysis of data objects stored in one or more databases
US9009171B1 (en) 2014-05-02 2015-04-14 Palantir Technologies Inc. Systems and methods for active column filtering
US9129219B1 (en) 2014-06-30 2015-09-08 Palantir Technologies, Inc. Crime risk forecasting
US9619557B2 (en) 2014-06-30 2017-04-11 Palantir Technologies, Inc. Systems and methods for key phrase characterization of documents
US9535974B1 (en) 2014-06-30 2017-01-03 Palantir Technologies Inc. Systems and methods for identifying key phrase clusters within documents
US9256664B2 (en) 2014-07-03 2016-02-09 Palantir Technologies Inc. System and method for news events detection and visualization
US9021260B1 (en) 2014-07-03 2015-04-28 Palantir Technologies Inc. Malware data item analysis
US9785773B2 (en) 2014-07-03 2017-10-10 Palantir Technologies Inc. Malware data item analysis
US9202249B1 (en) 2014-07-03 2015-12-01 Palantir Technologies Inc. Data item clustering and analysis
US9454281B2 (en) 2014-09-03 2016-09-27 Palantir Technologies Inc. System for providing dynamic linked panels in user interface
US9390086B2 (en) 2014-09-11 2016-07-12 Palantir Technologies Inc. Classification system with methodology for efficient verification
US9767172B2 (en) 2014-10-03 2017-09-19 Palantir Technologies Inc. Data aggregation and analysis system
US9501851B2 (en) 2014-10-03 2016-11-22 Palantir Technologies Inc. Time-series analysis system
US9785328B2 (en) 2014-10-06 2017-10-10 Palantir Technologies Inc. Presentation of multivariate data on a graphical user interface of a computing system
US9984133B2 (en) 2014-10-16 2018-05-29 Palantir Technologies Inc. Schematic and database linking system
US9229952B1 (en) 2014-11-05 2016-01-05 Palantir Technologies, Inc. History preserving data pipeline system and method
US9043894B1 (en) 2014-11-06 2015-05-26 Palantir Technologies Inc. Malicious software detection in a computing system
US20160155098A1 (en) 2014-12-01 2016-06-02 Uptake, LLC Historical Health Metrics
US10254751B2 (en) 2015-06-05 2019-04-09 Uptake Technologies, Inc. Local analytics at an asset
US10176279B2 (en) 2015-06-05 2019-01-08 Uptake Technologies, Inc. Dynamic execution of predictive models and workflows
US9483546B2 (en) 2014-12-15 2016-11-01 Palantir Technologies Inc. System and method for associating related records to common entities across multiple lists
US9348920B1 (en) 2014-12-22 2016-05-24 Palantir Technologies Inc. Concept indexing among database of documents using machine learning techniques
US9367872B1 (en) 2014-12-22 2016-06-14 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive investigation of bad actor behavior based on automatic clustering of related data in various data structures
US10248630B2 (en) * 2014-12-22 2019-04-02 Microsoft Technology Licensing, Llc Dynamic adjustment of select elements of a document
US10362133B1 (en) 2014-12-22 2019-07-23 Palantir Technologies Inc. Communication data processing architecture
US20160179756A1 (en) * 2014-12-22 2016-06-23 Microsoft Technology Licensing, Llc. Dynamic application of a rendering scale factor
US9817563B1 (en) 2014-12-29 2017-11-14 Palantir Technologies Inc. System and method of generating data points from one or more data stores of data items for chart creation and manipulation
US9335911B1 (en) 2014-12-29 2016-05-10 Palantir Technologies Inc. Interactive user interface for dynamic data analysis exploration and query processing
US9870205B1 (en) 2014-12-29 2018-01-16 Palantir Technologies Inc. Storing logical units of program code generated using a dynamic programming notebook user interface
US10372879B2 (en) 2014-12-31 2019-08-06 Palantir Technologies Inc. Medical claims lead summary report generation
US10387834B2 (en) 2015-01-21 2019-08-20 Palantir Technologies Inc. Systems and methods for accessing and storing snapshots of a remote application in a document
US9727560B2 (en) 2015-02-25 2017-08-08 Palantir Technologies Inc. Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags
US9891808B2 (en) 2015-03-16 2018-02-13 Palantir Technologies Inc. Interactive user interfaces for location-based data analysis
US9886467B2 (en) 2015-03-19 2018-02-06 Plantir Technologies Inc. System and method for comparing and visualizing data entities and data entity series
US10103953B1 (en) 2015-05-12 2018-10-16 Palantir Technologies Inc. Methods and systems for analyzing entity performance
US10303685B2 (en) 2015-06-08 2019-05-28 International Business Machines Corporation Data table performance optimization
US9392008B1 (en) 2015-07-23 2016-07-12 Palantir Technologies Inc. Systems and methods for identifying information related to payment card breaches
US9454785B1 (en) 2015-07-30 2016-09-27 Palantir Technologies Inc. Systems and user interfaces for holistic, data-driven investigation of bad actor behavior based on clustering and scoring of related data
US9996595B2 (en) 2015-08-03 2018-06-12 Palantir Technologies, Inc. Providing full data provenance visualization for versioned datasets
US10102369B2 (en) 2015-08-19 2018-10-16 Palantir Technologies Inc. Checkout system executable code monitoring, and user account compromise determination system
US9671776B1 (en) 2015-08-20 2017-06-06 Palantir Technologies Inc. Quantifying, tracking, and anticipating risk at a manufacturing facility, taking deviation type and staffing conditions into account
US9485265B1 (en) 2015-08-28 2016-11-01 Palantir Technologies Inc. Malicious activity detection system capable of efficiently processing data accessed from databases and generating alerts for display in interactive user interfaces
US9984428B2 (en) 2015-09-04 2018-05-29 Palantir Technologies Inc. Systems and methods for structuring data from unstructured electronic data files
US9639580B1 (en) 2015-09-04 2017-05-02 Palantir Technologies, Inc. Computer-implemented systems and methods for data management and visualization
US9576015B1 (en) 2015-09-09 2017-02-21 Palantir Technologies, Inc. Domain-specific language for dataset transformations
CA2998502A1 (en) 2015-09-17 2017-03-23 Uptake Technologies, Inc. Computer systems and methods for sharing asset-related information between data platforms over a network
US10296617B1 (en) 2015-10-05 2019-05-21 Palantir Technologies Inc. Searches of highly structured data
US9424669B1 (en) 2015-10-21 2016-08-23 Palantir Technologies Inc. Generating graphical representations of event participation flow
US10223429B2 (en) 2015-12-01 2019-03-05 Palantir Technologies Inc. Entity data attribution using disparate data sets
US9514414B1 (en) 2015-12-11 2016-12-06 Palantir Technologies Inc. Systems and methods for identifying and categorizing electronic documents through machine learning
US9760556B1 (en) 2015-12-11 2017-09-12 Palantir Technologies Inc. Systems and methods for annotating and linking electronic documents
US10114884B1 (en) 2015-12-16 2018-10-30 Palantir Technologies Inc. Systems and methods for attribute analysis of one or more databases
US10373099B1 (en) 2015-12-18 2019-08-06 Palantir Technologies Inc. Misalignment detection system for efficiently processing database-stored data and automatically generating misalignment information for display in interactive user interfaces
US9823818B1 (en) 2015-12-29 2017-11-21 Palantir Technologies Inc. Systems and interactive user interfaces for automatic generation of temporal representation of data objects
US9792020B1 (en) 2015-12-30 2017-10-17 Palantir Technologies Inc. Systems for collecting, aggregating, and storing data, generating interactive user interfaces for analyzing data, and generating alerts based upon collected data
US9652139B1 (en) 2016-04-06 2017-05-16 Palantir Technologies Inc. Graphical representation of an output
US10068199B1 (en) 2016-05-13 2018-09-04 Palantir Technologies Inc. System to catalogue tracking data
US20170353353A1 (en) 2016-06-03 2017-12-07 Uptake Technologies, Inc. Provisioning a Local Analytics Device
US10007674B2 (en) 2016-06-13 2018-06-26 Palantir Technologies Inc. Data revision control in large-scale data analytic systems
US10324609B2 (en) 2016-07-21 2019-06-18 Palantir Technologies Inc. System for providing dynamic linked panels in user interface
US10210037B2 (en) 2016-08-25 2019-02-19 Uptake Technologies, Inc. Interface tool for asset fault analysis
US9842338B1 (en) 2016-11-21 2017-12-12 Palantir Technologies Inc. System to identify vulnerable card readers
US10318630B1 (en) 2016-11-21 2019-06-11 Palantir Technologies Inc. Analysis of large bodies of textual data
US9886525B1 (en) 2016-12-16 2018-02-06 Palantir Technologies Inc. Data item aggregate probability analysis system
GB201621434D0 (en) 2016-12-16 2017-02-01 Palantir Technologies Inc Processing sensor logs
US10228925B2 (en) 2016-12-19 2019-03-12 Uptake Technologies, Inc. Systems, devices, and methods for deploying one or more artifacts to a deployment environment
US10249033B1 (en) 2016-12-20 2019-04-02 Palantir Technologies Inc. User interface for managing defects
US10360238B1 (en) 2016-12-22 2019-07-23 Palantir Technologies Inc. Database systems and user interfaces for interactive data association, analysis, and presentation
US10133621B1 (en) 2017-01-18 2018-11-20 Palantir Technologies Inc. Data analysis system to facilitate investigative process
US10133783B2 (en) 2017-04-11 2018-11-20 Palantir Technologies Inc. Systems and methods for constraint driven database searching
US10255526B2 (en) 2017-06-09 2019-04-09 Uptake Technologies, Inc. Computer system and method for classifying temporal patterns of change in images of an area
US10403011B1 (en) 2017-07-18 2019-09-03 Palantir Technologies Inc. Passing system with an interactive user interface
US10379982B2 (en) 2017-10-31 2019-08-13 Uptake Technologies, Inc. Computer system and method for performing a virtual load test
US10169135B1 (en) 2018-03-02 2019-01-01 Uptake Technologies, Inc. Computer system and method of detecting manufacturing network anomalies

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6279018B1 (en) * 1998-12-21 2001-08-21 Kudrollis Software Inventions Pvt. Ltd. Abbreviating and compacting text to cope with display space constraint in computer software
US20010021936A1 (en) * 1998-06-02 2001-09-13 Randal Lee Bertram Method and system for reducing the horizontal space required for displaying a column containing text data
US20030028560A1 (en) * 2001-06-26 2003-02-06 Kudrollis Software Inventions Pvt. Ltd. Compacting an information array display to cope with two dimensional display space constraint
US6642945B1 (en) * 2000-05-04 2003-11-04 Microsoft Corporation Method and system for optimizing a visual display for handheld computer systems
US6978419B1 (en) * 2000-11-15 2005-12-20 Justsystem Corporation Method and apparatus for efficient identification of duplicate and near-duplicate documents and text spans using high-discriminability text fragments
US20060045470A1 (en) * 2004-08-25 2006-03-02 Thomas Poslinski Progess bar with multiple portions
US20060074866A1 (en) * 2004-09-27 2006-04-06 Microsoft Corporation One click conditional formatting method and system for software programs
US20070013665A1 (en) * 2003-10-24 2007-01-18 Asko Vetelainen Method for shifting a shortcut in an electronic device, a display unit of the device, and an electronic device
US20070101252A1 (en) * 2005-10-27 2007-05-03 Microsoft Corporation Variable formatting of cells
US20070174760A1 (en) * 2006-01-23 2007-07-26 Microsoft Corporation Multiple conditional formatting
US20080276167A1 (en) * 2007-05-03 2008-11-06 Oliver Michael Device And Method For Generating A Text Object
US20090164934A1 (en) * 2007-12-21 2009-06-25 Sukadev Bhattiprolu Method of displaying tab titles
US20090287470A1 (en) * 2008-05-16 2009-11-19 Research In Motion Limited Intelligent elision
US7694233B1 (en) * 2004-04-30 2010-04-06 Apple Inc. User interface presentation of information in reconfigured or overlapping containers
US7770100B2 (en) * 2006-02-27 2010-08-03 Microsoft Corporation Dynamic thresholds for conditional formats
US20110107196A1 (en) * 2009-10-30 2011-05-05 Synopsys, Inc. Technique for dynamically sizing columns in a table
US20130097482A1 (en) * 2011-10-13 2013-04-18 Microsoft Corporation Search result entry truncation using pixel-based approximation
US20130262527A1 (en) * 2012-04-02 2013-10-03 Nicolas M. Hunter Smart progress indicator

Family Cites Families (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5870559A (en) 1996-10-15 1999-02-09 Mercury Interactive Software system and associated methods for facilitating the analysis and management of web sites
US5974572A (en) 1996-10-15 1999-10-26 Mercury Interactive Corporation Software system and methods for generating a load test using a server access log
US9053222B2 (en) 2002-05-17 2015-06-09 Lawrence A. Lynn Patient safety processor
JP3636272B2 (en) 1998-02-09 2005-04-06 富士通株式会社 Icon display method, apparatus, and recording medium
US6161098A (en) 1998-09-14 2000-12-12 Folio (Fn), Inc. Method and apparatus for enabling small investors with a portfolio of securities to manage taxable events within the portfolio
US6232971B1 (en) 1998-09-23 2001-05-15 International Business Machines Corporation Variable modality child windows
US6369835B1 (en) 1999-05-18 2002-04-09 Microsoft Corporation Method and system for generating a movie file from a slide show presentation
US6714936B1 (en) 1999-05-25 2004-03-30 Nevin, Iii Rocky Harry W. Method and apparatus for displaying data stored in linked nodes
US7373592B2 (en) 1999-07-30 2008-05-13 Microsoft Corporation Modeless child windows for application programs
US20020174201A1 (en) 1999-09-30 2002-11-21 Ramer Jon E. Dynamic configuration of context-sensitive personal sites and membership channels
US7716077B1 (en) 1999-11-22 2010-05-11 Accenture Global Services Gmbh Scheduling and planning maintenance and service in a network-based supply chain environment
US7194680B1 (en) 1999-12-07 2007-03-20 Adobe Systems Incorporated Formatting content by example
US6839745B1 (en) 2000-07-19 2005-01-04 Verizon Corporate Services Group Inc. System and method for generating reports in a telecommunication system
US7278105B1 (en) 2000-08-21 2007-10-02 Vignette Corporation Visualization and analysis of user clickpaths
US7043702B2 (en) 2001-03-15 2006-05-09 Xerox Corporation Method for visualizing user path through a web site and a path's associated information scent
US9256356B2 (en) 2001-03-29 2016-02-09 International Business Machines Corporation Method and system for providing feedback for docking a content pane in a host window
US6742003B2 (en) 2001-04-30 2004-05-25 Microsoft Corporation Apparatus and accompanying methods for visualizing clusters of data and hierarchical cluster classifications
CN1509433A (en) 2001-05-11 2004-06-30 计算机联合思想公司 Method and system for transforming legacy software application into modern object-oriented system
US20070203771A1 (en) 2001-12-17 2007-08-30 Caballero Richard J System and method for processing complex orders
US7139800B2 (en) 2002-01-16 2006-11-21 Xerox Corporation User interface for a message-based system having embedded information management capabilities
US7454466B2 (en) 2002-01-16 2008-11-18 Xerox Corporation Method and system for flexible workflow management
US7162475B2 (en) 2002-04-17 2007-01-09 Ackerman David M Method for user verification and authentication and multimedia processing for interactive database management and method for viewing the multimedia
US7171427B2 (en) 2002-04-26 2007-01-30 Oracle International Corporation Methods of navigating a cube that is implemented as a relational object
US7703021B1 (en) 2002-05-24 2010-04-20 Sparta Systems, Inc. Defining user access in highly-configurable systems
US9607092B2 (en) 2003-05-20 2017-03-28 Excalibur Ip, Llc Mapping method and system
US20050125715A1 (en) 2003-12-04 2005-06-09 Fabrizio Di Franco Method of saving data in a graphical user interface
US7818658B2 (en) 2003-12-09 2010-10-19 Yi-Chih Chen Multimedia presentation system
US7917376B2 (en) 2003-12-29 2011-03-29 Montefiore Medical Center System and method for monitoring patient care
US20050180330A1 (en) 2004-02-17 2005-08-18 Touchgraph Llc Method of animating transitions and stabilizing node motion during dynamic graph navigation
US7617232B2 (en) 2004-09-02 2009-11-10 Microsoft Corporation Centralized terminology and glossary development
US7284198B2 (en) 2004-10-07 2007-10-16 International Business Machines Corporation Method and system for document draft reminder based on inactivity
US20060129746A1 (en) 2004-12-14 2006-06-15 Ithink, Inc. Method and graphic interface for storing, moving, sending or printing electronic data to two or more locations, in two or more formats with a single save function
US7525422B2 (en) 2005-04-14 2009-04-28 Verizon Business Global Llc Method and system for providing alarm reporting in a managed network services environment
US7426654B2 (en) 2005-04-14 2008-09-16 Verizon Business Global Llc Method and system for providing customer controlled notifications in a managed network services system
US7958120B2 (en) 2005-05-10 2011-06-07 Netseer, Inc. Method and apparatus for distributed community finding
US8341259B2 (en) 2005-06-06 2012-12-25 Adobe Systems Incorporated ASP for web analytics including a real-time segmentation workbench
US7716226B2 (en) 2005-09-27 2010-05-11 Patentratings, Llc Method and system for probabilistically quantifying and visualizing relevance between two or more citationally or contextually related data objects
US7933897B2 (en) 2005-10-12 2011-04-26 Google Inc. Entity display priority in a distributed geographic information system
US8290943B2 (en) 2006-07-14 2012-10-16 Raytheon Company Geographical information display system and method
US20080077597A1 (en) 2006-08-24 2008-03-27 Lance Butler Systems and methods for photograph mapping
US8271429B2 (en) 2006-09-11 2012-09-18 Wiredset Llc System and method for collecting and processing data
US8054756B2 (en) 2006-09-18 2011-11-08 Yahoo! Inc. Path discovery and analytics for network data
US7792868B2 (en) 2006-11-10 2010-09-07 Microsoft Corporation Data object linking and browsing tool
JP5624881B2 (en) 2007-04-17 2014-11-12 イー・エム・デイー・ミリポア・コーポレイシヨン Graphic user interface for analyzing and comparing position-specific multi-parameter data sets
US20090132953A1 (en) 2007-11-16 2009-05-21 Iac Search & Media, Inc. User interface and method in local search system with vertical search results and an interactive map
US8230333B2 (en) 2007-12-26 2012-07-24 Vistracks, Inc. Analysis of time-based geospatial mashups using AD HOC visual queries
KR100915295B1 (en) 2008-01-22 2009-09-03 성균관대학교산학협력단 System and method for search service having a function of automatic classification of search results
WO2009115921A2 (en) 2008-02-22 2009-09-24 Ipath Technologies Private Limited Techniques for enterprise resource mobilization
US9383911B2 (en) 2008-09-15 2016-07-05 Palantir Technologies, Inc. Modal-less interface enhancements
US8554579B2 (en) 2008-10-13 2013-10-08 Fht, Inc. Management, reporting and benchmarking of medication preparation
US8447722B1 (en) 2009-03-25 2013-05-21 Mcafee, Inc. System and method for data mining and security policy management
IL197961D0 (en) 2009-04-05 2009-12-24 Guy Shaked Methods for effective processing of time series
US8719249B2 (en) 2009-05-12 2014-05-06 Microsoft Corporation Query classification
US8560548B2 (en) 2009-08-19 2013-10-15 International Business Machines Corporation System, method, and apparatus for multidimensional exploration of content items in a content store
US8334773B2 (en) 2009-08-28 2012-12-18 Deal Magic, Inc. Asset monitoring and tracking system
US8756489B2 (en) 2009-09-17 2014-06-17 Adobe Systems Incorporated Method and system for dynamic assembly of form fragments
US8577911B1 (en) 2010-03-23 2013-11-05 Google Inc. Presenting search term refinements
US20110289397A1 (en) * 2010-05-19 2011-11-24 Mauricio Eastmond Displaying Table Data in a Limited Display Area
US8489641B1 (en) 2010-07-08 2013-07-16 Google Inc. Displaying layers of search results on a map
US20120066166A1 (en) 2010-09-10 2012-03-15 International Business Machines Corporation Predictive Analytics for Semi-Structured Case Oriented Processes
US8839133B2 (en) 2010-12-02 2014-09-16 Microsoft Corporation Data visualizations including interactive time line representations
US20120246148A1 (en) 2011-03-22 2012-09-27 Intergraph Technologies Company Contextual Display and Scrolling of Search Results in Graphical Environment
US9104765B2 (en) 2011-06-17 2015-08-11 Robert Osann, Jr. Automatic webpage characterization and search results annotation
US10140620B2 (en) 2011-09-15 2018-11-27 Stephan HEATH Mobile device system and method providing combined delivery system using 3D geo-target location-based mobile commerce searching/purchases, discounts/coupons products, goods, and services, or service providers-geomapping-company/local and socially-conscious information/social networking (“PS-GM-C/LandSC/I-SN”)
US9043710B2 (en) 2012-04-26 2015-05-26 Sap Se Switch control in report generation
US20140032506A1 (en) 2012-06-12 2014-01-30 Quality Attributes Software, Inc. System and methods for real-time detection, correction, and transformation of time series data
US8966441B2 (en) 2012-07-12 2015-02-24 Oracle International Corporation Dynamic scripts to extend static applications
US8689108B1 (en) 2013-09-24 2014-04-01 Palantir Technologies, Inc. Presentation and analysis of user interaction data

Patent Citations (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010021936A1 (en) * 1998-06-02 2001-09-13 Randal Lee Bertram Method and system for reducing the horizontal space required for displaying a column containing text data
US7962848B2 (en) * 1998-06-02 2011-06-14 International Business Machines Corporation Method and system for reducing the horizontal space required for displaying a column containing text data
US6279018B1 (en) * 1998-12-21 2001-08-21 Kudrollis Software Inventions Pvt. Ltd. Abbreviating and compacting text to cope with display space constraint in computer software
US6642945B1 (en) * 2000-05-04 2003-11-04 Microsoft Corporation Method and system for optimizing a visual display for handheld computer systems
US6978419B1 (en) * 2000-11-15 2005-12-20 Justsystem Corporation Method and apparatus for efficient identification of duplicate and near-duplicate documents and text spans using high-discriminability text fragments
US20030028560A1 (en) * 2001-06-26 2003-02-06 Kudrollis Software Inventions Pvt. Ltd. Compacting an information array display to cope with two dimensional display space constraint
US8001465B2 (en) * 2001-06-26 2011-08-16 Kudrollis Software Inventions Pvt. Ltd. Compacting an information array display to cope with two dimensional display space constraint
US20070013665A1 (en) * 2003-10-24 2007-01-18 Asko Vetelainen Method for shifting a shortcut in an electronic device, a display unit of the device, and an electronic device
US7694233B1 (en) * 2004-04-30 2010-04-06 Apple Inc. User interface presentation of information in reconfigured or overlapping containers
US20060045470A1 (en) * 2004-08-25 2006-03-02 Thomas Poslinski Progess bar with multiple portions
US20060074866A1 (en) * 2004-09-27 2006-04-06 Microsoft Corporation One click conditional formatting method and system for software programs
US20070101252A1 (en) * 2005-10-27 2007-05-03 Microsoft Corporation Variable formatting of cells
US7627812B2 (en) * 2005-10-27 2009-12-01 Microsoft Corporation Variable formatting of cells
US7634717B2 (en) * 2006-01-23 2009-12-15 Microsoft Corporation Multiple conditional formatting
US20100122152A1 (en) * 2006-01-23 2010-05-13 Microsoft Corporation Multiple conditional formatting
US20070174760A1 (en) * 2006-01-23 2007-07-26 Microsoft Corporation Multiple conditional formatting
US7770100B2 (en) * 2006-02-27 2010-08-03 Microsoft Corporation Dynamic thresholds for conditional formats
US20080276167A1 (en) * 2007-05-03 2008-11-06 Oliver Michael Device And Method For Generating A Text Object
US8225201B2 (en) * 2007-05-03 2012-07-17 Garmin Würzburg GmbH Device and method for generating a text object
US20090164934A1 (en) * 2007-12-21 2009-06-25 Sukadev Bhattiprolu Method of displaying tab titles
US8001482B2 (en) * 2007-12-21 2011-08-16 International Business Machines Corporation Method of displaying tab titles
US20090287470A1 (en) * 2008-05-16 2009-11-19 Research In Motion Limited Intelligent elision
US8620641B2 (en) * 2008-05-16 2013-12-31 Blackberry Limited Intelligent elision
US20110107196A1 (en) * 2009-10-30 2011-05-05 Synopsys, Inc. Technique for dynamically sizing columns in a table
US8312367B2 (en) * 2009-10-30 2012-11-13 Synopsys, Inc. Technique for dynamically sizing columns in a table
US20130097482A1 (en) * 2011-10-13 2013-04-18 Microsoft Corporation Search result entry truncation using pixel-based approximation
US20130262527A1 (en) * 2012-04-02 2013-10-03 Nicolas M. Hunter Smart progress indicator

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9400776B1 (en) * 2015-03-09 2016-07-26 Vinyl Development LLC Adaptive column selection
US20160306778A1 (en) * 2015-03-09 2016-10-20 Vinyl Development LLC Adaptive Column Selection
US10152460B2 (en) * 2015-03-09 2018-12-11 Vinyl Development LLC Adaptive column selection
WO2018144149A1 (en) * 2016-12-22 2018-08-09 Metricstream, Inc. Graphically displaying data having complex relationships
US10417797B2 (en) 2016-12-22 2019-09-17 Metricstream, Inc. Graphically displaying data having complex relationships

Also Published As

Publication number Publication date
AU2014253499B2 (en) 2018-03-08
EP2869211A2 (en) 2015-05-06
CA2868332A1 (en) 2015-05-04
EP2869211A3 (en) 2015-06-24
AU2014253499A1 (en) 2015-05-21
US8832594B1 (en) 2014-09-09
EP2869211B1 (en) 2018-12-26

Similar Documents

Publication Publication Date Title
US8909597B2 (en) Document-based workflows
US9043696B1 (en) Systems and methods for visual definition of data associations
RU2597522C2 (en) Ordering tiles
US8812960B1 (en) Cohort-based presentation of user interaction data
US7134093B2 (en) Graphical user interface for direct control of display of data
US20030179235A1 (en) Method and system for overloading loop selection commands in a system for selecting and arranging visible material in document images
US20100257482A1 (en) Method and apparatus for managing windows
US9335897B2 (en) Long click display of a context menu
US9565152B2 (en) Cable reader labeling
US9483162B2 (en) Relationship visualizations
US20060161860A1 (en) Multiple window behavior system
US20120159395A1 (en) Application-launching interface for multiple modes
US8892638B2 (en) Predicting and retrieving data for preloading on client device
KR101451882B1 (en) Method and system for deep links into application contexts
US8954857B2 (en) Sections of a presentation having user-definable properties
US20090113334A1 (en) System and Method to Facilitate Progress Forking
EP3518117A1 (en) Dynamic user interface
US8578290B2 (en) Docking and undocking user interface objects
US20180150213A1 (en) Context-sensitive views
US20180082305A1 (en) System and method for determining a propensity of entity to take a specified action
US8924883B2 (en) Content presentation utilizing moveable fly-over on-demand user interfaces
AU2014233570B2 (en) Presentation and analysis of user interaction data
EP0703563A2 (en) Method and apparatus for displaying overlapping graphical objects on a computer monitor
US8984437B2 (en) Controlling display of a plurality of windows
EP2851852A1 (en) Presentation and analysis of user interaction data

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: FINAL REJECTION MAILED