IP Library Granted Patent US 11,562,515
Granted Patent B2
US 11,562,515 · App. 17/306,056 · Granted Jan 24, 2023

Computer-implemented system and method for generating radial hierarchical data visualizations

Inventors: Francesco Barosi (Chicago, IL); Giuseppe Gasparro (New York, NY); Giacomo Cantu (Chicago, IL); Jeff Goldstein (Boston, MA); Luca Ridolfi (New York, NY)
Assignee: AlixPartners, LLP
G06T11/206G06Q10/067G06F3/0482G06T11/001G06T11/60
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,562,515
App. No.
17/306,056
Granted
Jan 24, 2023
Kind
B2
Abstract

A computer-implemented method includes storing hierarchical data in a data structure including first and second levels, a first set of nodes assigned to the first level, and a second set of nodes assigned to the second level. Each of the second set of nodes is associated with one of the first set of nodes. The second level is outward of the first level. The instructions include, for each node of the first set of nodes without an associated node at the second set of nodes, adding a ghost node to the second set of nodes and associating the ghost node with the each node. The instructions include counting the second set of nodes (including ghost nodes) and determining angular positions for the second set of nodes based on the count. The instructions include generating a radial graphical visualization by plotting a radial view based on the angular positions.

Claims (74)

1. A computer-implemented method for transforming hierarchical data into a radial graphical visualization, the method comprising:

storing, at a computer, hierarchical data in a computer-implemented data structure, wherein the data structure includes:

a plurality of data levels including a first level and a second level, wherein the second level is outward of the first level,

a first plurality of nodes assigned to the first level, and

a second plurality of nodes assigned to the second level, wherein each node of the second plurality of nodes is associated with a node of the first plurality of nodes;

for each node of the first plurality of nodes without an associated node at the second plurality of nodes, adding a ghost node to the second plurality of nodes and associating the ghost node with the each node;

counting, at the computer, a number of the second plurality of nodes including any ghost nodes in the second plurality of nodes;

determining, at the computer, angular positions for the second plurality of nodes according to the number of the second plurality of nodes and a metric;

determining, at the computer, a corresponding angular position for each node of the first plurality of nodes based on the angular positions of the nodes of the second plurality of nodes associated with the each node; and

generating, at the computer, the radial graphical visualization by plotting a radial view based on the angular positions of the first plurality of nodes and the angular positions of the second plurality of nodes.

2. The method of claim 1 wherein the plurality of data levels further comprises:

a third level outward of the second level; and

a third plurality of nodes assigned to the third level,

wherein each node of the third plurality of nodes is associated with a node of the second plurality of nodes.

3. The method of claim 2 further comprising, for each node of the second plurality of nodes without an associated node at the third plurality of nodes, adding a ghost node to the third plurality of nodes associated with the each node.

4. The method of claim 3 further comprising:

counting, at the computer, a number of the third plurality of nodes including any ghost nodes of the third plurality of nodes; and

determining, at the computer, angular positions for the third plurality of nodes according to the number of the third plurality of nodes.

5. The method of claim 4 wherein the plotting the radial view includes plotting the radial view according to the angular positions of the third plurality of nodes.

6. The method of claim 1 further comprising:

assigning, at the computer, a first radius to the first level; and

assigning, at the computer, a second radius to the second level,

wherein the plotting the radial view is further based on the first radius and the second radius.

7. The method of claim 1 wherein the plotting the radial view includes:

displaying, for each of the first plurality of nodes other than ghost nodes of the first plurality of nodes, a symbol according to the corresponding angular position; and

displaying, for each of the second plurality of nodes other than ghost nodes of the second plurality of nodes, a symbol according to the corresponding angular position.

8. The method of claim 7 further comprising:

assigning, at the computer, a first radius to the first level; and

assigning, at the computer, a second radius to the second level,

wherein the plotting the radial view is further based on the first radius and the second radius.

9. The method of claim 8 wherein the plotting the radial view includes:

displaying, for each of the first plurality of nodes other than ghost nodes of the first plurality of nodes, the symbol according to the corresponding angular position and the first radius; and

displaying, for each of the second plurality of nodes other than ghost nodes of the second plurality of nodes, a symbol according to the corresponding angular position and the second radius.

10. The method of claim 1 wherein the determining the angular positions for the second plurality of nodes includes:

dividing 360 degrees by the number of the second plurality of nodes; and

determining the angular positions as multiples of the division result,

wherein, for each of the first plurality of nodes, adjacent angular positions are determined for ones of the second plurality of nodes associated with the each node.

11. A non-transitory computer-readable medium comprising processor-executable instructions, the instructions including:

storing hierarchical data in a computer-implemented data structure, wherein the data structure includes:

a plurality of data levels including a first level and a second level, wherein the second level is outward of the first level,

a first plurality of nodes assigned to the first level, and

a second plurality of nodes assigned to the second level, wherein each node of the second plurality of nodes is associated with a node of the first plurality of nodes;

for each node of the first plurality of nodes without an associated node at the second plurality of nodes, adding a ghost node to the second plurality of nodes and associating the ghost node with the each node;

counting a number of the second plurality of nodes including any ghost nodes in the second plurality of nodes;

determining angular positions for the second plurality of nodes according to the number of the second plurality of nodes and a metric;

determining a corresponding angular position for each node of the first plurality of nodes based on the angular positions of the nodes of the second plurality of nodes associated with the each node; and

generating a radial graphical visualization for display by plotting a radial view based on the angular positions of the first plurality of nodes and the angular positions of the second plurality of nodes.

12. The computer-readable medium of claim 11 wherein the plurality of data levels further comprises:

a third level outward of the second level; and

a third plurality of nodes assigned to the third level,

wherein each node of the third plurality of nodes is associated with a node of the second plurality of nodes.

13. The computer-readable medium of claim 12 wherein the instructions further include, for each node of the second plurality of nodes without an associated node at the third plurality of nodes, adding a ghost node to the third plurality of nodes associated with the each node.

14. The computer-readable medium of claim 13 wherein the instructions further include:

counting a number of the third plurality of nodes including any ghost nodes of the third plurality of nodes; and

determining angular positions for the third plurality of nodes according to the number of the third plurality of nodes.

15. The computer-readable medium of claim 14 wherein the plotting the radial view includes plotting the radial view according to the angular positions of the third plurality of nodes.

16. The computer-readable medium of claim 11 wherein the instructions further include:

assigning a first radius to the first level; and

assigning a second radius to the second level,

wherein the plotting the radial view is further based on the first radius and the second radius.

17. The computer-readable medium of claim 11 wherein the plotting the radial view includes:

displaying, for each of the first plurality of nodes other than ghost nodes of the first plurality of nodes, a symbol according to the corresponding angular position; and

displaying, for each of the second plurality of nodes other than ghost nodes of the second plurality of nodes, a symbol according to the corresponding angular position.

18. The computer-readable medium of claim 17 wherein the instructions further include:

assigning a first radius to the first level; and

assigning a second radius to the second level,

wherein the plotting the radial view is further based on the first radius and the second radius.

19. The computer-readable medium of claim 18 wherein the plotting the radial view includes:

displaying, for each of the first plurality of nodes other than ghost nodes of the first plurality of nodes, the symbol according to the corresponding angular position and the first radius; and

displaying, for each of the second plurality of nodes other than ghost nodes of the second plurality of nodes, a symbol according to the corresponding angular position and the second radius.

20. The computer-readable medium of claim 11 wherein the determining the angular positions for the second plurality of nodes includes:

dividing 360 degrees by the number of the second plurality of nodes; and

determining the angular positions as multiples of the division result,

wherein, for each of the first plurality of nodes, adjacent angular positions are determined for ones of the second plurality of nodes associated with the each node.

Assignments (2)
SECURITY INTEREST Recorded Aug 12, 2025
From: ALIXPARTNERS, LLP
To: BANK OF AMERICA, N.A.
Reel/Frame 071997/0733 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2021
From: BAROSI, FRANCESCO; GASPARRO, GIUSEPPE; CANTU, GIACOMO; GOLDSTEIN, JEFF; RIDOLFI, LUCA
To: ALIXPARTNERS, LLP
Reel/Frame 056114/0755 →
Continuity (3)
Continuation 16531448 · Aug 5, 2019
Continuation 15305626
Related Publication 20210327109A1 · Oct 21, 2021