Sweep Procedure for UI Data Label Overlap Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In cloud-based database systems, default display configurations for charts often result in overlapping data labels, which are difficult to read, especially when viewed on devices with varying screen sizes or when data dynamically updates, leading to inefficient manual adjustments and high processing overhead in identifying and handling overlaps.

Innovation Solution

A 'sweep' procedure is implemented to efficiently determine the placement of data labels by reducing the complexity of identifying overlapping objects from a two-dimensional orthogonal rectangle intersection search to a one-dimensional interval search, allowing for automatic modification of label positions to prevent overlaps and improve readability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If default display configuration is used for chart labels, then the implementation is simple and fast, but the labels overlap and become difficult to read

Engineering Contradiction:
Improvereadability of labelsVSAvoidcomplexity of label placement algorithm
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The label placement problem is segmented into two phases: (1) a sweeping procedure that efficiently identifies overlapping labels by processing labels in sorted order along one axis, and (2) a repositioning phase that moves overlapping labels to alternative positions. This segmentation allows the system to maintain simplicity while improving readability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The label placement system performs self-service by automatically detecting and resolving label overlaps without requiring manual user intervention. The sweeping procedure autonomously identifies conflicts and triggers repositioning actions, making the system self-correcting while maintaining ease of operation.

Inventive Principle:
Principle #25Self-service

2Ease of operation

If manual repositioning of labels is performed, then readability improves temporarily, but the labels overlap again when the user interface is resized or data updates

Engineering Contradiction:
Improvereadability of labelsVSAvoidtime for repeated manual adjustments
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The label placement system implements dynamics by making label positions adaptive rather than static. The sweeping procedure continuously monitors label positions and automatically repositions labels in response to dynamic changes such as UI resizing or data updates, eliminating the need for repeated manual adjustments and reducing time loss.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system incorporates feedback mechanisms where the sweeping procedure detects label overlaps and triggers automatic repositioning actions. This closed-loop feedback ensures that labels maintain readability throughout the application lifecycle without requiring user intervention, addressing the time loss issue.

Inventive Principle:
Principle #23Feedback

3Reliability

If a comprehensive algorithm is used to identify all overlapping labels, then all overlaps are detected, but the processing overhead and latency increase significantly

Engineering Contradiction:
Improvecompleteness of overlap detectionVSAvoidprocessing speed of label placement
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The sweeping procedure transforms the two-dimensional overlap detection problem into a one-dimensional problem by sorting labels along one axis and processing them in sequence. This dimensional reduction maintains complete overlap detection reliability while dramatically improving processing speed and productivity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Solution Approach 2:

The system changes parameters by sorting labels based on their coordinate values before processing. This parameter transformation enables the sweeping procedure to efficiently identify overlaps in linear time rather than requiring exhaustive pairwise comparisons, thus maintaining reliability while enhancing productivity.

Inventive Principle:
Principle #35Parameter changes

4Adaptability or versatility

If label positions are fixed after initial placement, then the implementation is simple, but the labels do not adapt when data dynamically updates or UI is resized

Engineering Contradiction:
Improveadaptability of label positions to dynamic changesVSAvoidcomplexity of dynamic label repositioning system
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The label placement system implements dynamics by making label positions adaptive rather than static. The sweeping procedure continuously monitors label positions and automatically repositions labels in response to dynamic changes such as UI resizing or data updates, eliminating the need for repeated manual adjustments and reducing time loss.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10990256B2Modifying default display configurations for objects in a user interface
Publication Date: 2021.04.27 SALESFORCE INC
  • US10990256B2 patent drawing
  • US10990256B2 patent drawing
  • US10990256B2 patent drawing

AI summary

Methods, systems, and devices for modifying default display configurations for objects in a user interface are described. A system may support automatically drawing objects in a user interface such that the objects do not overlap and are legible to a user. To draw the objects with no overlaps, the system may determine when objects overlap based on a sweep procedure that identifies locations of default positions for each object to be displayed in the user interface. If two objects are identified to overlap in both a first and a second dimension during the sweep procedure, the system may modify one of the objects to prevent the overlap. For example, the system may hide the object or may find a next best location to draw the object such that the objects no longer overlap. Performing the sweep procedure may reduce latency and processing resources needed to identify any overlapping objects.