Comment créer un graphique avec EPPlus avec plusieurs séries?

J’essaie de créer ce graphique en utilisant EPPlus:

Area Imports Exports North America 9.00010837 14.54751448 South America 7.878137347 4.878011063 Europe 32.41924303 39.37317481 Middle East 6.859031587 12.94288951 Africa 7.611513341 2.938054884 Asia 36.23196633 25.32035526 

Le résultat devrait ressembler à:

Graphique en cluster de colonnes Excel

Voici mon code:

 dataSheet.Cells["A1"].Value = "Area"; dataSheet.Cells["B1"].Value = "Imports"; dataSheet.Cells["C1"].Value = "Exports"; var row = 2; foreach (var item in items) { dataSheet.Cells["A" + row].Value = item.GeographicalAreaPersianName; dataSheet.Cells["B" + row].Value = item.ImportsShare; dataSheet.Cells["C" + row].Value = item.ExportsShare; row++; } var diagram = diagramSheet.Drawings.AddChart("chart", eChartType.ColumnClustered); for (int i = 2; i <= row; i++) { var series = diagram.Series.Add($"'Data'!B{i}:C{i}", $"'Data'!A{i}:A{i}"); } diagram.Border.Fill.Color = System.Drawing.Color.Green; 

Ce que j’obtiens pourtant:

Graphique en cluster de colonnes Excel

Comme vous pouvez le constater, le titre de la série n’est pas affiché correctement et je ne trouve pas l’aide appropriée dans EPPlus. Comment puis-je corriger cela?

Supposons que les données sont stockées comme illustré par la capture d’écran suivante:

données excel

Ce qui suit devrait faire l’affaire:

 var diagram = worksheet.Drawings.AddChart("chart", eChartType.ColumnClustered); for (int i = 2; i <= row; i++) { var series = diagram.Series.Add($"B{i}:C{i}", "B1:C1"); series.Header = worksheet.Cells[$"A{i}"].Value.ToString(); } diagram.Border.Fill.Color = System.Drawing.Color.Green; 

Le deuxième paramètre de la méthode Add correspond au titre de la série {"Imports", "Exports"}

Pour les zones, vous devez définir l'en-tête.

Le graphique obtenu ressemble à ceci: (Résultat réel du code ci-dessus):

tableau groupé de la colonne Excel