US20100251151A1 - Displaying stacked bar charts in a limited display area - Google Patents
Displaying stacked bar charts in a limited display area Download PDFInfo
- Publication number
- US20100251151A1 US20100251151A1 US12/413,496 US41349609A US2010251151A1 US 20100251151 A1 US20100251151 A1 US 20100251151A1 US 41349609 A US41349609 A US 41349609A US 2010251151 A1 US2010251151 A1 US 2010251151A1
- Authority
- US
- United States
- Prior art keywords
- display
- shape
- bar
- coordinate value
- responsive
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 25
- 238000004590 computer program Methods 0.000 claims description 10
- 230000007704 transition Effects 0.000 description 10
- 230000005281 excited state Effects 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 230000001186 cumulative effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241001331447 Santia Species 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1626—Constructional details or arrangements for portable computers with a single-body enclosure integrating a flat display, e.g. Personal Digital Assistants [PDAs]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
- H04M1/72427—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for supporting games or graphical animations
Definitions
- the disclosure generally relates to displaying reports on a device having a display area that is small relative to the amount of data that is being displayed.
- FIG. 1 illustrates a stacked bar chart and some of the obstacles encountered in displaying a stacked bar chart on a small screen.
- FIG. 1 illustrates a stacked bar chart and some of the obstacles encountered in displaying a stacked bar chart on a small screen.
- Each stack 120 in a stacked bar chart corresponds to an x-coordinate value and represents multiple y-coordinate values where each value is displayed by a bar in the stack with height determined by the y-coordinate value corresponding to the bar.
- the stacked bar 120 has three bars 105 , 110 , and 115 each representing a different y-coordinate value.
- the height of the stacked bar 120 corresponds to the aggregate y-coordinate value of all the bars in the stack. Additional information corresponding to the different kinds of bars may be represented by a legend 125 .
- each bar in a stack 120 is proportional to the value represented by the bar. Due to the fixed resolution of typical display screens, two values that are very close may be represented by bars appearing to have the same height. Hence, the height of the bars may not truly represent the corresponding y-coordinate value. In addition, it is difficult for a viewer to know the exact value corresponding to each bar 105 , 110 , or 115 or the aggregate value of the stacked bar 120 by looking at the stacked bar.
- the present invention enables the display of stacked bar charts on a device having a display area that is small compared to the amount of data being shown in the chart.
- suitable devices include tablet computers, smart phone devices, and mobile phones.
- a magnification region allows a portion of a chart or graph data to be displayed at a larger size that can display additional information compared to the graphic data displayed outside of the magnification region.
- Individual bars within the stacked bar can be further magnified to display information specific to the bar.
- a bar that is magnified is expanded to a height that is determined by the amount of information to be displayed for the bar.
- Visual indications associated with the bar in some embodiments indicate that the height of the bar is not indicative of its y-coordinate value, for example by displaying the bar as wiggling.
- the other bars in the stack may be reduced in height to accommodate the increase in height of the expanded bar.
- the location of either the chart or the magnification region can be moved to view detailed information for different stacked bars. Navigation mechanisms allow a user to efficiently reach a particular set of adjacent stacked bars that the user wants to magnify.
- FIG. 1 illustrates a conventional system displaying a stacked bar graph.
- FIG. 2 illustrates one embodiment of the architecture of a system for displaying data as bar graphs.
- FIG. 3 illustrates how a magnification region displays a magnified bar.
- FIGS. 4-6 show how individual bars of a magnified stacked bar may be expanded to display additional information corresponding to the expanded bar.
- FIG. 7 illustrates how a stacked bar chart displaying an expanded bar can be changed to a default magnification stacked bar.
- FIG. 8 shows how tilting a device displaying a stacked bar graph in a particular direction causes the stacked bar graph to scroll causing the stacked bars displayed in the magnification region to change.
- FIG. 9 shows how rotating a device in the direction opposite to that shown in FIG. 4 causes the stacked bar graph to scroll in the opposite direction.
- FIG. 10 shows a flowchart describing an embodiment of the process for calculating the stacked bar chart dimensions for displaying on a device with a magnification region.
- FIG. 2 is a block diagram of a system architecture in accordance with one embodiment.
- the components shown in FIG. 2 include a database (DB) 205 , a DB controller module 210 , a data renderer module 215 , an input/output driver (I/O driver) module 220 , and a display screen 225 .
- Components such as the display screen 225 are hardware components whereas the DB controller 210 and the chart renderer 215 are software modules.
- the term “module” refers to a computer program logic and/or data for providing the specified functionality.
- a module can be implemented in hardware, firmware, and/or software. Examples of types of computers that implement the system shown in FIG. 2 include tablet computers, smart phone devices, and mobile phones.
- the DB 205 stores data and metadata associated with reports.
- the DB 205 in one embodiment is implemented using a hard disk drive but can also be implemented using any other device capable of storing data, such as a writeable compact disc (CD) or DVD, or a solid state memory device, for example a flash memory.
- the DB controller module 210 implements the logic to interface with the DB 205 so as to read data from the DB 205 or write data to the DB 205 .
- the DB controller 210 provides data to the data renderer module 215 , which computes information required for rendering the data. For example, the data renderer can determine the dimensions of a pie chart if the data needs to be displayed as a pie chart.
- the data and the information necessary for rendering the data are provided by the data renderer 215 to the input/output driver 220 .
- the input/output driver 220 provides the display screen 225 with instructions and data necessary for displaying data and/or images.
- the display screen 225 is used to input data and/or commands.
- a touch sensitive screen can sense the coordinates of the portion of the screen touched by a user.
- the user may touch the display screen 225 , for example, to select a command from a list of commands or to select a data element from a list of data elements displayed on the screen.
- the display screen 225 can be tilted by the user. The magnitude and direction of tilt of the display screen 225 is detected and can be treated as an input.
- the angle of the tilt of the display screen is provided to the input/output driver 220 by hardware components such as an accelerometer.
- a pointing device such as a thumbwheel, mouse, track ball, or other type of pointing device is used to input data or commands into the system.
- the input/output driver 220 sends the data or instructions provided by the display screen 225 to the DB controller 210 .
- the DB controller 210 in response to data or instructions received from the input/output driver 220 reads data from DB 205 and writes data to DB 205 .
- a mobile device may be used to view reports available to a user.
- An example scenario allows the user to associate a particular report with a display mode, such as a pie chart, bar chart, or text mode.
- a display mode such as a pie chart, bar chart, or text mode.
- the user is presented with a list of display modes. The user may make a selection by touching the appropriate portion of the display screen 225 showing a specific mode of display, or by providing input through another mechanism such as a keyboard or pointing device.
- the DB controller 210 updates the metadata of the appropriate report in the DB 205 to store the information related to mode of display of the report.
- the information associating the report with a mode of display is used subsequently to display the report.
- the user may be presented with a list of reports that can be reviewed.
- the user selects a particular report name and data renderer 215 , computes information to render the data which is then displayed on display screen 225 in the specified format.
- Various other scenarios of interactions between the user and the various components and modules displayed in FIG. 2 are possible.
- FIG. 3 illustrates how a magnification region 300 can be used on a display screen 225 to effectively present a visual representation of a report using a stacked bar chart.
- the display screen comprises four edges, a left edge 340 , a right edge 325 , a top edge 345 , and a bottom edge 350 .
- an edge e.g., as a “bottom”, is for clarity of description—a particular device may support use in multiple orientations, in which case the physical edge of the device that is the “bottom” or “top” in one orientation can easily become a different edge in an alternative orientation.
- Our description here is not intended to be limited to a particular orientation.
- the x-axis is shown adjacent to the bottom edge 350 and the values 335 corresponding to the y-axis are shown adjacent to the right edge 325 .
- the chart is displayed in an area enclosed within the edges of the display screen. For example, in FIG. 3 the chart area is within the lower chart edge 355 and an upper chart edge 360 .
- a user can activate the magnification region 300 in a stacked bar chart with a default display by providing input, for example, by selecting a stacked bar in the default display of a stacked bar chart using a pointing device.
- the magnification region 300 can be displayed in a fixed portion of the display screen and the stacked bars of the stacked bar chart moved along the x-axis based on user input to cause specific stacked bars to overlap the magnification region to be magnified.
- a stacked bar displayed within the magnification region 300 is called a magnified stacked bar 315 and a stacked bar displayed outside the magnification region 300 is called a standard stacked bar 310 .
- a magnified stacked bar is displayed using bars larger than or at least as large as a standard bar.
- the x-axis values 305 are shown next to each stacked bar 315 .
- the magnification region 300 is a rectangular area with height at least as large as the maximum stacked bar height in the graph and a width at least as large as a standard stacked bar 310 .
- the width of the magnified stacked bar 315 is larger than the width of a standard stacked bar 310 to allow information to be displayed for bars of the stacked bar.
- a magnified bar by default displays the information related to the largest bar displayed in the magnified stacked bar.
- the information is displayed overlaying the corresponding bar with indication that the information is associated with the bar.
- the information to be displayed 330 is truncated if necessary to display the information within the bar. For example, in FIG. 3 , the text 330 “Santia $20.03” is a truncated version of text “Santiago $1,548,943” corresponding to the value of the data point represented by the bar 320 .
- An alternative embodiment displays information associated with an aggregate value based on the bars of the stacked bar. For example, the sum of the y-coordinate values associated with each bar within the stacked bar can be displayed representing the cumulative height of the stacked bar.
- the text corresponding to the aggregate information associated with a stacked bar is displayed overlaying with the entire stacked bar so as to avoid associating the information with a particular bar.
- the aggregate information for a stacked bar can be further distinguished compared to information for individual bars, for example, by use of a different font or color.
- the magnified stacked bar displaying information by default is called a default magnified stacked bar.
- the stacked bars are separated by width at least equal to the width of a standard bar to allow the label corresponding to the x-coordinate to be displayed along with some margin between the label and an adjacent stacked bar.
- the stacked bars may be separated by a suitable width based on the height of the label text and a suitable margin.
- Alternative embodiments may not display the labels corresponding to the x-coordinate values by default.
- FIG. 4 Further magnification can be added to individual bars of a default magnified stacked bar by providing user input.
- individual bars are expanded to a height necessary to display additional information as illustrated in FIG. 4 .
- the height of an expanded bar 400 can be larger than the height in the default display of the bar 320 in a default magnified stacked bar or a standard stacked bar which is determined by the y-coordinate value of the bar.
- An individual bar in a stacked bar can be expanded by engaging the bar.
- a bar of the stacked bar is engaged by hovering the cursor on the specific bar with the help of a pointing device.
- Alternative embodiments allow engaging the bar by clicking with a pointing device when the cursor is within the region of the stacked bar.
- the bar within the magnified stacked bar that is engaged expands the least amount necessary to display information associated with the data point corresponding to the bar which can include its y-coordinate value.
- a magnified stacked bar that is not displaying a specific bar expanded with additional information is called a default magnified stacked bar.
- the maximum height of the stacked bar with a specific bar expanded is limited to the maximum height of the chart.
- the maximum height to which a specific bar can be expanded is limited to a pre-defined maximum value.
- the other bars within the stacked bar retain their unexpanded height.
- Alternative embodiments may reduce the height of the bars not expanded to allow the engaged bar to be magnified more.
- the bar that is expanded does not display a height based on the y-coordinate value of the corresponding data point.
- the expanded bar is displayed in a manner that distinguishes it from other bars displaying height based on their y-coordinate value.
- the expanded bar is considered to be displayed in an excited state, for example, it may be displayed as wiggling while the other bars are stationary, or it may be displayed with a different color or shading that distinguishes an expanded bar compared to bars not displayed in an excited state.
- Other embodiments may show the bar as flashing or pulsing. This distinction shows that the bar is not displaying a height based on its y-coordinate value.
- the bar in excited state is reverted to its normal height based on its y-coordinate value and is not displayed in an excited state.
- the text may be displayed overlaying the bar.
- the text may be truncated and additional input required from the user to display the entire text.
- the entire stacked bar may be displayed in an excited state.
- Embodiments that display an aggregate value associated with a default magnified stacked bar may not display the aggregate value once a specific bar is engaged and displayed in an excited state with additional information.
- Alternative embodiments may also increase the width of an expanded bar or the entire magnified stacked bar to allow additional information to be displayed. An increase in width may cause other bars displayed on the screen to be either reduced in width or to be moved outside the visible area of the chart.
- the bar originally expanded 400 returns to its normal height and the stacked bar 500 or 600 newly engaged is expanded.
- the expanded bar 500 or 600 displays additional information associated with the bar using the label 510 or 610 respectively.
- the transition of an unexpanded bar 415 to an expanded bar 500 is animated.
- the transition from an unexpanded bar to an expanded bar can display bars of different sizes in between the unexpanded bar size and the expanded bar size thereby presenting a smooth transition.
- FIG. 7 illustrates how in one embodiment, the user can provide input that causes the magnified bar 610 to be displayed as the default magnified stacked bar 710 , for example, by dragging a pointing device from the expanded bar 600 to a neutral region 700 that does not correspond to any bar.
- more than one bar may be expanded based on user input.
- the bar that is engaged is expanded along with the bars adjacent to it.
- the expansion of the bar engaged may be more than the expansion of the adjacent bars.
- the amount of information displayed may be more for the bar that was engaged by the user compared to the adjacent bars that are also expanded.
- the bar that was engaged by the user may be distinguished compared to the adjacent bars that are expanded by using a different color, shading, or font size.
- FIG. 3 displays bars in a stacked bar using rectangular shapes.
- Alternative embodiments can display bars using other shapes, provided a width and a height can be identified in the shape, for example, three-dimensional blocks, cylindrical shapes, or, rectangular shapes with curved edges.
- FIG. 3 displays a single magnified stacked bar within the magnification region 300 .
- Other embodiments can display more stacked bars within the magnification region 300 .
- the number of bars displayed within the magnification region can be configured by the user.
- the entire bar chart may be displayed in the display screen 225 . If the number of stacked bars in the stacked bar chart is large, only a subset of adjacent stacked bars can be displayed on the display screen 225 . In this case, the user is provided with mechanisms to move the stacked bar chart relative to the magnification region 300 to be able to magnify different stacked bars. This may involve either keeping the magnification region 300 stationary and moving the chart, or keeping the chart stationary while moving the magnification region 300 or moving both.
- the user can point at a region outside the magnification region 300 and swipe along the x-axis causing the stacked bar chart to move along the x-axis while the magnification region 300 stays in the same region of the display screen 225 .
- the user can select a standard stacked bar that is displayed to cause the magnification region 300 to be displayed around the newly selected standard stacked bar and the previously magnified stacked bar to be displayed as a standard stacked bar.
- the movement of the stacked bar chart relative to the magnification region 300 causes different stacked bars to pass through the magnification region 300 .
- Each standard stacked bar that passes under the magnification region 300 becomes a magnified stacked bar.
- the individual bars of the stacked bar can be expanded to view additional information related to the bars.
- the transition of a standard stacked bar to a magnified stacked bar or the transition of a magnified stacked bar to a standard stacked bar is animated.
- the transition from a standard stacked bar to a magnified stacked bar can display bars of different sizes in between the standard stacked bar size and the magnified stacked bar size thereby presenting a smooth transition.
- Another embodiment displays the transition directly from the standard stacked bar to the magnified stacked bar or from magnified stacked bar to standard stacked bar without displaying any intermediate stages.
- the user can customize the animation settings; alternatively they may be determined automatically according to device type.
- Mechanisms are provided for the user to navigate across different portions of a chart so as to magnify them and view their details with the help of magnification region 300 .
- the user is able to bring different parts of the chart under the magnification region 300 by providing input that causes the chart to move relative to the magnification region 300 .
- a standard bar displayed on the display screen 225 can be brought under the magnification region 300 by clicking on the standard bar.
- the magnification region 300 may be moved from one portion of the display screen to another portion so as to bring a desired standard bar within the magnification region.
- One embodiment allows the user to scroll the bar chart by selecting a standard bar and dragging the bar with a swiping motion of the pointing/selecting device in a particular direction.
- Another embodiment allows the user to swipe across any area of the display screen to scroll the bar chart.
- the direction of swiping indicates the direction in which the user wants the bar chart to scroll.
- the distance the bar chart moves is determined by the magnitude of the swiping motion by the user.
- the distance the bar chart moves is determined by the speed of the swiping motion, such that swiping faster causes the bar chart to move larger distances.
- the swiping action by the user may cause the bar chart to start scrolling continuously until the user provides input indicating the user wants the bar chart to stop scrolling. The user may cause the bar chart to scroll until a desired bar is in the display area.
- the desired bar may be magnified by moving the magnification region to the bar, unless the bar is already in the magnification region 300 . If the scrolling of the bar chart causes the bar chart to reach an end of the chart, the chart stops scrolling since no new bars can be displayed by continuing the scrolling. The ends of the bar chart correspond to the smallest and the largest x-coordinate values for which the bar chart is intended to be displayed. Once the scrolling is stopped when the user input causes the bar chart to reach an end of the bar chart, the user can cause the bar chart to scroll in the opposite direction.
- FIG. 8 illustrates an embodiment that activates scrolling of the bar chart by tilting the display screen 225 .
- the direction in which the bar chart scrolls is determined by the angle of tilt.
- the device 815 shown in FIG. 8 can be tilted along any of the angles drawn along the circle 820 .
- the arrow 810 indicates that the angle of tilt is a positive angle less than 90°.
- the tilt may cause the left edge 340 to be higher than the right edge 325 .
- the tilt at the angle illustrated by arrow 810 causes the direction of scrolling of the bar chart to be 800 .
- the bars displayed under the magnification region 300 keep changing. The user may choose to change the angle to tilt back to 0° to stop the scrolling action.
- FIG. 9 illustrates how the angle of tilt can be negative as shown by the arrow 910 causing the bar chart to scroll in direction 900 , opposite to the direction 800 .
- the speed of scrolling is determined by the magnitude of the angle of tilt. For example, in FIG. 8 , if the angle of tilt 810 is selected to be 80°, the speed at which the bar chart scrolls is higher than the speed if the angle 810 was 10°. A user trying to reach a bar that is outside the display area and several bars away from the bars within the display area may start with a large angle of tilt to scroll fast towards the desired bar. The angle of tilt may be reduced as the desired bar gets closer to the display area. The angle of tilt is reduced to zero when the desired bar is within the display area causing the scrolling to stop. In certain embodiments, the speed at which the chart scrolls has a minimum or a maximum limit or both.
- the smallest amount of tilt that is detected causes the chart to scroll at or above the minimum speed.
- the maximum tilt for example, either 90° or ⁇ 90° does not cause the chart to scroll any faster than the maximum scrolling speed.
- the minimum and the maximum speed of scrolling of the chart can be predetermined for a system or configured by the user.
- changing the angle of tilt 810 to an angle within a predetermined range of angles close 90° causes the bar chart to directly move to the beginning of the bar chart corresponding to the smallest x-coordinate value that needs to be displayed.
- This behavior is an exception to the behavior described above, wherein the speed of scrolling of the bar chart is proportional to the magnitude of the angle.
- the angle of tilt is large enough to be within a predetermined angle close to 90°, the user input causes the bar chart to directly move to the beginning of the bar chart instead of continuing to scroll.
- the angle of tilt is within a predetermined range of angles close to ⁇ 90°, the end of the bar chart is displayed with the bar corresponding to the largest x-coordinate value that needs to be displayed.
- the data renderer 215 determines the dimensions of the chart to be displayed on the display screen 225 .
- FIG. 10 illustrates the process used to determine the width of stacked bars in the stacked bar chart. The calculations presented result in approximate values that can be further changed based on other criteria including aesthetics of appearance.
- the bar width of standard stacked bar SBwidth x is calculated 1000 using the following equation where CHARTwidth is the width of the display screen 225 used for displaying the chart and num_dp is the total number of data points in the chart. The gap between two bars is assumed to be the width of a standard bar.
- Equation (1) can be modified to calculate SBwidth x if the gap between two bars is determined by some other criteria.
- the minimum possible width of a standard bar SBwidth min is calculated 1000 as follows.
- height min font is the height of the smallest font size that can be used to display the data labels 315 and M is a predetermined value of the empty gap between two bars besides the text, for example, 0.1 point size.
- the standard bar width SBwidth x is compared 1005 with SBwidth min . If the value of SBwidth x is smaller than SBwidth min , the default view of the chart displays 1015 a subset of the standard bars of width SBwidth min . If the value of SBwidth x is at least as large as SBwidth min , the value SBwidth x is compared 1010 with the width of the magnified stacked bar in the magnification region MBwidth. The value of MBwidth is calculated based on the height height display — font of a font predetermined for displaying text in the magnified bar.
- MB width height display — font +2 *M display (3)
- the value M display is the margin predetermined to be displayed above and below the text in the magnified stacked bar. If the value of SBwidth x is at least as large as SBwidth min but smaller than MBwidth, the standard bars are displayed 1020 with width SBwidth x . If the value of SBwidth x calculated above is at least as large as MBwidth the bar charts are created 1025 with a width of MBwidth and magnification region is not necessary. Furthermore, in this case, in one embodiment any stacked bar displayed can be further magnified by expanding the bars in the stacked bar. The default text displayed for a magnified bar, for example, the aggregate stacked bar value can be displayed for all stacked bars.
- the x-axis in FIG. 3 is shown parallel to the bottom edge 350 and close to the bottom edge 350 .
- the x-axis in FIG. 3 is close to the bottom edge because all the y-coordinate values corresponding to the bars are positive and are shown above the x-axis. If the y-coordinate values corresponding to certain bars are negative, the corresponding bars need to be displayed below the x-axis. In this case, the x-axis is placed somewhere in between the top and bottom edge of the chart area. If all y-coordinate values of the data points are positive, the maximum height of a bar can be determined to be the same as the height of the chart area. The height Bheight x of any bar is determined by scaling the value appropriately based on the maximum height of the bars.
- the height chart — area is the height of the chart area that corresponds to the maximum height of the stacked bars
- DP max is the value of the y-coordinate corresponding to the stacked bar with maximum height
- DP x is the y-coordinate value corresponding to the stacked bar for which the height Bheight x is being calculated.
- the heights of the individual bars are scaled appropriately based on their y-coordinate values.
- each bar is calculated by the following equation.
- the tallest stacked bar corresponds to the minimum y-coordinate value DP min . Since the DP min value is negative, equation (3) uses the absolute function, represented by
- the bar chart needs to display stacked bars including individual bars with positive as well as negative y-coordinate values
- the positive bars are displayed above the x-axis and the negative bars below the x-axis.
- the x-axis is displayed between the lower chart edge 355 and the upper chart edge 360 such that the stacked bars can be displayed on either side of the x-axis.
- the distance Xheight of the x-axis from the lower edge 355 is calculated based on equation (5):
- the x-axis is displayed above the lower chart edge 355 such that the minimum cumulative y-coordinate value DP min of negative bars within a stacked bar can be displayed below the x-axis and the maximum cumulative y-coordinate value DP max of positive bars within a stacked bars can be displayed above the x-axis.
- the height of a bar Bheight x in this case is calculated using the equation (6).
- the bar chart may be displayed such that the x and the y axes are transposed.
- any reference to “one embodiment” or “an embodiment” means that a particular element, feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment.
- the appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment.
- Coupled and “connected” along with their derivatives. It should be understood that these terms are not intended as synonyms for each other. For example, some embodiments may be described using the term “connected” to indicate that two or more elements are in direct physical or electrical contact with each other. In another example, some embodiments may be described using the term “coupled” to indicate that two or more elements are in direct physical or electrical contact. The term “coupled,” however, may also mean that two or more elements are not in direct contact with each other, but yet still co-operate or interact with each other. The embodiments are not limited in this context.
- the terms “comprises,” “comprising,” “includes,” “including,” “has,” “having” or any other variation thereof, are intended to cover a non-exclusive inclusion.
- a process, method, article, or apparatus that comprises a list of elements is not necessarily limited to only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus.
- “or” refers to an inclusive or and not to an exclusive or. For example, a condition A or B is satisfied by any one of the following: A is true (or present) and B is false (or not present), A is false (or not present) and B is true (or present), and both A and B are true (or present).
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- User Interface Of Digital Computer (AREA)
- Devices For Indicating Variable Information By Combining Individual Elements (AREA)
Abstract
Description
- 1. Field of Art
- The disclosure generally relates to displaying reports on a device having a display area that is small relative to the amount of data that is being displayed.
- 2. Description of the Related Art
- There are several ways of using charts or graphs to visually present statistical data available in reports including, for example, bar charts, pie charts, line graphs, and scatter graphs. On a mobile device such as a handheld device, handheld computer, cell phone, tablet computer, or personal digital assistant (PDA), graphs and charts have to be displayed on small display screens with display areas that are limited in size compared to the data being shown. There are several challenges in trying to show graphs and charts on such devices. For example,
FIG. 1 illustrates a stacked bar chart and some of the obstacles encountered in displaying a stacked bar chart on a small screen.FIG. 1 displays anx-axis 135, a y-axis 130 and thecorresponding x-coordinate values 145 and the y-coordinate values 140 for the stacked bar chart. Eachstack 120 in a stacked bar chart corresponds to an x-coordinate value and represents multiple y-coordinate values where each value is displayed by a bar in the stack with height determined by the y-coordinate value corresponding to the bar. For example, thestacked bar 120 has threebars bar 120 corresponds to the aggregate y-coordinate value of all the bars in the stack. Additional information corresponding to the different kinds of bars may be represented by alegend 125. The height of each bar in astack 120 is proportional to the value represented by the bar. Due to the fixed resolution of typical display screens, two values that are very close may be represented by bars appearing to have the same height. Hence, the height of the bars may not truly represent the corresponding y-coordinate value. In addition, it is difficult for a viewer to know the exact value corresponding to eachbar stacked bar 120 by looking at the stacked bar. - The present invention enables the display of stacked bar charts on a device having a display area that is small compared to the amount of data being shown in the chart. Examples of suitable devices include tablet computers, smart phone devices, and mobile phones. A magnification region allows a portion of a chart or graph data to be displayed at a larger size that can display additional information compared to the graphic data displayed outside of the magnification region. Individual bars within the stacked bar can be further magnified to display information specific to the bar. A bar that is magnified is expanded to a height that is determined by the amount of information to be displayed for the bar. Visual indications associated with the bar in some embodiments indicate that the height of the bar is not indicative of its y-coordinate value, for example by displaying the bar as wiggling. When a bar in the stacked bar is expanded, the other bars in the stack may be reduced in height to accommodate the increase in height of the expanded bar. The location of either the chart or the magnification region can be moved to view detailed information for different stacked bars. Navigation mechanisms allow a user to efficiently reach a particular set of adjacent stacked bars that the user wants to magnify.
- The features and advantages described in the specification are not all inclusive and, in particular, many additional features and advantages will be apparent to one of ordinary skill in the art in view of the drawings, specification, and claims. Moreover, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the disclosed subject matter.
- The disclosed embodiments have other advantages and features which will be more readily apparent from the detailed description, the appended claims, and the accompanying figures (or drawings). A brief introduction of the figures is below.
-
FIG. 1 illustrates a conventional system displaying a stacked bar graph. -
FIG. 2 illustrates one embodiment of the architecture of a system for displaying data as bar graphs. -
FIG. 3 illustrates how a magnification region displays a magnified bar. -
FIGS. 4-6 show how individual bars of a magnified stacked bar may be expanded to display additional information corresponding to the expanded bar. -
FIG. 7 illustrates how a stacked bar chart displaying an expanded bar can be changed to a default magnification stacked bar. -
FIG. 8 shows how tilting a device displaying a stacked bar graph in a particular direction causes the stacked bar graph to scroll causing the stacked bars displayed in the magnification region to change. -
FIG. 9 shows how rotating a device in the direction opposite to that shown inFIG. 4 causes the stacked bar graph to scroll in the opposite direction. -
FIG. 10 shows a flowchart describing an embodiment of the process for calculating the stacked bar chart dimensions for displaying on a device with a magnification region. - The Figures and the following description relate to various embodiments by way of illustration only. It should be noted that from the following discussion, alternative embodiments of the structures and methods disclosed herein will be readily recognized as viable alternatives that may be employed without departing from the principles of what is claimed
- Reference will now be made in detail to several embodiments, examples of which are illustrated in the accompanying figures. It is noted that wherever practicable similar or like reference numbers may be used in the figures and may indicate similar or like functionality. The figures depict embodiments of the disclosed system (or method) for purposes of illustration only. One skilled in the art will readily recognize from the following description that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles described herein.
-
FIG. 2 is a block diagram of a system architecture in accordance with one embodiment. The components shown inFIG. 2 include a database (DB) 205, aDB controller module 210, adata renderer module 215, an input/output driver (I/O driver)module 220, and adisplay screen 225. Components such as thedisplay screen 225 are hardware components whereas theDB controller 210 and thechart renderer 215 are software modules. As used herein, the term “module” refers to a computer program logic and/or data for providing the specified functionality. A module can be implemented in hardware, firmware, and/or software. Examples of types of computers that implement the system shown inFIG. 2 include tablet computers, smart phone devices, and mobile phones. - The DB 205 stores data and metadata associated with reports. The DB 205 in one embodiment is implemented using a hard disk drive but can also be implemented using any other device capable of storing data, such as a writeable compact disc (CD) or DVD, or a solid state memory device, for example a flash memory. The
DB controller module 210 implements the logic to interface with the DB 205 so as to read data from the DB 205 or write data to the DB 205. TheDB controller 210 provides data to thedata renderer module 215, which computes information required for rendering the data. For example, the data renderer can determine the dimensions of a pie chart if the data needs to be displayed as a pie chart. The data and the information necessary for rendering the data are provided by thedata renderer 215 to the input/output driver 220. The input/output driver 220 provides thedisplay screen 225 with instructions and data necessary for displaying data and/or images. In various embodiments, thedisplay screen 225 is used to input data and/or commands. For example, a touch sensitive screen can sense the coordinates of the portion of the screen touched by a user. The user may touch thedisplay screen 225, for example, to select a command from a list of commands or to select a data element from a list of data elements displayed on the screen. In various embodiments, thedisplay screen 225 can be tilted by the user. The magnitude and direction of tilt of thedisplay screen 225 is detected and can be treated as an input. The angle of the tilt of the display screen is provided to the input/output driver 220 by hardware components such as an accelerometer. In some embodiments, a pointing device, such as a thumbwheel, mouse, track ball, or other type of pointing device is used to input data or commands into the system. The input/output driver 220 sends the data or instructions provided by thedisplay screen 225 to theDB controller 210. TheDB controller 210 in response to data or instructions received from the input/output driver 220 reads data fromDB 205 and writes data toDB 205. - A mobile device may be used to view reports available to a user. An example scenario allows the user to associate a particular report with a display mode, such as a pie chart, bar chart, or text mode. To allow the user to create an association between the report and a display mode, the user is presented with a list of display modes. The user may make a selection by touching the appropriate portion of the
display screen 225 showing a specific mode of display, or by providing input through another mechanism such as a keyboard or pointing device. TheDB controller 210 updates the metadata of the appropriate report in theDB 205 to store the information related to mode of display of the report. The information associating the report with a mode of display is used subsequently to display the report. - In another scenario, the user may be presented with a list of reports that can be reviewed. The user selects a particular report name and
data renderer 215, computes information to render the data which is then displayed ondisplay screen 225 in the specified format. Various other scenarios of interactions between the user and the various components and modules displayed inFIG. 2 are possible. -
FIG. 3 illustrates how amagnification region 300 can be used on adisplay screen 225 to effectively present a visual representation of a report using a stacked bar chart. The display screen comprises four edges, aleft edge 340, aright edge 325, atop edge 345, and abottom edge 350. Note that the naming of an edge, e.g., as a “bottom”, is for clarity of description—a particular device may support use in multiple orientations, in which case the physical edge of the device that is the “bottom” or “top” in one orientation can easily become a different edge in an alternative orientation. Our description here is not intended to be limited to a particular orientation. The x-axis is shown adjacent to thebottom edge 350 and thevalues 335 corresponding to the y-axis are shown adjacent to theright edge 325. The chart is displayed in an area enclosed within the edges of the display screen. For example, inFIG. 3 the chart area is within thelower chart edge 355 and anupper chart edge 360. - A user can activate the
magnification region 300 in a stacked bar chart with a default display by providing input, for example, by selecting a stacked bar in the default display of a stacked bar chart using a pointing device. Alternatively, themagnification region 300 can be displayed in a fixed portion of the display screen and the stacked bars of the stacked bar chart moved along the x-axis based on user input to cause specific stacked bars to overlap the magnification region to be magnified. - A stacked bar displayed within the
magnification region 300 is called a magnifiedstacked bar 315 and a stacked bar displayed outside themagnification region 300 is called a standardstacked bar 310. A magnified stacked bar is displayed using bars larger than or at least as large as a standard bar. The x-axis values 305 are shown next to eachstacked bar 315. In one embodiment, themagnification region 300 is a rectangular area with height at least as large as the maximum stacked bar height in the graph and a width at least as large as a standardstacked bar 310. The width of the magnifiedstacked bar 315 is larger than the width of a standardstacked bar 310 to allow information to be displayed for bars of the stacked bar. However the height of the bars in a magnified stacked bar by default may be same as the height that is displayed if the stacked bar was not magnified. In certain embodiments, a magnified bar by default displays the information related to the largest bar displayed in the magnified stacked bar. The information is displayed overlaying the corresponding bar with indication that the information is associated with the bar. Alternatively the information to be displayed 330 is truncated if necessary to display the information within the bar. For example, inFIG. 3 , thetext 330 “Santia $20.03” is a truncated version of text “Santiago $1,548,943” corresponding to the value of the data point represented by thebar 320. An alternative embodiment displays information associated with an aggregate value based on the bars of the stacked bar. For example, the sum of the y-coordinate values associated with each bar within the stacked bar can be displayed representing the cumulative height of the stacked bar. The text corresponding to the aggregate information associated with a stacked bar is displayed overlaying with the entire stacked bar so as to avoid associating the information with a particular bar. The aggregate information for a stacked bar can be further distinguished compared to information for individual bars, for example, by use of a different font or color. The magnified stacked bar displaying information by default is called a default magnified stacked bar. The stacked bar chart illustrated inFIG. 3 displays the x-coordinate value corresponding to each stacked bar next to the stacked bar using alabel 315 parallel to the stacked bar. In one embodiment, the stacked bars are separated by width at least equal to the width of a standard bar to allow the label corresponding to the x-coordinate to be displayed along with some margin between the label and an adjacent stacked bar. Alternatively, the stacked bars may be separated by a suitable width based on the height of the label text and a suitable margin. Alternative embodiments may not display the labels corresponding to the x-coordinate values by default. - Further magnification can be added to individual bars of a default magnified stacked bar by providing user input. As a result, individual bars are expanded to a height necessary to display additional information as illustrated in
FIG. 4 . The height of an expandedbar 400 can be larger than the height in the default display of thebar 320 in a default magnified stacked bar or a standard stacked bar which is determined by the y-coordinate value of the bar. An individual bar in a stacked bar can be expanded by engaging the bar. In one embodiment, a bar of the stacked bar is engaged by hovering the cursor on the specific bar with the help of a pointing device. Alternative embodiments allow engaging the bar by clicking with a pointing device when the cursor is within the region of the stacked bar. The bar within the magnified stacked bar that is engaged expands the least amount necessary to display information associated with the data point corresponding to the bar which can include its y-coordinate value. A magnified stacked bar that is not displaying a specific bar expanded with additional information is called a default magnified stacked bar. In some embodiments, the maximum height of the stacked bar with a specific bar expanded is limited to the maximum height of the chart. Alternatively, the maximum height to which a specific bar can be expanded is limited to a pre-defined maximum value. The other bars within the stacked bar retain their unexpanded height. Alternative embodiments may reduce the height of the bars not expanded to allow the engaged bar to be magnified more. The bar that is expanded does not display a height based on the y-coordinate value of the corresponding data point. Hence the expanded bar is displayed in a manner that distinguishes it from other bars displaying height based on their y-coordinate value. The expanded bar is considered to be displayed in an excited state, for example, it may be displayed as wiggling while the other bars are stationary, or it may be displayed with a different color or shading that distinguishes an expanded bar compared to bars not displayed in an excited state. Other embodiments may show the bar as flashing or pulsing. This distinction shows that the bar is not displaying a height based on its y-coordinate value. If a different bar within the stack is engaged or a different stacked bar is magnified, the bar in excited state is reverted to its normal height based on its y-coordinate value and is not displayed in an excited state. If the selected bar needs to display an amount of text that cannot be displayed within the region of the expanded bar, the text may be displayed overlaying the bar. Alternatively the text may be truncated and additional input required from the user to display the entire text. In some embodiments, the entire stacked bar may be displayed in an excited state. Embodiments that display an aggregate value associated with a default magnified stacked bar may not display the aggregate value once a specific bar is engaged and displayed in an excited state with additional information. Alternative embodiments may also increase the width of an expanded bar or the entire magnified stacked bar to allow additional information to be displayed. An increase in width may cause other bars displayed on the screen to be either reduced in width or to be moved outside the visible area of the chart. - When the user engages a different bar within a magnified stacked bar, for example,
stacked bar 500 shown inFIG. 5 or thestacked bar 600 shown inFIG. 6 , the bar originally expanded 400 returns to its normal height and thestacked bar bar label 510 or 610 respectively. In one embodiment, the transition of anunexpanded bar 415 to an expandedbar 500, the transition of a magnifiedstacked bar 400 to a standard stacked bar 520, is animated. For example, the transition from an unexpanded bar to an expanded bar can display bars of different sizes in between the unexpanded bar size and the expanded bar size thereby presenting a smooth transition. Another embodiment displays the transition directly from the unexpanded bar to the expanded bar or from expanded bar to unexpanded bar without displaying any intermediate stages. In one embodiment, the user can customize the animation settings; alternatively they may be determined automatically according to device type.FIG. 7 illustrates how in one embodiment, the user can provide input that causes the magnifiedbar 610 to be displayed as the default magnified stackedbar 710, for example, by dragging a pointing device from the expandedbar 600 to aneutral region 700 that does not correspond to any bar. - In some embodiments, more than one bar may be expanded based on user input. For example the bar that is engaged is expanded along with the bars adjacent to it. In some embodiments, the expansion of the bar engaged may be more than the expansion of the adjacent bars. In addition, the amount of information displayed may be more for the bar that was engaged by the user compared to the adjacent bars that are also expanded. Also, the bar that was engaged by the user may be distinguished compared to the adjacent bars that are expanded by using a different color, shading, or font size.
-
FIG. 3 displays bars in a stacked bar using rectangular shapes. Alternative embodiments can display bars using other shapes, provided a width and a height can be identified in the shape, for example, three-dimensional blocks, cylindrical shapes, or, rectangular shapes with curved edges.FIG. 3 displays a single magnified stacked bar within themagnification region 300. Other embodiments can display more stacked bars within themagnification region 300. The number of bars displayed within the magnification region can be configured by the user. - If the number of stacked bars in the bar chart is small, the entire bar chart may be displayed in the
display screen 225. If the number of stacked bars in the stacked bar chart is large, only a subset of adjacent stacked bars can be displayed on thedisplay screen 225. In this case, the user is provided with mechanisms to move the stacked bar chart relative to themagnification region 300 to be able to magnify different stacked bars. This may involve either keeping themagnification region 300 stationary and moving the chart, or keeping the chart stationary while moving themagnification region 300 or moving both. For example, the user can point at a region outside themagnification region 300 and swipe along the x-axis causing the stacked bar chart to move along the x-axis while themagnification region 300 stays in the same region of thedisplay screen 225. Alternatively the user can select a standard stacked bar that is displayed to cause themagnification region 300 to be displayed around the newly selected standard stacked bar and the previously magnified stacked bar to be displayed as a standard stacked bar. The movement of the stacked bar chart relative to themagnification region 300 causes different stacked bars to pass through themagnification region 300. Each standard stacked bar that passes under themagnification region 300 becomes a magnified stacked bar. Once a standard stacked bar is changed to a magnified stacked bar, the individual bars of the stacked bar can be expanded to view additional information related to the bars. In one embodiment, the transition of a standard stacked bar to a magnified stacked bar or the transition of a magnified stacked bar to a standard stacked bar is animated. For example, the transition from a standard stacked bar to a magnified stacked bar can display bars of different sizes in between the standard stacked bar size and the magnified stacked bar size thereby presenting a smooth transition. Another embodiment displays the transition directly from the standard stacked bar to the magnified stacked bar or from magnified stacked bar to standard stacked bar without displaying any intermediate stages. In one embodiment, the user can customize the animation settings; alternatively they may be determined automatically according to device type. - Mechanisms are provided for the user to navigate across different portions of a chart so as to magnify them and view their details with the help of
magnification region 300. The user is able to bring different parts of the chart under themagnification region 300 by providing input that causes the chart to move relative to themagnification region 300. For example, a standard bar displayed on thedisplay screen 225 can be brought under themagnification region 300 by clicking on the standard bar. In an alternative embodiment, themagnification region 300 may be moved from one portion of the display screen to another portion so as to bring a desired standard bar within the magnification region. One embodiment allows the user to scroll the bar chart by selecting a standard bar and dragging the bar with a swiping motion of the pointing/selecting device in a particular direction. Another embodiment allows the user to swipe across any area of the display screen to scroll the bar chart. The direction of swiping indicates the direction in which the user wants the bar chart to scroll. In some embodiments, the distance the bar chart moves is determined by the magnitude of the swiping motion by the user. In another embodiment the distance the bar chart moves is determined by the speed of the swiping motion, such that swiping faster causes the bar chart to move larger distances. In yet another embodiment, the swiping action by the user may cause the bar chart to start scrolling continuously until the user provides input indicating the user wants the bar chart to stop scrolling. The user may cause the bar chart to scroll until a desired bar is in the display area. Once the desired bar is in the display area, it may be magnified by moving the magnification region to the bar, unless the bar is already in themagnification region 300. If the scrolling of the bar chart causes the bar chart to reach an end of the chart, the chart stops scrolling since no new bars can be displayed by continuing the scrolling. The ends of the bar chart correspond to the smallest and the largest x-coordinate values for which the bar chart is intended to be displayed. Once the scrolling is stopped when the user input causes the bar chart to reach an end of the bar chart, the user can cause the bar chart to scroll in the opposite direction. -
FIG. 8 illustrates an embodiment that activates scrolling of the bar chart by tilting thedisplay screen 225. The direction in which the bar chart scrolls is determined by the angle of tilt. Thedevice 815 shown inFIG. 8 can be tilted along any of the angles drawn along thecircle 820. Thearrow 810 indicates that the angle of tilt is a positive angle less than 90°. As shown inFIG. 8 , the tilt may cause theleft edge 340 to be higher than theright edge 325. The tilt at the angle illustrated byarrow 810 causes the direction of scrolling of the bar chart to be 800. As the bar chart keeps scrolling, the bars displayed under themagnification region 300 keep changing. The user may choose to change the angle to tilt back to 0° to stop the scrolling action. Once the scrolling stops, the desired bar may already be under themagnification region 300 or be outside themagnification region 300 but within the display area. This allows the user to move themagnification region 300 to the desired bar or use an alternative mechanism to move the bar chart relative to the magnification region.FIG. 9 illustrates how the angle of tilt can be negative as shown by thearrow 910 causing the bar chart to scroll indirection 900, opposite to thedirection 800. - In one embodiment, the speed of scrolling is determined by the magnitude of the angle of tilt. For example, in
FIG. 8 , if the angle oftilt 810 is selected to be 80°, the speed at which the bar chart scrolls is higher than the speed if theangle 810 was 10°. A user trying to reach a bar that is outside the display area and several bars away from the bars within the display area may start with a large angle of tilt to scroll fast towards the desired bar. The angle of tilt may be reduced as the desired bar gets closer to the display area. The angle of tilt is reduced to zero when the desired bar is within the display area causing the scrolling to stop. In certain embodiments, the speed at which the chart scrolls has a minimum or a maximum limit or both. For example, the smallest amount of tilt that is detected causes the chart to scroll at or above the minimum speed. Similarly, the maximum tilt for example, either 90° or −90° does not cause the chart to scroll any faster than the maximum scrolling speed. The minimum and the maximum speed of scrolling of the chart can be predetermined for a system or configured by the user. - In certain embodiments, changing the angle of
tilt 810 to an angle within a predetermined range of angles close 90° causes the bar chart to directly move to the beginning of the bar chart corresponding to the smallest x-coordinate value that needs to be displayed. This behavior is an exception to the behavior described above, wherein the speed of scrolling of the bar chart is proportional to the magnitude of the angle. When the angle of tilt is large enough to be within a predetermined angle close to 90°, the user input causes the bar chart to directly move to the beginning of the bar chart instead of continuing to scroll. Similarly, if the angle of tilt is within a predetermined range of angles close to −90°, the end of the bar chart is displayed with the bar corresponding to the largest x-coordinate value that needs to be displayed. - The data renderer 215 determines the dimensions of the chart to be displayed on the
display screen 225.FIG. 10 illustrates the process used to determine the width of stacked bars in the stacked bar chart. The calculations presented result in approximate values that can be further changed based on other criteria including aesthetics of appearance. The bar width of standard stacked bar SBwidthx is calculated 1000 using the following equation where CHARTwidth is the width of thedisplay screen 225 used for displaying the chart and num_dp is the total number of data points in the chart. The gap between two bars is assumed to be the width of a standard bar. -
- Equation (1) can be modified to calculate SBwidthx if the gap between two bars is determined by some other criteria. The minimum possible width of a standard bar SBwidthmin is calculated 1000 as follows.
-
SBwidthmin=heightmin— font +M (2) - In equation (2) heightmin
— font is the height of the smallest font size that can be used to display the data labels 315 and M is a predetermined value of the empty gap between two bars besides the text, for example, 0.1 point size. The standard bar width SBwidthx is compared 1005 with SBwidthmin. If the value of SBwidthx is smaller than SBwidthmin, the default view of the chart displays 1015 a subset of the standard bars of width SBwidthmin. If the value of SBwidthx is at least as large as SBwidthmin, the value SBwidthx is compared 1010 with the width of the magnified stacked bar in the magnification region MBwidth. The value of MBwidth is calculated based on the height heightdisplay— font of a font predetermined for displaying text in the magnified bar. -
MBwidth=heightdisplay— font+2*M display (3) - The value Mdisplay is the margin predetermined to be displayed above and below the text in the magnified stacked bar. If the value of SBwidthx is at least as large as SBwidthmin but smaller than MBwidth, the standard bars are displayed 1020 with width SBwidthx. If the value of SBwidthx calculated above is at least as large as MBwidth the bar charts are created 1025 with a width of MBwidth and magnification region is not necessary. Furthermore, in this case, in one embodiment any stacked bar displayed can be further magnified by expanding the bars in the stacked bar. The default text displayed for a magnified bar, for example, the aggregate stacked bar value can be displayed for all stacked bars.
- The x-axis in
FIG. 3 is shown parallel to thebottom edge 350 and close to thebottom edge 350. The x-axis inFIG. 3 is close to the bottom edge because all the y-coordinate values corresponding to the bars are positive and are shown above the x-axis. If the y-coordinate values corresponding to certain bars are negative, the corresponding bars need to be displayed below the x-axis. In this case, the x-axis is placed somewhere in between the top and bottom edge of the chart area. If all y-coordinate values of the data points are positive, the maximum height of a bar can be determined to be the same as the height of the chart area. The height Bheightx of any bar is determined by scaling the value appropriately based on the maximum height of the bars. -
- In equation (3), the heightchart
— area is the height of the chart area that corresponds to the maximum height of the stacked bars, DPmax is the value of the y-coordinate corresponding to the stacked bar with maximum height, and DPx is the y-coordinate value corresponding to the stacked bar for which the height Bheightx is being calculated. The heights of the individual bars are scaled appropriately based on their y-coordinate values. - If all the y-coordinate values corresponding to the bars of the stacked bars are negative, all the bars have to be displayed below the x-axis. In this case, the x-axis may be displayed close to the
top edge 345 of the display screen. The height of each bar is calculated by the following equation. -
- The tallest stacked bar corresponds to the minimum y-coordinate value DPmin. Since the DPmin value is negative, equation (3) uses the absolute function, represented by |DPmin| to compute a positive Bheightx value.
- If the bar chart needs to display stacked bars including individual bars with positive as well as negative y-coordinate values, the positive bars are displayed above the x-axis and the negative bars below the x-axis. In this case, the x-axis is displayed between the
lower chart edge 355 and theupper chart edge 360 such that the stacked bars can be displayed on either side of the x-axis. In one embodiment, the distance Xheight of the x-axis from thelower edge 355 is calculated based on equation (5): -
- Essentially, the x-axis is displayed above the
lower chart edge 355 such that the minimum cumulative y-coordinate value DPmin of negative bars within a stacked bar can be displayed below the x-axis and the maximum cumulative y-coordinate value DPmax of positive bars within a stacked bars can be displayed above the x-axis. The height of a bar Bheightx in this case is calculated using the equation (6). -
- In certain embodiments, the bar chart may be displayed such that the x and the y axes are transposed.
- It is to be understood that the Figures and descriptions of the present invention have been simplified to illustrate elements that are relevant for a clear understanding of the present invention, while eliminating, for the purpose of clarity, many other elements found in a typical system that allows users to view report data. Those of ordinary skill in the art may recognize that other elements and/or steps are desirable and/or required in implementing the present invention. However, because such elements and steps are well known in the art, and because they do not facilitate a better understanding of the present invention, a discussion of such elements and steps is not provided herein. The disclosure herein is directed to all such variations and modifications to such elements and methods known to those skilled in the art.
- Some portions of above description describe the embodiments in terms of algorithms and symbolic representations of operations on information. These algorithmic descriptions and representations are commonly used by those skilled in the data processing arts to convey the substance of their work effectively to others skilled in the art. These operations, while described functionally, computationally, or logically, are understood to be implemented by computer programs or equivalent electrical circuits, microcode, or the like. Furthermore, it has also proven convenient at times, to refer to these arrangements of operations as modules, without loss of generality. The described operations and their associated modules may be embodied in software, firmware, hardware, or any combinations thereof.
- As used herein any reference to “one embodiment” or “an embodiment” means that a particular element, feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment.
- Some embodiments may be described using the expression “coupled” and “connected” along with their derivatives. It should be understood that these terms are not intended as synonyms for each other. For example, some embodiments may be described using the term “connected” to indicate that two or more elements are in direct physical or electrical contact with each other. In another example, some embodiments may be described using the term “coupled” to indicate that two or more elements are in direct physical or electrical contact. The term “coupled,” however, may also mean that two or more elements are not in direct contact with each other, but yet still co-operate or interact with each other. The embodiments are not limited in this context.
- As used herein, the terms “comprises,” “comprising,” “includes,” “including,” “has,” “having” or any other variation thereof, are intended to cover a non-exclusive inclusion. For example, a process, method, article, or apparatus that comprises a list of elements is not necessarily limited to only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Further, unless expressly stated to the contrary, “or” refers to an inclusive or and not to an exclusive or. For example, a condition A or B is satisfied by any one of the following: A is true (or present) and B is false (or not present), A is false (or not present) and B is true (or present), and both A and B are true (or present).
- In addition, use of the “a” or “an” are employed to describe elements and components of the embodiments herein. This is done merely for convenience and to give a general sense of the invention. This description should be read to include one or at least one and the singular also includes the plural unless it is obvious that it is meant otherwise.
- Upon reading this disclosure, those of skill in the art will appreciate still additional alternative structural and functional designs for a system and a process for displaying stacked bar charts through the disclosed principles herein. Thus, while particular embodiments and applications have been illustrated and described, it is to be understood that the disclosed embodiments are not limited to the precise construction and components disclosed herein. Various modifications, changes and variations, which will be apparent to those skilled in the art, may be made in the arrangement, operation and details of the method and apparatus disclosed herein without departing from the spirit and scope defined in the appended claims.
Claims (20)
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/413,496 US8239765B2 (en) | 2009-03-27 | 2009-03-27 | Displaying stacked bar charts in a limited display area |
CN2010800216010A CN102428435A (en) | 2009-03-27 | 2010-03-26 | Displaying stacked bar charts in a limited display area |
EP10756904.8A EP2411903A4 (en) | 2009-03-27 | 2010-03-26 | Displaying stacked bar charts in a limited display area |
PCT/US2010/028817 WO2010111585A1 (en) | 2009-03-27 | 2010-03-26 | Displaying stacked bar charts in a limited display area |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/413,496 US8239765B2 (en) | 2009-03-27 | 2009-03-27 | Displaying stacked bar charts in a limited display area |
Publications (2)
Publication Number | Publication Date |
---|---|
US20100251151A1 true US20100251151A1 (en) | 2010-09-30 |
US8239765B2 US8239765B2 (en) | 2012-08-07 |
Family
ID=42781542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/413,496 Active 2030-09-18 US8239765B2 (en) | 2009-03-27 | 2009-03-27 | Displaying stacked bar charts in a limited display area |
Country Status (4)
Country | Link |
---|---|
US (1) | US8239765B2 (en) |
EP (1) | EP2411903A4 (en) |
CN (1) | CN102428435A (en) |
WO (1) | WO2010111585A1 (en) |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100194754A1 (en) * | 2009-01-30 | 2010-08-05 | Quinton Alsbury | System and method for displaying bar charts with a fixed magnification area |
US20110050702A1 (en) * | 2009-08-31 | 2011-03-03 | Microsoft Corporation | Contribution based chart scaling |
US20120173501A1 (en) * | 2010-12-30 | 2012-07-05 | Tata Consultancy Services Limited | Configurable catalog builder system |
WO2012103953A1 (en) | 2011-02-03 | 2012-08-09 | Abb Technology Ag | The use of a graph in a process control system for displaying a physical property of a process controlled by the system |
US20120313957A1 (en) * | 2011-06-09 | 2012-12-13 | Microsoft Corporation | Staged Animated Transitions for Aggregation Charts |
US20120324370A1 (en) * | 2011-06-20 | 2012-12-20 | Research In Motion Limited | Apparatus, and associated method, for locating a message using graphical interface |
US20130176346A1 (en) * | 2012-01-11 | 2013-07-11 | Fih (Hong Kong) Limited | Electronic device and method for controlling display on the electronic device |
US20130300747A1 (en) * | 2012-05-11 | 2013-11-14 | Vmware, Inc. | Multi-dimensional visualization tool for browsing and troubleshooting at scale |
US20140258854A1 (en) * | 2012-05-31 | 2014-09-11 | Eric Qing Li | Method and apparatus for snapping to predefined locations on a scroll bar while navigating through a media program |
US20140282276A1 (en) * | 2013-03-15 | 2014-09-18 | Microsoft Corporation | Gestures involving direct interaction with a data visualization |
US20140282184A1 (en) * | 2013-03-15 | 2014-09-18 | International Business Machines Corporation | Generating an insight view while maintaining report context |
US8914740B1 (en) * | 2011-07-12 | 2014-12-16 | Domo, Inc. | Aligning segments of bar graphs for comparative analysis |
US20140380158A1 (en) * | 2013-06-24 | 2014-12-25 | Oracle International Corporation | Displaying tooltips to users of touch screens |
US20140380245A1 (en) * | 2013-06-24 | 2014-12-25 | Oracle International Corporation | Supporting navigation on touch screens displaying elements organized in a fixed number of dimensions |
US20150067568A1 (en) * | 2013-08-30 | 2015-03-05 | Samsung Electronics Co., Ltd. | Apparatus and method for displaying chart in electronic device |
US9356904B1 (en) * | 2012-05-14 | 2016-05-31 | Google Inc. | Event invitations having cinemagraphs |
US20170236314A1 (en) * | 2016-02-12 | 2017-08-17 | Microsoft Technology Licensing, Llc | Tagging utilizations for selectively preserving chart elements during visualization optimizations |
US20170351407A1 (en) * | 2011-07-12 | 2017-12-07 | Domo, Inc. | Automatic Creation of Drill Paths |
US20180164992A1 (en) * | 2016-12-09 | 2018-06-14 | Sap Se | System and method of providing spatiotemporal visualizations |
US20180240046A1 (en) * | 2015-02-09 | 2018-08-23 | Nec Corporation | Display system for displaying analytical information, method, and program |
US10347017B2 (en) * | 2016-02-12 | 2019-07-09 | Microsoft Technology Licensing, Llc | Interactive controls that are collapsible and expandable and sequences for chart visualization optimizations |
US10474352B1 (en) | 2011-07-12 | 2019-11-12 | Domo, Inc. | Dynamic expansion of data visualizations |
US20200037965A1 (en) * | 2010-02-12 | 2020-02-06 | Dexcom, Inc. | Receivers for analyzing and displaying sensor data |
US10593081B2 (en) * | 2016-04-19 | 2020-03-17 | Polaris Wireless, Inc. | System and method for graphical representation of spatial data |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9245362B2 (en) * | 2009-02-25 | 2016-01-26 | Mellmo, Inc. | Displaying bar charts with a fish-eye distortion effect |
CN102968808B (en) * | 2012-11-21 | 2016-08-10 | 华为技术有限公司 | Method and apparatus for display |
US9239670B2 (en) | 2013-03-15 | 2016-01-19 | International Business Machines Corporation | Graphical interface data fragment operations for data visualization |
US20150007079A1 (en) * | 2013-06-28 | 2015-01-01 | Silicon Graphics International Corp. | Combining parallel coordinates and histograms |
US11144184B2 (en) | 2014-01-23 | 2021-10-12 | Mineset, Inc. | Selection thresholds in a visualization interface |
US9747711B2 (en) | 2014-09-23 | 2017-08-29 | International Business Machines Corporation | Display of graphical representations of legends in virtualized data formats |
US9904456B2 (en) * | 2014-12-02 | 2018-02-27 | Business Objects Software Ltd. | Gesture-based visualization of data grid on mobile device |
US9741151B2 (en) | 2015-04-14 | 2017-08-22 | International Business Machines Corporation | Mobile interactive comparison chart |
US10049475B2 (en) | 2015-12-14 | 2018-08-14 | Microsoft Technology Licensing, Llc | Utilizing selective triggering events for optimizing chart visualization |
CN114625303B (en) * | 2020-12-10 | 2022-12-16 | 荣耀终端有限公司 | Window display method, terminal device and computer readable storage medium |
CN116401310B (en) * | 2023-06-08 | 2023-08-22 | 西安中科天塔科技股份有限公司 | Histogram stacking display method and device |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5619631A (en) * | 1995-06-07 | 1997-04-08 | Binaryblitz | Method and apparatus for data alteration by manipulation of representational graphs |
US5634133A (en) * | 1992-01-17 | 1997-05-27 | Compaq Computer Corporation | Constraint based graphics system |
US20060059439A1 (en) * | 2004-09-15 | 2006-03-16 | Hewlett-Packard Development Company, L.P. | Constructing substantially equal-width pixel bar charts to enable visual data analysis |
US20060055693A1 (en) * | 2004-09-15 | 2006-03-16 | Arizan Corporation | Method for requesting and viewing a zoomed area of detail from an image attachment on a mobile communication device |
US20060070013A1 (en) * | 2004-09-29 | 2006-03-30 | Peter Vignet | Method and system to drill down graphically |
US7089096B2 (en) * | 2000-10-17 | 2006-08-08 | Spx Corporation | Apparatus and method for displaying diagnostic values |
US20070268317A1 (en) * | 2006-05-18 | 2007-11-22 | Dan Banay | User interface system and method for selectively displaying a portion of a display screen |
US20070271500A1 (en) * | 2006-05-19 | 2007-11-22 | Think-Cell Software Gmbh | Display method, computer program product and computer system |
US20080192056A1 (en) * | 2007-02-12 | 2008-08-14 | Microsoft Corporation | Animated transitions for data visualization |
US20100058250A1 (en) * | 2008-08-28 | 2010-03-04 | Smartdraw.Com | Editing numeric charts |
US7779344B1 (en) * | 2006-10-31 | 2010-08-17 | Hewlett-Packard Development Company, L.P. | System and method for creating a value-based stacked bar chart |
US20100231595A1 (en) * | 2009-03-13 | 2010-09-16 | Microsoft Corporation | Large scale data visualization with interactive chart |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7218325B1 (en) * | 2004-03-31 | 2007-05-15 | Trading Technologies International, Inc. | Graphical display with integrated recent period zoom and historical period context data |
US7342584B2 (en) * | 2004-11-18 | 2008-03-11 | Amx, Llc | Method and computer program for implementing interactive bargraphs of any shape or design on a graphical user interface |
JP4037889B2 (en) * | 2006-03-30 | 2008-01-23 | 株式会社コナミデジタルエンタテインメント | Image generating apparatus, image generating method, and program |
CN100487699C (en) * | 2006-05-30 | 2009-05-13 | 北京北大方正电子有限公司 | Digital newspaper content viewing method |
US8570278B2 (en) * | 2006-10-26 | 2013-10-29 | Apple Inc. | Portable multifunction device, method, and graphical user interface for adjusting an insertion point marker |
EP1918802A1 (en) * | 2006-10-30 | 2008-05-07 | Research In Motion Limited | Method of improved viewing of visual objects on a display by enlarging a focused object |
CA2578980A1 (en) * | 2007-02-19 | 2008-08-19 | Cognos Incorporated | System and method of report rendering |
-
2009
- 2009-03-27 US US12/413,496 patent/US8239765B2/en active Active
-
2010
- 2010-03-26 EP EP10756904.8A patent/EP2411903A4/en not_active Withdrawn
- 2010-03-26 WO PCT/US2010/028817 patent/WO2010111585A1/en active Application Filing
- 2010-03-26 CN CN2010800216010A patent/CN102428435A/en active Pending
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5634133A (en) * | 1992-01-17 | 1997-05-27 | Compaq Computer Corporation | Constraint based graphics system |
US5844572A (en) * | 1995-06-07 | 1998-12-01 | Binaryblitz | Method and apparatus for data alteration by manipulation of representational graphs |
US5619631A (en) * | 1995-06-07 | 1997-04-08 | Binaryblitz | Method and apparatus for data alteration by manipulation of representational graphs |
US7089096B2 (en) * | 2000-10-17 | 2006-08-08 | Spx Corporation | Apparatus and method for displaying diagnostic values |
US20060059439A1 (en) * | 2004-09-15 | 2006-03-16 | Hewlett-Packard Development Company, L.P. | Constructing substantially equal-width pixel bar charts to enable visual data analysis |
US20060055693A1 (en) * | 2004-09-15 | 2006-03-16 | Arizan Corporation | Method for requesting and viewing a zoomed area of detail from an image attachment on a mobile communication device |
US20060070013A1 (en) * | 2004-09-29 | 2006-03-30 | Peter Vignet | Method and system to drill down graphically |
US20070268317A1 (en) * | 2006-05-18 | 2007-11-22 | Dan Banay | User interface system and method for selectively displaying a portion of a display screen |
US20070271500A1 (en) * | 2006-05-19 | 2007-11-22 | Think-Cell Software Gmbh | Display method, computer program product and computer system |
US7779344B1 (en) * | 2006-10-31 | 2010-08-17 | Hewlett-Packard Development Company, L.P. | System and method for creating a value-based stacked bar chart |
US20080192056A1 (en) * | 2007-02-12 | 2008-08-14 | Microsoft Corporation | Animated transitions for data visualization |
US20100214299A1 (en) * | 2007-02-12 | 2010-08-26 | Microsoft Corporation | Graphical manipulation of chart elements for interacting with chart data |
US20100058250A1 (en) * | 2008-08-28 | 2010-03-04 | Smartdraw.Com | Editing numeric charts |
US20100231595A1 (en) * | 2009-03-13 | 2010-09-16 | Microsoft Corporation | Large scale data visualization with interactive chart |
Cited By (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8228330B2 (en) * | 2009-01-30 | 2012-07-24 | Mellmo Inc. | System and method for displaying bar charts with a fixed magnification area |
US20100194754A1 (en) * | 2009-01-30 | 2010-08-05 | Quinton Alsbury | System and method for displaying bar charts with a fixed magnification area |
US20110050702A1 (en) * | 2009-08-31 | 2011-03-03 | Microsoft Corporation | Contribution based chart scaling |
US11769589B2 (en) * | 2010-02-12 | 2023-09-26 | Dexcom, Inc. | Receivers for analyzing and displaying sensor data |
US20220101995A1 (en) * | 2010-02-12 | 2022-03-31 | Dexcom, Inc. | Receivers for analyzing and displaying sensor data |
US20200037965A1 (en) * | 2010-02-12 | 2020-02-06 | Dexcom, Inc. | Receivers for analyzing and displaying sensor data |
US9043328B2 (en) * | 2010-12-30 | 2015-05-26 | Tata Consultancy Services Limited | Configurable catalog builder system |
US20120173501A1 (en) * | 2010-12-30 | 2012-07-05 | Tata Consultancy Services Limited | Configurable catalog builder system |
WO2012103953A1 (en) | 2011-02-03 | 2012-08-09 | Abb Technology Ag | The use of a graph in a process control system for displaying a physical property of a process controlled by the system |
US20120313957A1 (en) * | 2011-06-09 | 2012-12-13 | Microsoft Corporation | Staged Animated Transitions for Aggregation Charts |
US20120324370A1 (en) * | 2011-06-20 | 2012-12-20 | Research In Motion Limited | Apparatus, and associated method, for locating a message using graphical interface |
US10474352B1 (en) | 2011-07-12 | 2019-11-12 | Domo, Inc. | Dynamic expansion of data visualizations |
US10606435B1 (en) | 2011-07-12 | 2020-03-31 | Domo, Inc | Comparative graphical data representation |
US11340750B1 (en) * | 2011-07-12 | 2022-05-24 | Domo, Inc. | Comparative graphical data representation |
US20170351407A1 (en) * | 2011-07-12 | 2017-12-07 | Domo, Inc. | Automatic Creation of Drill Paths |
US9804726B1 (en) | 2011-07-12 | 2017-10-31 | Domo, Inc. | Comparative graphical data representation |
US8914740B1 (en) * | 2011-07-12 | 2014-12-16 | Domo, Inc. | Aligning segments of bar graphs for comparative analysis |
US10726624B2 (en) * | 2011-07-12 | 2020-07-28 | Domo, Inc. | Automatic creation of drill paths |
US20130176346A1 (en) * | 2012-01-11 | 2013-07-11 | Fih (Hong Kong) Limited | Electronic device and method for controlling display on the electronic device |
US20130300747A1 (en) * | 2012-05-11 | 2013-11-14 | Vmware, Inc. | Multi-dimensional visualization tool for browsing and troubleshooting at scale |
US9501849B2 (en) * | 2012-05-11 | 2016-11-22 | Vmware, Inc. | Multi-dimensional visualization tool for browsing and troubleshooting at scale |
US9356904B1 (en) * | 2012-05-14 | 2016-05-31 | Google Inc. | Event invitations having cinemagraphs |
US9632685B2 (en) * | 2012-05-31 | 2017-04-25 | Eric Qing Li | Method of navigating through a media program displayed on a portable electronic device in a magnified time scale |
US20140258854A1 (en) * | 2012-05-31 | 2014-09-11 | Eric Qing Li | Method and apparatus for snapping to predefined locations on a scroll bar while navigating through a media program |
US9760262B2 (en) * | 2013-03-15 | 2017-09-12 | Microsoft Technology Licensing, Llc | Gestures involving direct interaction with a data visualization |
US9715331B2 (en) * | 2013-03-15 | 2017-07-25 | International Business Machines Corporation | Generating an insight view while maintaining report context |
US20140282276A1 (en) * | 2013-03-15 | 2014-09-18 | Microsoft Corporation | Gestures involving direct interaction with a data visualization |
US9830058B2 (en) | 2013-03-15 | 2017-11-28 | International Business Machines Corporation | Generating an insight view while maintaining report context |
US20140282184A1 (en) * | 2013-03-15 | 2014-09-18 | International Business Machines Corporation | Generating an insight view while maintaining report context |
US10156972B2 (en) | 2013-03-15 | 2018-12-18 | Microsoft Technology Licensing, Llc | Gestures involving direct interaction with a data visualization |
US9495063B2 (en) * | 2013-06-24 | 2016-11-15 | Oracle International Corporation | Displaying tooltips to users of touch screens |
US9304666B2 (en) * | 2013-06-24 | 2016-04-05 | Oracle International Corporation | Supporting navigation on touch screens displaying elements organized in a fixed number of dimensions |
US20140380245A1 (en) * | 2013-06-24 | 2014-12-25 | Oracle International Corporation | Supporting navigation on touch screens displaying elements organized in a fixed number of dimensions |
US20140380158A1 (en) * | 2013-06-24 | 2014-12-25 | Oracle International Corporation | Displaying tooltips to users of touch screens |
JP2016534464A (en) * | 2013-08-30 | 2016-11-04 | サムスン エレクトロニクス カンパニー リミテッド | Apparatus and method for displaying chart in electronic device |
RU2679348C2 (en) * | 2013-08-30 | 2019-02-07 | Самсунг Электроникс Ко., Лтд. | Apparatus and method for displaying chart in electronic device |
US20150067568A1 (en) * | 2013-08-30 | 2015-03-05 | Samsung Electronics Co., Ltd. | Apparatus and method for displaying chart in electronic device |
WO2015030556A1 (en) * | 2013-08-30 | 2015-03-05 | Samsung Electronics Co., Ltd. | Apparatus and method for displaying chart in electronic device |
CN105579947A (en) * | 2013-08-30 | 2016-05-11 | 三星电子株式会社 | Apparatus and method for displaying chart in electronic device |
US20180240046A1 (en) * | 2015-02-09 | 2018-08-23 | Nec Corporation | Display system for displaying analytical information, method, and program |
US10748312B2 (en) * | 2016-02-12 | 2020-08-18 | Microsoft Technology Licensing, Llc | Tagging utilizations for selectively preserving chart elements during visualization optimizations |
US10347017B2 (en) * | 2016-02-12 | 2019-07-09 | Microsoft Technology Licensing, Llc | Interactive controls that are collapsible and expandable and sequences for chart visualization optimizations |
US20170236314A1 (en) * | 2016-02-12 | 2017-08-17 | Microsoft Technology Licensing, Llc | Tagging utilizations for selectively preserving chart elements during visualization optimizations |
US10713827B2 (en) | 2016-04-19 | 2020-07-14 | Polaris Wireless, Inc. | System and method for graphical representation of spatial data based on selection of a time window |
US10593081B2 (en) * | 2016-04-19 | 2020-03-17 | Polaris Wireless, Inc. | System and method for graphical representation of spatial data |
US10754533B2 (en) | 2016-12-09 | 2020-08-25 | Sap Se | System and method of providing spatiotemporal visualizations |
US20180164992A1 (en) * | 2016-12-09 | 2018-06-14 | Sap Se | System and method of providing spatiotemporal visualizations |
US10552024B2 (en) * | 2016-12-09 | 2020-02-04 | Sap Se | System and method of providing spatiotemporal visualizations |
Also Published As
Publication number | Publication date |
---|---|
CN102428435A (en) | 2012-04-25 |
US8239765B2 (en) | 2012-08-07 |
WO2010111585A1 (en) | 2010-09-30 |
EP2411903A1 (en) | 2012-02-01 |
EP2411903A4 (en) | 2013-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8239765B2 (en) | Displaying stacked bar charts in a limited display area | |
US8228330B2 (en) | System and method for displaying bar charts with a fixed magnification area | |
US8368699B2 (en) | Displaying bar charts with a fish-eye distortion effect | |
US8810574B2 (en) | Displaying pie charts in a limited display area | |
US10657685B2 (en) | Methods and devices for adjusting chart magnification | |
US20100309228A1 (en) | Displaying Multi-Dimensional Data Using a Rotatable Object | |
JP4093823B2 (en) | View movement operation method | |
JP4880334B2 (en) | Scrollable and resizable formula bar | |
EP2997443B1 (en) | Portable device and control method thereof | |
US9383916B2 (en) | Dynamic image presentation | |
US7665033B2 (en) | Using a zooming effect to provide additional display space for managing applications | |
RU2540826C2 (en) | Internal scroll activation and cursor adornment | |
US9245362B2 (en) | Displaying bar charts with a fish-eye distortion effect | |
EP2602706A2 (en) | User interactions | |
EP2881849A1 (en) | Gesture-based screen-magnified touchscreen navigation | |
US8762840B1 (en) | Elastic canvas visual effects in user interface | |
KR102161061B1 (en) | Method and terminal for displaying a plurality of pages | |
KR101641063B1 (en) | Apparatus and method for controlling terminal | |
JP6858241B2 (en) | Content display device | |
JP2017194899A (en) | Content display device and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MELLMO INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ALSBURY, QUINTON;BECERRA, DAVID;REEL/FRAME:022495/0417 Effective date: 20090324 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FEPP | Fee payment procedure |
Free format text: PAT HOLDER NO LONGER CLAIMS SMALL ENTITY STATUS, ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: STOL); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
REMI | Maintenance fee reminder mailed | ||
AS | Assignment |
Owner name: SAP SE, GERMANY Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MELLMO INC.;REEL/FRAME:038272/0046 Effective date: 20160216 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
SULP | Surcharge for late payment | ||
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 12 |