Overview
Cristalyse’s theming system provides complete control over chart appearance. Choose from built-in themes or create custom designs that match your brand perfectly.Built-in Themes
Default Light Theme
Perfect for standard applications with clean, professional aesthetics:Dark Theme
Optimized for dark mode interfaces and low-light environments:Solarized Light
Based on the popular Solarized color scheme, easy on the eyes:Solarized Dark
Dark variant of Solarized for comfortable night viewing:Theme Properties
- Colors
- Dimensions
- Typography
backgroundColor- Chart container backgroundplotBackgroundColor- Data plotting area backgroundprimaryColor- Default geometry colorborderColor- Chart borders and outlinesgridColor- Grid line coloraxisColor- Axis lines and labelscolorPalette- Array of colors for multi-series data
Creating Custom Themes
Corporate Branding
Create themes that match your brand colors:High Contrast Accessibility
Optimize for users with visual impairments:Minimal Theme
Clean design for modern interfaces:Theme Modifications
Using copyWith()
Modify existing themes while preserving most properties:Dynamic Theme Selection
Switch themes based on app state:Custom Category Colors
Using customPalette()
Assign specific colors to chart categories instead of relying on theme defaults. Perfect for brand consistency and semantic coloring:Semantic Color Mapping
Use meaningful colors for status, performance, or categorical data:Department Analytics
Consistent colors across organizational charts:Smart Fallback Behavior
Categories not specified in your custom palette automatically use theme defaults:Important: The
customPalette() method requires a color mapping in your .mapping() call.
Categories not specified in categoryColors will automatically use colors from your theme’s colorPalette.Advanced Theming Patterns
Conditional Color Palettes
Adapt colors based on data characteristics:Responsive Theme Sizing
Adjust theme properties based on screen size:Best Practices
Color Accessibility
Color Accessibility
- Ensure sufficient contrast ratios (4.5:1 minimum)
- Test with colorblind-friendly palettes
- Provide alternative visual cues beyond color
- Consider WCAG 2.1 guidelines for data visualization
Consistency
Consistency
- Use the same theme across related charts
- Maintain consistent color meanings (red = danger, green = success)
- Keep typography hierarchy consistent
- Align with your app’s overall design system
Performance
Performance
- Reuse theme objects rather than creating new ones
- Cache theme calculations for dynamic themes
- Use
copyWith()for minor modifications - Consider theme switching animation performance
Customization
Customization
- Start with built-in themes as foundation
- Test themes with various data types and sizes
- Consider responsive design for different screen sizes
- Document custom theme usage for team members
Custom Category Colors
Custom Category Colors
- Use
customPalette()for brand-specific or semantic colors - Maintain consistent color meanings across charts
- Leverage fallback behavior for unmapped categories
- Combine with themes for complete visual control
- Test color accessibility and contrast ratios
Theme Gallery
Corporate Blue
Professional theme with brand-focused blue palette and clean typography
High Contrast
WCAG-compliant theme optimized for visual accessibility
Minimal Dark
Clean dark theme perfect for modern dashboards
Scientific
High-precision theme designed for scientific data visualization
Next Steps
Interactions
Add hover effects and user interactions to themed charts
Animations
Animate theme transitions and chart rendering
Export
Export themed charts with consistent styling
Custom Themes
Advanced techniques for creating complex theme systems