using System; using System.Collections.Generic; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using Xceed.Words.NET; namespace ConsoleApp1 { class Program { static void Main(string[] args) { // Creates a document using (DocX document = DocX.Create(@"R:\6.docx", DocumentTypes.Document)) { // Add a title document.InsertParagraph("Bar Chart").FontSize(15d).SpacingAfter(50d).Alignment = Alignment.center; // Create a bar chart. var c = new BarChart(); c.AddLegend(ChartLegendPosition.Bottom, false); c.BarDirection = BarDirection.Column; c.BarGrouping = BarGrouping.Standard; c.GapWidth = 200; // Create the data. var canada = CreateCanadaExpenses(); var usa = CreateUSAExpenses(); var brazil = CreateBrazilExpenses(); // Create and add series var s1 = new Series("Brazil"); s1.Color = Color.FromArgb(91, 155, 213); s1.Bind(brazil, "Category", "Expenses"); s1.ShowValue = true; c.AddSeries(s1); var s2 = new Series("USA"); s2.Color = Color.FromArgb(237, 125, 49); s2.Bind(usa, "Category", "Expenses"); s2.ShowValue = true; c.AddSeries(s2); var s3 = new Series("Canada"); s3.Color = Color.Gray; s3.Bind(canada, "Category", "Expenses"); c.AddSeries(s3); //set value c.Title = "贺州供有点"; c.ShowDataTable = true; // Insert the chart into the document. document.InsertChart(c); document.InsertParagraph("贺州供电局").FontSize(15).SpacingAfter(10d); document.Save(); } } public static List CreateCanadaExpenses() { var canada = new List(); canada.Add(new ChartData() { Category = "Food", Expenses = 100 }); canada.Add(new ChartData() { Category = "Housing", Expenses = 120 }); canada.Add(new ChartData() { Category = "Transportation", Expenses = 140 }); canada.Add(new ChartData() { Category = "Health Care", Expenses = 150 }); return canada; } public static List CreateUSAExpenses() { var usa = new List(); usa.Add(new ChartData() { Category = "Food", Expenses = 200 }); usa.Add(new ChartData() { Category = "Housing", Expenses = 150 }); usa.Add(new ChartData() { Category = "Transportation", Expenses = 110 }); usa.Add(new ChartData() { Category = "Health Care", Expenses = 100 }); return usa; } public static List CreateBrazilExpenses() { var brazil = new List(); brazil.Add(new ChartData() { Category = "Food", Expenses = 125 }); brazil.Add(new ChartData() { Category = "Housing", Expenses = 80 }); brazil.Add(new ChartData() { Category = "Transportation", Expenses = 110 }); brazil.Add(new ChartData() { Category = "Health Care", Expenses = 60 }); return brazil; } internal class ChartData { public string Category { get; set; } public double Expenses { get; set; } } } }