Browse Source

Add simple chart example

Don Murta 4 years ago
parent
commit
2419a25cbd
2 changed files with 63 additions and 0 deletions
  1. 62 0
      QuestPDF.Examples/ChartExamples.cs
  2. 1 0
      QuestPDF.Examples/QuestPDF.Examples.csproj

+ 62 - 0
QuestPDF.Examples/ChartExamples.cs

@@ -0,0 +1,62 @@
+using NUnit.Framework;
+using QuestPDF.Examples.Engine;
+using QuestPDF.Fluent;
+using QuestPDF.Helpers;
+using QuestPDF.Infrastructure;
+using Microcharts;
+using SkiaSharp;
+
+namespace QuestPDF.Examples
+{    
+    public class ChartExample
+    {
+        [Test]
+        public void MicrochartChart()
+        {
+            var entries = new[]
+            {
+                new ChartEntry(212)
+                {
+                    Label = "UWP",
+                    ValueLabel = "112",
+                    Color = SKColor.Parse("#2c3e50")
+                },
+                new ChartEntry(248)
+                {
+                    Label = "Android",
+                    ValueLabel = "648",
+                    Color = SKColor.Parse("#77d065")
+                },
+                new ChartEntry(128)
+                {
+                    Label = "iOS",
+                    ValueLabel = "428",
+                    Color = SKColor.Parse("#b455b6")
+                },
+                new ChartEntry(514)
+                {
+                    Label = "Forms",
+                    ValueLabel = "214",
+                    Color = SKColor.Parse("#3498db")
+                }
+            };
+
+            RenderingTest
+                .Create()
+                .PageSize(300, 300)
+                .ShowResults()
+                .Render(container =>
+                {
+                    container.Extend().Canvas((canvas, size) => 
+                    {
+                        var bar = new BarChart
+                        {
+                            Entries = entries,
+                            IsAnimated = false,
+                        };
+                        bar.Draw(canvas, (int)size.Width, (int)size.Height);
+                    });
+                });
+        }
+    }
+}

+ 1 - 0
QuestPDF.Examples/QuestPDF.Examples.csproj

@@ -6,6 +6,7 @@
     </PropertyGroup>
 
     <ItemGroup>
+        <PackageReference Include="microcharts" Version="0.9.5.9" />
         <PackageReference Include="nunit" Version="3.13.2" />
         <PackageReference Include="NUnit3TestAdapter" Version="4.0.0" />
         <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.4.0" />