Skip to main content

syncfusion-winforms-pivot-chart

Implement Syncfusion Windows Forms Pivot Chart control for visualizing multidimensional data with interactive drill-down capabilities. Use this when working with pivot charts, pivot data visualization, drill-down charts, hierarchical chart data, or business intelligence visualizations. Supports 11+ chart types (Line, Spline, Column, Area, Stacking), data binding with IEnumerable/DataTable, drill up/down operations, pivot table field list, grouping bar, legend customization, Excel export, zooming, scrolling, and touch support.

Datos de origen

Repositorio
syncfusion/winforms-ui-components-skills
Última actividad en el origen
6 de julio de 2026 a las 07:19
Idioma detectado de SKILL.md
inglés
Estrellas
2
Forks
0

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Explorador de archivos
15 archivos

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
syncfusion-winforms-pivot-chart
description
Implement Syncfusion Windows Forms Pivot Chart control for visualizing multidimensional data with interactive drill-down capabilities. Use this when working with pivot charts, pivot data visualization, drill-down charts, hierarchical chart data, or business intelligence visualizations. Supports 11+ chart types (Line, Spline, Column, Area, Stacking), data binding with IEnumerable/DataTable, drill up/down operations, pivot table field list, grouping bar, legend customization, Excel export, zooming, scrolling, and touch support.
metadata
{"author":"Syncfusion Inc","version":"34.1.29"}
# Implementing Syncfusion Pivot Chart A comprehensive guide for implementing the Syncfusion Pivot Chart control in Windows Forms applications. The Pivot Chart provides interactive visualization of multidimensional pivot data with drill-down capabilities, supporting 11+ chart types and advanced features like grouping bar, field list, and Excel export. ## When to Use This Skill Use this skill when you need to: - **Visualize pivot data** in graphical format with multiple chart types - **Implement drill-down/drill-up** functionality to navigate through hierarchical data levels - **Create business intelligence dashboards** with interactive pivot visualizations - **Analyze multidimensional data** from IEnumerable lists or DataTables - **Build OLAP visualization** interfaces for analytical applications - **Add interactive data exploration** with grouping bar and pivot field list - **Export pivot charts** to Excel format for reporting - **Display hierarchical sales, financial, or analytical data** in chart format - **Implement Excel-like pivot chart** functionality in Windows Forms applications - **Create dynamic charts** that update based on pivot field selections ## Component Overview The **Syncfusion Pivot Chart** is a lightweight, high-performance control that reads pivot information and visualizes it in graphical format. It provides: - **11+ Chart Types:** Line, Spline, Column, Area, Spline Area, Stacking Area, Stacking Column, Stacking Area 100, Stacking Column 100, Step Line, Step Area - **Drill Support:** Navigate through inner levels of data hierarchy with drill-down/drill-up - **Data Binding:** Support for IEnumerable lists and DataTable sources - **Pivot Table Field List:** Built-in pivot schema designer similar to Microsoft Excel - **Grouping Bar:** Interactive drag-and-drop grouping of data fields - **Legend:** Color-coded series identification - **Export:** Export to Excel format - **Zooming and Scrolling:** Interactive data exploration - **Touch Support:** Touch-friendly for tablets and touch-enabled devices - **Real-time Updates:** Automatic chart updates when data changes ## Documentation and Navigation Guide ### Getting Started 📄 **Read:** [references/getting-started.md](references/getting-started.md) - Assembly deployment and dependencies - Adding control via designer, code, or Syncfusion Reference Manager - Licensing requirements (v16.2.0.x+) - Basic initialization and first data binding - ItemSource, PivotAxis, PivotLegend, and PivotCalculations setup ### Data Binding 📄 **Read:** [references/data-binding.md](references/data-binding.md) - Binding IEnumerable lists and DataTable sources - Configuring ItemSource property - Setting up PivotAxis for hierarchical data - Configuring PivotLegend for series categorization - Setting up PivotCalculations for data aggregation - Real-time updates with EnableUpdating - Performance optimization with BeginUpdate/EndUpdate ### Chart Types 📄 **Read:** [references/chart-types.md](references/chart-types.md) - Overview of 11 supported chart types - Line, Spline, Step Line charts - Column and Stacking Column charts - Area, Spline Area, Step Area charts - Stacking Area and Stacking Column (100%) charts - Switching chart types dynamically - ChartTypes enumeration - Choosing appropriate chart type for your data ### Drill Operations 📄 **Read:** [references/drill-operations.md](references/drill-operations.md) - Enabling drill-down/drill-up functionality - AllowDrillDown property configuration - Navigating through hierarchical data levels - Using expanders for drill operations - Programmatic drill operations - User interactions and drill events ### Grouping Bar 📄 **Read:** [references/grouping-bar.md](references/grouping-bar.md) - Enabling and configuring grouping bar - Interactive drag-and-drop field grouping - Field manipulation and rearrangement - Visibility and customization options - User interactions with grouping bar ### Pivot Axis Configuration 📄 **Read:** [references/pivot-axis.md](references/pivot-axis.md) - Understanding PivotAxis property - Adding PivotItem objects to axis - FieldMappingName for data field binding - TotalHeader for aggregate displays - Multiple axis items for hierarchical structure - Axis customization options ### Pivot Table Field List 📄 **Read:** [references/pivot-table-field-list.md](references/pivot-table-field-list.md) - Built-in pivot schema designer - Microsoft Excel-like field list interface - Enabling and displaying field list - Drag-and-drop field configuration - Filter setup and management - Calculation field configuration - User interactions with field list ### Legend 📄 **Read:** [references/legend.md](references/legend.md) - Configuring PivotLegend property - Color coding for series identification - Legend positioning and layout - Visibility and customization options - Series labels and formatting ### Sorting 📄 **Read:** [references/sorting.md](references/sorting.md) - Sorting pivot data in charts - Ascending and descending sort orders - Multiple field sorting and Custom sort logic - Sort configuration options ### Export 📄 **Read:** [references/export.md](references/export.md) - Exporting pivot charts to Excel - Export configuration and options - File format settings - Programmatic export operations - Customizing exported output ### Zooming and Scrolling 📄 **Read:** [references/zooming-scrolling.md](references/zooming-scrolling.md) - Interactive zoom functionality - Scroll support for large datasets and Mouse wheel zoom operations - Zoom configuration and customization - Scrollbar appearance and behavior ### Touch Support 📄 **Read:** [references/touch-support.md](references/touch-support.md) - Touch gesture support for tablets - Touch interactions (tap, swipe, pinch) - Optimizing for touch-enabled devices - Touch gesture configuration - Mobile and tablet considerations ### Appearance and Customization 📄 **Read:** [references/appearance-customization.md](references/appearance-customization.md) - Chart area customization - Series styling and colors and Color palette configuration - Print support and settings - Custom styling options ### Troubleshooting 📄 **Read:** [references/troubleshooting.md](references/troubleshooting.md) - Common issues and solutions - Data binding errors and fixes - Performance optimization tips - How to enable drill-down and to print the pivot chart - How to set custom color palettes, debugging and diagnostic tips ## Quick Start Example ### Minimal Pivot Chart Implementation ```csharp using System; using System.Windows.Forms; using Syncfusion.Windows.Forms.PivotChart; using Syncfusion.PivotAnalysis.Base; namespace PivotChartDemo { public partial class Form1 : Form { private PivotChart pivotChart1; public Form1() { InitializeComponent(); // Initialize Pivot Chart pivotChart1 = new PivotChart(); pivotChart1.Dock = DockStyle.Fill; // Bind data source pivotChart1.ItemSource = ProductSales.GetSalesData(); // Configure Pivot Axis (hierarchical structure) pivotChart1.PivotAxis.Add(new PivotItem { FieldMappingName = "Product", TotalHeader = "Total" }); pivotChart1.PivotAxis.Add(new PivotItem { FieldMappingName = "Country", TotalHeader = "Total" }); pivotChart1.PivotAxis.Add(new PivotItem { FieldMappingName = "State", TotalHeader = "Total" }); // Configure Pivot Legend (series categorization) pivotChart1.PivotLegend.Add(new PivotItem { FieldMappingName = "Date", TotalHeader = "Total" }); // Configure Calculations (data aggregation) pivotChart1.PivotCalculations.Add(new PivotComputationInfo { FieldName = "Quantity", Format = "#,##0" }); // Set chart type pivotChart1.ChartTypes = PivotChartTypes.Column; // Enable drill-down pivotChart1.AllowDrillDown = true; // Add to form this.Controls.Add(pivotChart1); } } } ``` ## Common Patterns ### Pattern 1: Binding to IEnumerable Collection ```csharp using System.Collections.Generic; // Data model public class SalesData { public string Product { get; set; } public string Region { get; set; } public string Quarter { get; set; } public int Quantity { get; set; } public decimal Amount { get; set; } } // Create and bind data private void BindPivotChart() { List<SalesData> salesList = new List<SalesData> { new SalesData { Product = "Laptop", Region = "North", Quarter = "Q1", Quantity = 50, Amount = 50000 }, new SalesData { Product = "Laptop", Region = "South", Quarter = "Q1", Quantity = 40, Amount = 40000 }, new SalesData { Product = "Mouse", Region = "North", Quarter = "Q1", Quantity = 200, Amount = 6000 }, // Add more data... }; pivotChart1.ItemSource = salesList; // Configure fields pivotChart1.PivotAxis.Add(new PivotItem { FieldMappingName = "Product", TotalHeader = "Total" }); pivotChart1.PivotLegend.Add(new PivotItem { FieldMappingName = "Quarter", TotalHeader = "Total" }); pivotChart1.PivotCalculations.Add(new PivotComputationInfo { FieldName = "Amount", Format = "C", SummaryType = SummaryType.DoubleTotalSum }); } ``` ### Pattern 2: Switching Chart Types Dynamically ```csharp // Add buttons or menu items to switch chart types private void btnLineChart_Click(object sender, EventArgs e) { pivotChart1.ChartTypes = PivotChartTypes.Line; } private void btnColumnChart_Click(object sender, EventArgs e) { pivotChart1.ChartTypes = PivotChartTypes.Column; } private void btnAreaChart_Click(object sender, EventArgs e) { pivotChart1.ChartTypes = PivotChartTypes.Area; } private void btnStackingColumn_Click(object sender, EventArgs e) { pivotChart1.ChartTypes = PivotChartTypes.StackingColumn; } ``` ### Pattern 3: Hierarchical Drill-Down Configuration ```csharp // Enable drill-down with multiple hierarchy levels private void ConfigureDrillDown() { pivotChart1.AllowDrillDown = true; // Define hierarchy: Category → Product → Region → State pivotChart1.PivotAxis.Clear(); pivotChart1.PivotAxis.Add(new PivotItem { FieldMappingName = "Category", TotalHeader = "All Categories" }); pivotChart1.PivotAxis.Add(new PivotItem { FieldMappingName = "Product", TotalHeader = "All Products" }); pivotChart1.PivotAxis.Add(new PivotItem { FieldMappingName = "Region", TotalHeader = "All Regions" }); pivotChart1.PivotAxis.Add(new PivotItem { FieldMappingName = "State", TotalHeader = "All States" }); } ``` ### Pattern 4: Real-Time Data Updates ```csharp // Enable automatic updates when data changes private void ConfigureRealTimeUpdates() { // Enable automatic chart updates pivotChart1.EnableUpdating = true; // Bind to observable collection or implement INotifyPropertyChanged var salesData = new BindingList<SalesData>(GetSalesData()); pivotChart1.ItemSource = salesData; // Now any changes to salesData will automatically update the chart } // For bulk updates, use BeginUpdate/EndUpdate private void BulkDataUpdate() { pivotChart1.BeginUpdate(); try { // Perform multiple data operations var data = (BindingList<SalesData>)pivotChart1.ItemSource; for (int i = 0; i < 100; i++) { data.Add(new SalesData { /* ... */ }); } } finally { pivotChart1.EndUpdate(); // Chart updates once after all changes } } ``` ### Pattern 5: Multiple Calculations with Formatting ```csharp // Display multiple aggregated values with custom formatting private void ConfigureMultipleCalculations() { pivotChart1.PivotCalculations.Clear(); // Total quantity pivotChart1.PivotCalculations.Add(new PivotComputationInfo { FieldName = "Quantity", Format = "#,##0", SummaryType = SummaryType.DoubleTotalSum, FieldHeader = "Total Qty" }); // Total amount (currency) pivotChart1.PivotCalculations.Add(new PivotComputationInfo { FieldName = "Amount", Format = "C2", SummaryType = SummaryType.DoubleTotalSum, FieldHeader = "Total Amount" }); // Average price pivotChart1.PivotCalculations.Add(new PivotComputationInfo { FieldName = "UnitPrice", Format = "C2", SummaryType = SummaryType.DoubleAverage, FieldHeader = "Avg Price" }); } ``` ## Key Properties and Methods ### Core Properties | Property | Type | Description | |----------|------|-------------| | `ItemSource` | object | Data source (IEnumerable or DataTable) | | `PivotAxis` | PivotItemCollection | Fields for chart axis (hierarchical) | | `PivotLegend` | PivotItemCollection | Fields for legend/series | | `PivotCalculations` | PivotComputationInfoCollection | Calculation/aggregation fields | | `ChartTypes` | PivotChartTypes | Chart type (Line, Column, Area, etc.) | | `AllowDrillDown` | bool | Enable drill-down/drill-up operations | | `EnableUpdating` | bool | Auto-update when data changes | ### PivotItem Properties | Property | Type | Description | |----------|------|-------------| | `FieldMappingName` | string | Name of data field to bind | | `TotalHeader` | string | Header text for total/aggregate row | | `FieldHeader` | string | Display header for the field | ### PivotComputationInfo Properties | Property | Type | Description | |----------|------|-------------| | `FieldName` | string | Name of field to calculate | | `Format` | string | Number format string | | `SummaryType` | SummaryType | Aggregation type (Sum, Average, Count, etc.) | | `FieldHeader` | string | Display name for calculation | ### Key Methods | Method | Description | |--------|-------------| | `BeginUpdate()` | Suspend chart updates for bulk operations | | `EndUpdate()` | Resume chart updates and refresh | | `Refresh()` | Manually refresh the chart | ## Common Use Cases ### Business Intelligence Dashboard - Visualize sales data by product, region, and time period - Drill down from yearly to quarterly to monthly views - Compare multiple metrics (quantity, revenue, profit) ### Financial Analysis - Display financial data across departments, periods, and categories - Analyze budget vs. actual spending with hierarchical drill-down - Visualize profit/loss trends across business units ### Marketing Analytics - Analyze campaign performance by channel, region, and time period - Compare multiple KPIs (impressions, clicks, conversions) - Drill down from campaign level to ad group level ## Performance Considerations 1. **Use BeginUpdate/EndUpdate** for bulk data operations to prevent multiple redraws 2. **Limit hierarchy depth** - 3-4 levels is optimal for performance and usability 3. **Filter data** before binding rather than binding entire dataset 4. **Consider data volume** - for very large datasets (100k+ rows), pre-aggregate data ## Best Practices 1. **Always register license key** before creating pivot chart control
Ver en GitHub
Este SKILL.md es muy grande, por eso SkillsMP muestra aqui solo la primera seccion. Ver en GitHub