Visualizations
Access interactive dashboards, network graphs, and analytical visualizations for your knowledge graphs. Visualizations are generated by the EnhancedKGVisualizer agent component and can be embedded in your applications. All visualization endpoints interface with the MainOrchestrator's visualization service.
/api/visualizations/
Get an overview of all knowledge graphs with available visualizations.
Get Visualization Metadata
Get detailed metadata about available visualizations for a specific KG.
GET /api/visualizations/{kg_name}/metadata
Response
Access Dashboard HTML
Get the interactive dashboard HTML for embedding in your application.
GET /api/visualizations/{kg_name}/dashboard.html
Response
Returns HTML content ready for iframe embedding or direct display.
Access Network Visualization
Get the interactive network graph visualization.
GET /api/visualizations/{kg_name}/network_visualization.html
Response
Returns interactive network graph HTML with entity relationships.
POST /api/visualizations/{kg_name}/regenerate - Regenerate Visualizations
Regenerate visualizations for a knowledge graph. Routes through EnhancedKGVisualizer.generate_visualizations().
Request
Query Parameters
| Parameter | Type | Description |
|---|---|---|
job_id | string | Optional ingestion job ID to regenerate after |
Agent Interaction
GET /api/visualizations/{kg_name}/ - Get Visualization Index
Serve index page with links to all visualizations for a KG.
Request
Response
Returns HTML index page with navigation links to all available visualizations.
DELETE /api/visualizations/{kg_name} - Delete Visualizations
Delete all visualizations for a knowledge graph.
Request
Response
Check Visualization Service Health
Verify the visualization service is operational.
GET /api/visualizations/health
Response
Embedding Visualizations
Visualizations can be embedded in your applications using iframes or by downloading the HTML files directly. Use the visualization URLs returned by the API to embed interactive dashboards in your web applications.
Visualization Types
Dashboard
- Purpose: Comprehensive overview of KG statistics
- Contains: Entity distribution, relation types, source breakdown
- Technology: Plotly interactive charts
- Best for: Executive summaries, monitoring
Network Visualization
- Purpose: Explore entity relationships visually
- Contains: Force-directed graph, entity nodes, relationship edges
- Technology: D3.js or Cytoscape
- Best for: Relationship discovery, pattern identification
Entity Distribution
- Purpose: Show entity type breakdown
- Contains: Bar/pie charts of entity counts by type
- Technology: Plotly/Chart.js
- Best for: Data quality assessment
Relation Types
- Purpose: Analyze relationship patterns
- Contains: Charts showing relationship type distribution
- Technology: Plotly
- Best for: Schema understanding
Error Responses
No Visualizations Available
Visualization Generation Failed
Customization
While visualizations are auto-generated, you can customize their appearance using URL parameters:
Best Practices
- Check availability: Verify visualizations exist before embedding
- Use iframes: Embed visualizations in iframes for security
- Cache metadata: Cache visualization metadata to reduce API calls
- Responsive design: Ensure iframe containers are responsive
- Loading states: Show loading indicators while visualizations load
- Error handling: Handle 404s gracefully for KGs without data
- Performance: Large KGs may have heavy visualizations, show warnings
Performance Considerations
| KG Size | Visualization Load Time | Recommendations |
|---|---|---|
| Small (<1K entities) | <1 second | All visualizations work well |
| Medium (1K-10K entities) | 1-3 seconds | Network visualization may be slower |
| Large (10K+ entities) | 3-10 seconds | Use filtered views, limit network nodes |
Security
- API Key Required: All visualization endpoints require authentication
- Iframe Sandbox: Use sandbox attribute when embedding untrusted visualizations
- CORS: Configure CORS headers if embedding from different domains
- CSP: Ensure Content Security Policy allows embedded visualizations