Exploring Your Code Visually with Enhanced Graphs Options (original) (raw)

Understand 7.1 brings a significantly enhanced graphing experience, designed to make exploring and understanding your codebase more intuitive and efficient. This article will walk you through the exciting new features: Interactive Node Previews with AI Summaries and the Enhanced Graph Customization Panel.

Interactive Node Previews with AI Summaries: Get Instant Insights

Gone are the days of having to jump back and forth between your code graph and individual files to understand what a specific entity represents. With our new Interactive Node Previews, you can now get a quick glimpse into the code and a concise AI-powered summary directly within the graph view.

How to Use It:

  1. Generate a Graph: Begin by generating any graph in SciTools Understand (e.g., Dependency Graph, Call Graph, Include Graph).
  2. Select a Node: Simply click on any node within the generated graph.
  3. **View the Preview:**A panel will appear (typically on the lower portion of your screen) displaying:
    • Code Snippet: A relevant snippet of the code associated with the selected node. This allows you to quickly see the context and structure of the entity.
    • AI Summary: A brief, intelligent summary generated by our AI, explaining the purpose and functionality of the code represented by the node.
    • Information Browser : Alongside the code snippet and AI summary, you'll find key information from the Understand Information Browser relevant to the selected node. This can include:
      * Location: The file and line number where the entity is defined.
      * Metrics: Relevant code metrics associated with the entity (e.g., lines of code, complexity).
      * References: A quick overview of where this entity is used in the codebase.
      * Callers/Callees: For functions, a summary of what calls this function and what functions it calls.
      * And more: The specific information displayed will depend on the type of entity selected.

Example Scenario:

Imagine you've generated a Call Graph and are looking at a function node named calculate_average. Clicking on this node will instantly show you a preview that might include the function's signature, a few key lines of code within the function, and an AI summary like: "This function calculates the average of a list of numerical inputs, handling potential empty list scenarios."

Benefits:

Enhanced Graph Customization Panel: Tailor Your Visualizations

The upgraded Graph Customization Panel, located on the right side of your graph view, offers powerful controls to tailor the graph display to your specific analysis needs. Instead of primarily focusing on styling based on metrics, this panel allows you to strategically select, filter, and configure the elements of your graph for clearer insights.

Key Customization Options

The options available in the Enhanced Graph Customization Panel adapt to the type of graph you are viewing, offering context-specific controls such as:

Example Use Cases:

How to Use the Panel:

  1. Generate a Graph: Begin by generating a graph in SciTools Understand.
  2. Access the Customization Panel: The panel is located on the right side of your Understand window when a graph is active.
  3. Explore and Adjust: Navigate through the different sections of the panel (e.g., "Nodes," "Edges," "Visibility," "Highlighting") and use the available controls (checkboxes, dropdown menus, text input fields) to configure your graph display.
  4. Observe Changes: The graph will update in real-time as you modify the settings, allowing you to iteratively refine your visualization. If the changes require more processing time, a popup notification will inform you when the updated graph is ready, so you can continue exploring in the meantime.

By providing granular control over the selection, visibility, and information displayed within your graphs, the Enhanced Graph Customization Panel empowers you to create focused and insightful visualizations tailored to your specific analytical goals.

More of a visual learner? Watch the graph enhancements in action: