ECharts Widget for Zabbix - Monzphere
This module adds a customizable widget to Zabbix that allows creating interactive charts using the ECharts library.
-
Support for multiple chart types:
- Gauge
- Liquid Chart
- Pie Chart
- Horizontal Bar Chart
- Multi-level Gauge
- Treemap Chart
- Nightingale Rose Chart
- Funnel Chart
- Treemap/Sunburst Chart
- LLD Table
- Temporal Line Chart (NEW)
- Temporal Area Chart (NEW)
-
6 built-in color themes for different environments and use cases
-
Simplified configuration through Zabbix interface
-
Automatic item unit detection
-
Real-time updates
-
Light/Dark theme support
-
Interactive and responsive tooltips
-
Interactive zoom and navigation
-
Automatic value formatting based on item units
The module includes 6 carefully designed color themes that ensure optimal visibility and accessibility:
- Default - ECharts standard colors with excellent contrast
- Zabbix - Native Zabbix trigger severity colors (Information, Warning, Average, High, Disaster)
- Pastel - Soft, pastel colors for a subtle appearance
- Bright - Vibrant, high-contrast colors for better visibility
- Dark - Deep, saturated colors perfect for dark themes
- Blue Monochrome - Various shades of blue for a professional look
- Smart Allocation: Colors are distributed evenly across data series
- Automatic Cycling: When you have more series than colors, the system intelligently cycles through the palette
- Consistent Mapping: Each data series maintains its color throughout the visualization
- Accessibility Compliant: All themes follow accessibility guidelines for color contrast
- Displays value in a circular gauge format
- Dynamic colors based on value with theme-aware palettes
- Support for multiple color ranges
- Smooth value update animation
- Liquid fill visualization
- Fluid animation
- Dynamic colors based on value
- Perfect for percentage representation
- Pie/donut visualization
- Support for multiple values with intelligent color distribution
- Informative labels with theme-consistent styling
- Hover interaction with enhanced color emphasis
- Horizontal bar visualization
- Automatic value-based sorting
- Pagination support for many items
- Informative labels with units
- Multiple gauges in a single chart
- Distinct colors for each level
- Independent level animation
- Ideal for comparisons
- Hierarchical data visualization
- Interactive zoom
- Dynamic value-based colors
- Breadcrumb navigation
- Segmented circular visualization
- Perfect for value comparison
- Informative tooltips
- Interactive animation
- Funnel-shaped visualization
- Ideal for sequential processes
- Informative labels
- Smooth animation
- Automatic alternation between views
- Animated transition
- Rich interaction
- Perfect for hierarchical data
- Table format visualization
- Pagination support
- Column sorting
- Automatic value formatting
- Modern, clean visualization with optimized layout and reduced visual clutter
- Historical data visualization over time with interactive zoom and pan
- Multiple items displayed as different colored lines with smooth animations
- Native Zabbix time period integration - fully compatible with dashboard time filters
- Smart tooltips with enhanced formatting and cross-axis indicators
- Auto-scaling Y-axis labels (K, M, G formatting for large numbers)
- Intelligent time formatting - shows time for today, date+time for other days
- Configurable smooth lines, legend, and grid display
- Real-time data updates with staggered animations
- Time period indicator in widget header
- Responsive design that adapts to widget size
- Beautiful gradient fill areas with transparency effects
- All temporal line chart features included
- Overlapping area visualization instead of stacking for better readability
- Perfect for visualizing data trends and accumulations
- Native Zabbix time period integration
- Enhanced visual appeal with modern gradients
- Chart Type: Select desired chart type
- Color Theme: Choose from 6 professional color themes
- Items: Choose items to monitor
- For temporal charts, configure:
- Time period - uses native Zabbix time period selector with dashboard time filter integration
- Show/hide legend
- Show/hide grid
- Enable/disable smooth lines
- The widget automatically:
- Detects item units
- Formats values appropriately
- Adjusts colors and scales
- Configures tooltips and interactions
- Retrieves historical data for temporal charts
The widget automatically formats values based on item units:
- Bytes (B, KB, MB, GB, TB)
- Percentages (%)
- Rates per second (B/s, KB/s, etc)
- Numeric values with appropriate precision
- Scientific notation for very large/small values
- Adaptive colors based on values
- Light/Dark themes
- Responsive and always visible tooltips
- Smooth interactions and animations
- Responsive layout that adapts to widget size
- Native Zabbix Integration: Uses Zabbix's History API for data retrieval and
CWidgetFieldTimePeriodfor time management - Dashboard Time Filter Integration: Seamlessly works with dashboard time filters and global time settings
- Time Period Display: Shows current time period in widget header with visual indicator
- Performance Optimized: Efficient data loading with configurable limits (max 1000 points per item)
- Real-time Updates: Automatic refresh following widget refresh intervals
- Multi-item Support: Display multiple items on the same temporal chart with distinct colors
- Interactive Navigation: Zoom, pan, and tooltip interactions with ECharts
- Responsive Design: Adapts to different widget sizes and screen resolutions
- Professional Time Formatting: Consistent with other Zabbix time-based widgets
Contributions are welcome! Please feel free to submit pull requests.
This project is licensed under the AGPL-3.0 license
