Xref Graph

circle-info

Starting with IDA 9.2, the external qwingraph used to make graphs has been replaced with our native and interactive graphing tool, Xref Graph.

The integrated Xref Graph visualizes cross-reference relationships between code and data elements in a binary through an interactive interface. Xref Graph is available right out of the box via View → Graphs → Xrefs to|from and View → Graphs → Manage....

Core Features

  • Interactive graph visualization of cross-references

  • Multiple node types (code, data, imports) with distinct visual styling

  • Filtering options to focus your analysis

  • Force-directed layout with interactive adjustment

  • Multiple savable graphs per database

  • Fully supported dark theme

circle-check

How to use Xref Graph

Xref Graph Basic Controls

  • Move nodes around: Click and drag a selected node

  • Pan: Click and drag graph background to move the whole graph. Hold Shift while dragging to pan without accidentally selecting and moving nodes.

  • Zoom: Hold Ctrl/CMD while scrolling to zoom in/out

  • Jump to address: Double-click a node to navigate to the corresponding item in the IDA View

  • Layout: Use the Space key to pause or resume the layout mechanism

Adding and Removing Nodes

You can add or remove nodes from the graph using the right-click context menu on a node, or by using the following shortcuts with one or more nodes selected:

  • Press A to add all cross-referenced nodes (All Xrefs)

  • Press F to add nodes referenced by the selected nodes (Xrefs From)

  • Press T to add nodes that reference the selected nodes (Xrefs To)

  • Press X to open a chooser dialog for selecting specific cross-references (Xref from or to)

  • Press D to delete the selected nodes (Delete)

  • Press P to pin the node in place

Components of the main graph view

Nodes

Nodes represent code, data, or import elements and are color-coded:

  • Blue: Code (functions, instructions)

  • Green: Data (variables, structures)

  • Pink: Imports (external references)

Each node displays the name of the element it represents.

Information Display

  • Node information: Hover over a node to see details in the top-left corner: name, address, type, and cross-reference counts

  • Edge information: Hover over an edge to see source, destination, and reference type details

Fit to viewport

The Fit to viewport option adjusts the view to optimally display content:

  • W (Now) — Fits selected nodes to the viewer; if no nodes are selected, it fits the entire graph.

  • Shift-W (Always) — Enables continuous fitting to the viewer.

Overlay elements

Minimap

Press M to toggle the minimap, which shows an overview of the entire graph and helps with navigation in large graphs. The minimap highlights the current viewport area for easy orientation.

Press S to toggle the Search Bar and Layout button to improve visibility.

Options Panel

Press O to toggle the options panel, which includes:

Filters

The filters section allows you to control which elements are displayed:

  • Node name filter - Filter nodes by name

  • Filter orphan nodes - Hide nodes with no visible connections

  • Edge type filters - Show/hide specific edge types (Read, Write, Offset, Code)

  • Node type filters - Show/hide specific node types (Code, Data, Import)

The number of filtered (hidden) nodes is displayed at the top of the filter panel.

Layout Configuration

The force-directed graph layout can be customized with the following parameters:

  • Drag - Controls how quickly node movement slows down (damping)

  • Gravity - Pulls nodes toward the center of the graph

  • Repulsion - Controls how strongly nodes push each other away

  • Spring strength - Determines how rigidly the edges hold nodes together

  • Spring length - Sets the preferred distance between connected nodes

  • Minimum velocity - Threshold below which node movement stops

  • Maximum velocity - Caps the maximum speed of node movement

  • Node mass - Base mass value for nodes (affects how easily they move)

  • Edge mass - Base mass value for edges (affects how easily group of nodes move)

  • Timestep - Controls the simulation speed

  • Theta threshold - Performance parameter for the Barnes-Hut approximation

Click "Reset the layout parameters" to restore default values.

Last updated

Was this helpful?