An enterprise can receive various types of information, including as examples customer feedback, sales information, system performance measurements, and so forth. Customer reviews can be submitted online at third-party sites (e.g. web survey sites or social networking sites such as FACEBOOK®, and TWITTER®), or alternatively, reviews can be received directly by an enterprise. Other types of information can be received from other sources. There can be potentially a relatively large number of data records containing various types of information, which can make meaningful analysis of such information difficult and time-consuming.
The patent or application file contains at least one drawing executed in color. Copies of this patent or patent application publication with color drawing(s) will be provided by the Office upon request and payment of the necessary fee.
Some embodiments are described with respect to the following figures:
An enterprise (e.g. a company, educational organization, government agency, individual, etc.) may collect various types of information from various sources. As examples, such information can include feedback from customers (or more generally “users”) to better understand user sentiment regarding an offering of the enterprise. An offering can include a product or a service provided by the enterprise. A “sentiment” refers to an attitude, opinion, or judgment of a human with respect to the offering. An opinion or other sentiment can be mapped to an attribute (such as an attribute associated with an offering or any attribute about which is a sentiment can be expressed) to indicate a degree of satisfaction or other sentiment.
User feedback can be collected from various sources, such as online websites of the enterprise or third-party sites such as travel review websites,product review websites, social networking sites (such as FACEBOOK® and TWITTER®), web survey sites and so forth.
Other types of information that can be collected by an enterprise include measurements from various monitoring devices in a system, such as a network of electronic devices, a data center, a system of storage devices, and so forth. The collected measurements can include performance measurements, such as utilization of computer servers, utilization of storage devices, data rates through communication devices, and so forth. In other examples, collected information can include financial data (e.g. revenue, profit, sales, etc.) of the enterprise, and so forth.
Visualizing relatively large volumes of data records (containing collected information) can be complex and time-consuming. A “data record” refers to a unit of data that contains collected information. For example, the data record can include a user review submitted by a particular user. Also, the data record can include a time attribute (specifying a time at which the data record was submitted or received), a location attribute (identifying a location of the data record), a sentiment attribute indicating a sentiment associated with a user review, and/or other attributes.
Traditionally, visualizations of one or multiple attributes contained in data records do not effectively express geo-spatial information, which is information indicating geographical locations associated with the data records. Without the geo-spatial information, analysis of information contained in the data records (such as sentiments expressed by users or other types of information) may not consider effects of geographic locations with respect to the collected information.
In accordance with some implementations, transparency images containing pixels representing corresponding data records can be overlaid over a geographic map, for indicating geographic locations associated with various data records represented by the pixels. A geographic map refers to a graphical representation of the earth's surface or a portion of the earth's surface. A “transparency image” refers to an image that can be overlaid over another image (that contains the geographic map) such that both the content (pixels) of the transparency image as well as the geographic map is visible to a user. The location information in the location attribute that is associated with the data records allows for appropriate positioning of the pixels relative to the geographic map—in other words, the pixels are positioned in a graphical visualization based on the location information associated with the data records.
A geographic map can be displayed at different zoom levels, corresponding to different user selections. To accommodate the ability to view a geographic map at different zoom levels, the transparency images that can be overlaid over the geographic map can include transparency images at multiple hierarchical levels that correspond to the zoom levels. The transparency images at the different hierarchical levels can be created by recursively dividing a data space containing data records into progressively smaller partitions, where each smaller partition contains a respective subset of the data records in the data space. Depending upon the selected zoom level of the geographic map, the transparency image(s) at the corresponding one of the hierarchical levels is (are) selected for overlaying the geographic map. In this manner, the amount of pixels representing corresponding data records that are displayed is based on the zoom level of the geographic map.
Instead of using different colors to represent different sentiments, other types of visual indicators can be used instead, such as different fill patterns or different gray levels assigned to the pixels. More generally, different visual indicators of pixels can be used for representing different values of an attribute contained in data records.
The geographic map image 102-1 includes yellow boundaries to indicate the borders of the different countries in the view of
Due to the uneven distribution of data records at different geographic locations, techniques or mechanisms according to some implementations provide for placement of pixels representing data records that avoids or reduces the likelihood of overlapping of pixels that represent different data records. For example, in a city such as Los Angeles, which can be associated with a relatively large number of data records, a relatively large number of pixels representing the data records can share the same geometric coordinates (such as geometric coordinates associated with the city of Los Angeles). Instead of placing the pixels associated with the same geometric coordinates at the same position, the pixels can be placed in nearby positions within a defined region. By placing pixels sharing the same geometric coordinates in nearby positions, clusters of such pixels are formed, such as clusters 106, 108, 110, and so forth shown in
If pixels corresponding to data records that share the same geometric coordinates were placed at the same position in a graphical visualization, then the graphical visualization would indicate the presence of just one data record at that position, even though potentially there can be hundreds or thousands of data records sharing the same geometric coordinates. By using placement techniques according to some implementations, occlusion of data records in the graphical visualization can be avoided or reduced.
The transparency images 104-2 depicted in
Also, in
The process overlays (at 506) at least one of the transparency images at a dynamically selected one of the hierarchical levels according to which of the zoom levels is selected by a user in zooming (varying the zoom) of the geographic map, where the at least one transparency image is automatically selected without user input or awareness. When a user changes the zoom level of the geographic map, then transparency image(s) at a different one of the hierarchical levels is (are) selected dynamically for overlaying over the zoomed portion of the geographic map. Dynamic selection of a hierarchical level can refer to selection of the hierarchical level on the fly (or on a real-time basis) in response to user selections of zoom levels for the geographic map.
Reference is made to
The original data space is the largest partition (at hierarchical level 0). In
As further shown in
The process of
The process receives (at 610) a zoom level for display of a geographic map. The process then selects (at 612) the transparency image(s) to overlay over the zoomed portion of the geographic map.
A pseudocode according to some examples of generating the transparency images is depicted below.
The pseudocode above exports “subtiles,” which correspond to the transparency images described above. The parameter “maxLevel” indicates the number of hierarchical levels for which transparency images are to be created. Line 3 of the pseudocode specifies that the different levels are iteratively processed, starting at level 0 and proceeding to maxLevel. Line 4 of the pseudocode defines the width (tileWidth) of each subtile at the current level, and line 5 of the pseudocode specifies the number of subtiles at the current level.
For each of the subtiles at the current level, the pixels from the respective portion of the data set are exported for inclusion in the respective subtile (transparency image) at lines 6-15 of the pseudocode.
The transparency image overlay visualization module 802 can be implemented as machine-readable instructions executable on one or multiple processors 804. The processor(s) 804 can be connected to a storage medium (or storage media) 806 and to a network interface 808. A processor can include a microprocessor, a micro controller, a processor module or subsystem, a programmable integrated circuit, a programmable gate array or another control or computing device. The storage medium 806 can store a data set 810 that has been received by the system 800, where the data set 810 can include various data records that contain attribute values according to some implementations.
The system 800 also includes various application programming interfaces (APIs) 812. Different ones of the APIs can be used for different geographic maps, to allow transparency images generated by the transparency image overlay visualization module 802 to be overlaid onto the respective geographic map using the appropriate API.
The storage medium (or storage media) 806 can be implemented as one or more computer-readable or machine-readable storage media. The storage media include different forms of memory including semiconductor memory devices such as dynamic or static random access memories (DRAMs or SRAMs), erasable and programmable read-only memories (EPROMs), electrically erasable and programmable read-only memories (EEPROMs) and flash memories; magnetic disks such as fixed, floppy and removable disks; other magnetic media including tape; optical media such as compact disks (CDs) or digital video disks (DVDs); or other types of storage devices. Note that the instructions discussed above can be provided on one computer-readable or machine-readable storage medium, or alternatively, can be provided on multiple computer-readable or machine-readable storage media distributed in a large system having possibly plural nodes. Such computer-readable or machine-readable storage medium or media is (are) considered to be part of an article (or article of manufacture). An article or article of manufacture can refer to any manufactured single component or multiple components. The storage medium or media can be located either in the machine running the machine-readable instructions, or located at a remote site from which machine-readable instructions can be downloaded over a network for execution.
In the foregoing description, numerous details are set forth to provide an understanding of the subject disclosed herein. However, implementations may be practiced without some or all of these details. Other implementations may include modifications and variations from the details discussed above. It is intended that the appended claims cover such modifications and variations.
Number | Name | Date | Kind |
---|---|---|---|
3487308 | Johnson | Dec 1969 | A |
5581797 | Baker | Dec 1996 | A |
5608904 | Chaudhuri et al. | Mar 1997 | A |
5623590 | Becker et al. | Apr 1997 | A |
5623598 | Voigt et al. | Apr 1997 | A |
5634133 | Kelley | May 1997 | A |
5659768 | Forbes et al. | Aug 1997 | A |
5694591 | Du et al. | Dec 1997 | A |
5757356 | Takasaki et al. | May 1998 | A |
5801688 | Mead et al. | Sep 1998 | A |
5878206 | Chen et al. | Mar 1999 | A |
5903891 | Chen et al. | May 1999 | A |
5924103 | Ahmed et al. | Jul 1999 | A |
5929863 | Tabei et al. | Jul 1999 | A |
5940839 | Chen et al. | Aug 1999 | A |
5986673 | Martz | Nov 1999 | A |
5999193 | Conley, Jr. et al. | Dec 1999 | A |
6052890 | Malagrino, Jr. et al. | Apr 2000 | A |
6144379 | Bertram et al. | Nov 2000 | A |
6211880 | Impink, Jr. | Apr 2001 | B1 |
6211887 | Meier et al. | Apr 2001 | B1 |
6269325 | Lee et al. | Jul 2001 | B1 |
6400366 | Davies et al. | Jun 2002 | B1 |
6429868 | Dehner, Jr. et al. | Aug 2002 | B1 |
6466946 | Mishra et al. | Oct 2002 | B1 |
6502091 | Chundi et al. | Dec 2002 | B1 |
6584433 | Zhang et al. | Jun 2003 | B1 |
6590577 | Yonts | Jul 2003 | B1 |
6603477 | Tittle | Aug 2003 | B1 |
6658358 | Hao et al. | Dec 2003 | B2 |
6684206 | Chen et al. | Jan 2004 | B2 |
6727926 | Utsuki et al. | Apr 2004 | B1 |
6934578 | Ramseth | Aug 2005 | B2 |
7020869 | Abrari et al. | Mar 2006 | B2 |
7202868 | Hao | Apr 2007 | B2 |
7221474 | Hao et al. | May 2007 | B2 |
7313533 | Chang et al. | Dec 2007 | B2 |
7542882 | Agrawala | Jun 2009 | B2 |
7567250 | Hao et al. | Jul 2009 | B2 |
7714876 | Hao | May 2010 | B1 |
7924283 | Hao | Apr 2011 | B1 |
8005613 | Rasmussen | Aug 2011 | B2 |
8078641 | Mao | Dec 2011 | B2 |
8151194 | Chan et al. | Apr 2012 | B1 |
20020118193 | Halstead, Jr. | Aug 2002 | A1 |
20030065546 | Gorur et al. | Apr 2003 | A1 |
20030071815 | Hao et al. | Apr 2003 | A1 |
20030128212 | Pitkow | Jul 2003 | A1 |
20030221005 | Betge-Brezetz et al. | Nov 2003 | A1 |
20040051721 | Ramseth | Mar 2004 | A1 |
20040054294 | Ramseth | Mar 2004 | A1 |
20040054295 | Ramseth | Mar 2004 | A1 |
20040133471 | Pisaris-Henderson et al. | Jul 2004 | A1 |
20040201588 | Meanor | Oct 2004 | A1 |
20040210540 | Israel et al. | Oct 2004 | A1 |
20050066026 | Chen et al. | Mar 2005 | A1 |
20050119932 | Hao | Jun 2005 | A1 |
20050219262 | Hao et al. | Oct 2005 | A1 |
20060095858 | Hao et al. | May 2006 | A1 |
20070225986 | Bowe, Jr. et al. | Sep 2007 | A1 |
20080010273 | Frank | Jan 2008 | A1 |
20080059452 | Frank | Mar 2008 | A1 |
20080065685 | Frank | Mar 2008 | A1 |
20090033664 | Hao et al. | Feb 2009 | A1 |
20090079766 | Dolph et al. | Mar 2009 | A1 |
20100194784 | Hoff et al. | Aug 2010 | A1 |
20100318291 | Gluck | Dec 2010 | A1 |
20110012773 | Cunning et al. | Jan 2011 | A1 |
20110055290 | Li et al. | Mar 2011 | A1 |
20110191014 | Feng | Aug 2011 | A1 |
20110285749 | Nielsen et al. | Nov 2011 | A1 |
20120005045 | Baker | Jan 2012 | A1 |
20120150972 | Morris et al. | Jun 2012 | A1 |
20130194272 | Hao et al. | Aug 2013 | A1 |
Number | Date | Country |
---|---|---|
0778001 | Nov 1996 | EP |
Entry |
---|
Deun et al., Multidimensional Scaling, Open and Distance Learning, Jan. 12, 2000 (pp. 1-16). |
http://www.pavis.orgiessay/multidimensional—scaling.html, 2001 Wojciech Basalaj, (pp. 1-30). |
D. Keim et al Pixel Bar Charts: A New Technique for Visualization Large Multi-Attribute Data Sets with Aggregation:, HP Technical Report, Apr. 2001, pp. 1-10. |
M. Ankerst et al “Towards an effective cooperation of the computer and the computer user for classification, Proc. 6th Int. Conf. on Knowledge Discovery and Data Mining , ” (KDD'2000), Aug. 20-23, 2000, Boston, MA, 2000, pp. 1-10. |
M.C. Hao et al “Visual Mining of E-customer Behavior Using Pixel Bar Charts,”, HP Technical Report, Jun. 20, 2001, pp. 1-7. |
B. Shneiderman, “Tree Visualization with Treemaps: a 2-D Space-Filling Approach”, pp. 1-10, Jun. 1991. |
Daniel Keim et al “Designing Pixel-Orientated Visualization Techniques: Theory and Applications” IEEE Transactions on Visualization and Computer Graphics, vol. 6, No. 1, Jan.-Mar. 2000, pp. 59-78. |
Jessica Lin, Eamonn Keogh, Stefano Lonardi, Jeffrey P. Lankford, Donna M. Nystrom; Visually Mining and Monitoring Massive Time Series; 2004; International Conference on Knowledge Discovery and Data Mining archive, Proceedings of the tenth ACM SIGKDD international conference on Knowledge discovery and data mining table of contents; pp. 460-469. |
Eamonn Keogh, Harry Hochheiser, and Ben Shneiderman; An Augmented Visual Query Mechanism for Finding Patterns in Time Series Data; 2002; Lecture Notes in Computer Science, Proceedings of the 5th International Conference on Flexible Query Answering Systems; Springer-Verlag; vol. 252212002; pp. 240-250. |
Chris Stolte et al., “Polaris: A System for Query, Analysis and Visualiztion of Multidimensional Relational Databases,” IEEE Transactions on Visualization and ComputerGraphics, vol. 8, No. 1, pp. 1-14 (Jan.-Mar. 2002). |
Daniel A. Keim et al., “VisDB: Database Exploration Using Multidimensional Visualization,” IEEE Graphics and Applications, vol. 14, No. 5, pp. 40-49 (1994). |
Matthew O. Ward, “XmdvTool: Integrating Multiple Methods for Visualizing Multivariate Data,” Proc. Visualization, pp. 326-331 (Oct. 1994). |
H. Hochheiser et al., “Dynamic Query Tools for Time Series Data Sets: Timebox Widgets for Interactive Exploration,” Information Visualization, vol. 3, pp. 1-18 (2004. |
P. Buono et al., “Technical Research Report, Interactive Pattern Search in Time Series,” Institute for Systems Research, TR 2005-57, pp. 1-11 (2004. |
J. Yang et al., “Visual Hierarchical Dimension Reduction for Exploration of High Dimensional Datasets,” Joint Eurographics/IEEE TCVG Symposium on Visualization, pp. 19-28 (May 2003). |
J. Fekete et al., “Interactive Information Visualization of a Million Items,” Information Visualization, 2002, INFOVIS 2002, IEEE Symposium, Published Oct. 2002, pp. 1-8. |
Hao et al., U.S. Appl. No. 13/363,602 entitled Placing Pixels According to Attribute Values in Positions in a Graphical Visualization That Correspond to Geographic Locations filed Feb. 1, 2012 (25 pages). |
Number | Date | Country | |
---|---|---|---|
20130257903 A1 | Oct 2013 | US |