The invention relates to the organization, presentation, and use of information. More particularly, the invention relates to multi-dimensional visualization of temporal information.
The field of information visualization has emerged “from research in human-computer interaction, computer science, graphics, visual design, psychology, and business methods. It is increasingly applied as a critical component in scientific research, digital libraries, data mining, financial data analysis, market studies, manufacturing production control, and drug discovery.” See, Benjamin B. Bederson and Ben Shneiderman (2003); The Craft of Information Visualization: Readings and Reflections, Morgan Kaufmann ISBN 1-55860-915-6.
Information visualization presumes that “visual representations and interaction techniques take advantage of the human eye's broad bandwidth pathway into the mind to allow users to see, explore, and understand large amounts of information at once. Information visualization is focused on the creation of approaches for conveying abstract information in intuitive ways.” See, James J. Thomas and Kristin A. Cook (Ed.) (2005); Illuminating the Path: The R&D Agenda for Visual Analytics, National Visualization and Analytics Center. p.30.
Information visualization insights are being applied in areas such as, scientific research, digital libraries, data mining, financial data analysis, market studies, manufacturing production control, and crime mapping.
There is a vast and rapidly growing amount of time-based data available on networks, but no simple, standard way of viewing, sharing, and presenting it. State of the art information visualization is relatively unsophisticated in connection with such multi-dimensional, temporal information. Further, state of the art information visualization is relatively static, lacking both the ability to provide real time information transforms and the ability to establish and manipulate multi-dimensional linkages to develop insights into information gathered from multiple domains.
An embodiment of the invention addresses that fact that there is a large amount of information available to individuals and organizations that could be valuable if it were organized in a useful way. Heretofore, there has not been a simple way to track and organize this information. Embodiments of the invention present a new way to track all kinds of business and other information in real time. An embodiment of the invention provides a coherent information visualization, for example as a time line, that automatically, simultaneously presents relevant information to a user across multiple dimensions. An embodiment of the invention provides tools that allow the user to establish and manipulate multi-dimensional linkages to develop insights into information gathered from multiple domains.
An embodiment of the invention addresses that fact that there is a large amount of information available to individuals and organizations that could be valuable if it were organized in a useful way. Heretofore, there has not been a simple way to track and organize this information. Embodiments of the invention present a new way to track all kinds of business and other information in real time. An embodiment of the invention provides a coherent information visualization, for example as a time line, that automatically, simultaneously presents relevant information to a user across multiple dimensions and from multiple domains. An embodiment of the invention provides tools that allow the user to establish and manipulate multi-dimensional linkages to develop insights into information gathered from multiple domains.
For purposes of the discussion herein, the following terms shall have their accompanying meanings:
A strip is a single timeline.
A strip page is a unique URL containing one or more strips.
A strip tab is a subset of a strip page that contains one or more strips.
A source is a strip data source.
A topic is a subject of interest to a strip user.
A filter filters a data source.
A strip template is a container for data in which no sources, topics, or filters are defined.
A strip developer is a person or entity that uses the strip API to create custom strip configurations.
A widget window provides alternate ways, e.g. a non-timeline metaphor, for displaying strip source data, for example, a world map.
In an embodiment of the invention, two methods are provided for strip creation and configuration: a simple UI, and a programmatic approach (API).
The simple UI approach comprises a library of pre-created links to data sources and a library of pre-created strip templates, where the system matches a template to a data source link. In this embodiment, a user chooses from predefined sources and templates or creates his own strip by such operations as define/name strips, define/name tabs, and define/name dynamic screens. The UI allows the user to set viewing/sharing privileges, set scroll function/scroll rate, set timeline display duration, and set archiving parameters.
The programmatic access/control approach is provided for strip developers to define and configure custom strips. The API allows the user to, for example, create new strip templates, program a widget window, set creation/sharing/viewing privileges, and set-up private hosting.
In an embodiment, strip templates include event timelines, which incorporate, for example, social media (text pictures video animation); news media, such as text, pictures, video, and animation; IT network events, financial transactions, Web traffic/events, including Website activity and ad/marketing campaign tracking; calendar events; and collaboration events, such as project management and real-time messaging.
Strip templates also include graphs, which may comprise any type of time-based graph and/or a combination event timeline/media/+graph.
In an embodiment, data sources are harmonized to allow visual and programmatic comparison of data from different data sources at a single moment in time. The invention comprehends a platform-independent, browser-based presentation on desktop and mobile devices (device-independent). Strips can be embedded in other Web pages and/or Web services and can be exported to any desired format, such as PDF, JPEG, and PPT.
An embodiment of the invention organizes strips to compare synchronous events from separate data sources visually or programmatically. This allows analysis with regard to, for example, resource allocation; ROI analysis; analysis of collaborative activity; and impact analysis, for example viewing drought vs. commodity prices. The invention includes a drill-down feature that enables users to click on strips to access more detailed data and/or establish a direct two-way link to the referring data source. The timescale of single/multiple strips can be adjusted in real-time to support analysis/comparison of events from multiple data sources. Further, strips can be scrolled independently, i.e. asynchronously, to compare events from different time periods visually.
Strips and strip dynamic screens can be shared, subject to sharing privileges, across networks using common Web-based sharing methods, such as emailing a URL. Comments can be attached/embedded on strip timelines. The invention thus comprehends the provision of tools enable a strip user to engage the originator of data via a strip.
Any data displayed in a strip can be archived on the strip server. Such archiving provides the user with the ability to travel back in time in strip timelines and perform visual or programmatic analysis of past events. Archiving also enables travel forward in time to view scheduled future events for visual or programmatic analysis.
Strip data can be searched using, for example, keywords, data parameters such as patterns and thresholds, and time period.
Data is harmonized so that data from multiple data sources at a single point in time can be observed and visually or programmatically compared. Left-hand labels 31-34 show topics and sources, as well as data parameters, such as a vertical axis that shows a time scale for a graph.
The script 233 comprises an open source visualization library that provides HTML/Javascript.
The application server 230 comprises a security authorization facility. An API provides access to user management functions and notification functions. A data analysis and management system handles pass through data and archived data, while a data integration framework provides SQL integration, web services integration, ECEL integration, XML/JSON integration, and other integration. The data integration places data from all sources into a common format along a common scale. This allows presentation of multiple strips on a display in a meaningful fashion.
Data is harmonized for integration by subjecting it to a variety of normalizing operations. For example, volumetric, spatial, and/or temporal operations may be applied to data. Normalized data is created which enables meaningful comparison, analysis, and discovery of trends and anomalies within the strips environment and also through the use of third party analytics tools, such as SAS and Teradata.
Data for multiple strips can be stored in a common data warehouse. Links between strips are created based on pattern recognition or tags embedded in the data which enable one strip to detect related data in another strip, so that strips reconfigure themselves automatically to show related data in adjacent strips.
The computer system 1600 includes a processor 1602, a main memory 1604 and a static memory 1606, which communicate with each other via a bus 1608. The computer system 1600 may further include a display unit 1610, for example, a liquid crystal display (LCD) or a cathode ray tube (CRT). The computer system 1600 also includes an alphanumeric input device 1612, for example, a keyboard; a cursor control device 1614, for example, a mouse; a disk drive unit 1616, a signal generation device 1618, for example, a speaker, and a network interface device 1628.
The disk drive unit 1616 includes a machine-readable medium 1624 on which is stored a set of executable instructions, i.e., software, 1626 embodying any one, or all, of the methodologies described herein below. The software 1626 is also shown to reside, completely or at least partially, within the main memory 1604 and/or within the processor 1602. The software 1626 may further be transmitted or received over a network 1630 by means of a network interface device 1628.
In contrast to the system 1600 discussed above, a different embodiment uses logic circuitry instead of computer-executed instructions to implement processing entities. Depending upon the particular requirements of the application in the areas of speed, expense, tooling costs, and the like, this logic may be implemented by constructing an application-specific integrated circuit (ASIC) having thousands of tiny integrated transistors. Such an ASIC may be implemented with complementary metal oxide semiconductor (CMOS), transistor-transistor logic (TTL), very large systems integration (VLSI), or another suitable construction. Other alternatives include a digital signal processing chip (DSP), discrete circuitry (such as resistors, capacitors, diodes, inductors, and transistors), field programmable gate array (FPGA), programmable logic array (PLA), programmable logic device (PLD), and the like.
It is to be understood that embodiments may be used as or to support software programs or software modules executed upon some form of processing core (such as the CPU of a computer) or otherwise implemented or realized upon or within a machine or computer readable medium. A machine-readable medium includes any mechanism for storing or transmitting information in a form readable by a machine, e.g., a computer. For example, a machine readable medium includes read-only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices; electrical, optical, acoustical or other form of propagated signals, for example, carrier waves, infrared signals, digital signals, etc.; or any other type of media suitable for storing or transmitting information.
Although the invention is described herein with reference to the preferred embodiment, one skilled in the art will readily appreciate that other applications may be substituted for those set forth herein without departing from the spirit and scope of the present invention. Accordingly, the invention should only be limited by the Claims included below.
This application is a divisional of U.S. patent application Ser. No. 15/881,628, filed Jan. 26, 2018, which is a continuation of U.S. patent application Ser. No. 13/338,170, filed on Dec. 27, 2011, now U.S. Pat. No. 9,881,257, issued Jan. 30, 2019, which claims priority to U.S. Provisional Patent Application No. 61/427,961, filed on Dec. 29, 2010, each of which is incorporated by reference herein in its entirety.
Number | Date | Country | |
---|---|---|---|
61427961 | Dec 2010 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 15881628 | Jan 2018 | US |
Child | 18648266 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13338170 | Dec 2011 | US |
Child | 15881628 | US |