User Guide

User Interface Overview

DenseDraw features a clean, professional interface designed for efficient graph exploration and analysis. The interface is optimized for working with large datasets while maintaining intuitive controls.

Main Interface Components

Graph Viewport

The central area where your graph is displayed. Supports smooth zooming, panning, and real-time interaction with millions of nodes and edges.

Information Panel

Side panel showing graph statistics, node count, edge count, and current selection information.

Window Title

Window title displays the current graph name and statistics (node count, edge count).

Debug Overlay

Optional debug information overlay (F12) showing performance metrics and system status.

Tab System

DenseDraw supports multiple graph tabs, allowing you to work with several datasets simultaneously. Each tab maintains its own graph data and selection state.

Supported File Formats

DenseDraw supports a variety of popular graph and data formats, making it easy to import your existing datasets.

CSV Files (.csv)

Comma-separated values with automatic delimiter detection.

  • Supports comma, space, and tab delimiters
  • Automatic format detection
  • Node and edge data parsing

GraphML (.graphml, .xml)

XML-based graph description format.

  • Node and edge definitions
  • Position data preservation
  • Attribute support

DOT Files (.dot)

Graphviz DOT format for graph definitions.

  • Standard DOT syntax
  • Node and edge declarations
  • Basic attribute parsing

Compressed Archives

Support for compressed graph files.

  • TAR.GZ archives (.tar.gz)
  • TGZ files (.tgz)
  • Automatic decompression

File Size Limits

DenseDraw is optimized for large datasets:

  • CSV Files: Up to several GB in size
  • Node Count: Tested with over 1 million nodes
  • Edge Count: Tested with over 10 million edges
  • Memory Usage: Efficient processing minimizes RAM requirements

Importing Your Data

File Loading Process

DenseDraw provides simple file loading with automatic format detection:

  1. File Selection: Use Ctrl+O to open the file dialog
  2. Format Detection: Automatic detection based on file extension
  3. Processing: Files are loaded with progress indication
  4. Positioning: Nodes are automatically positioned if no layout data exists

CSV Processing

CSV files are processed with intelligent parsing:

  • Automatic delimiter detection (comma, space, tab)
  • Support for both node lists and edge lists
  • Handles various CSV structures automatically

Error Handling

File loading includes robust error handling:

  • Clear error messages for unsupported formats
  • File size and memory validation
  • Progress tracking for large files

Graph Interaction

Selection System

DenseDraw provides rectangle-based selection for working with large graphs:

Rectangle Selection

Drag with left mouse button to create a selection rectangle. All nodes within the rectangle are selected automatically using GPU-accelerated processing.

Selection Information

The interface displays information about selected nodes:

  • Total count of selected nodes
  • Node identifiers and names
  • Position coordinates
  • Distance from selection center

Visualization Options

Node Positioning

DenseDraw handles node positioning with intelligent algorithms:

Automatic Layout

Intelligent positioning system for new graphs.

  • Random initial positioning within view bounds
  • Collision detection and resolution
  • Spatial hashing for efficient processing
  • Optimized for large node counts

Position Preservation

Maintains node positions from input files.

  • Loads existing positions from GraphML files
  • Preserves coordinate systems
  • Collision resolution for overlapping nodes
  • Coordinate bounds validation

Visual Rendering

  • High-Performance Rendering: GPU-accelerated node and edge drawing
  • Real-time Updates: Smooth rendering optimized for large graphs
  • Zoom-Responsive: Maintains visual quality at all zoom levels
  • Selection Highlighting: Visual feedback for selected nodes

Performance Tips

Working with Large Graphs

Best practices for optimal performance with massive datasets:

  • Start Small: Preview your data with a subset before loading the full dataset
  • Use Filtering: Filter out unnecessary elements to focus on relevant data
  • Adjust Detail Levels: Reduce visual complexity for smoother interaction
  • GPU Memory: Ensure adequate graphics memory for very large graphs
  • System Memory: Have sufficient RAM for data processing

Built-in Optimizations

  • GPU Acceleration: All rendering happens on the graphics card
  • Efficient Collision Detection: Spatial hashing for fast node placement
  • Memory Management: Advanced leak detection and monitoring
  • Progressive Loading: Large files load with progress indication

Hardware Recommendations

  • Graphics Card: Dedicated GPU with 2GB+ VRAM recommended
  • System RAM: 16GB recommended for large graphs
  • Storage: SSD recommended for faster data loading
  • Display: High-resolution monitor for detailed visualization

Debug Information

Press F12 to toggle debug information display, which shows performance metrics and system status.