├── assets ├── Gallery.png └── animations.gif ├── Sources ├── Microcharts.Samples.Avalonia │ ├── .gitignore │ ├── App.axaml │ ├── App.axaml.cs │ ├── Microcharts.Samples.Avalonia.csproj │ ├── Program.cs │ ├── MainWindow.axaml │ └── MainWindow.axaml.cs ├── Microcharts.Samples.iOS │ ├── Assets.xcassets │ │ └── Contents.json │ ├── Entitlements.plist │ ├── Main.cs │ ├── QuickstartViewController.designer.cs │ ├── MainViewController.designer.cs │ ├── MainViewController.cs │ ├── StoryboardHelpers.cs │ ├── QuickstartViewController.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Info.plist │ └── LaunchScreen.storyboard ├── Microcharts.Samples.macOS │ ├── Assets.xcassets │ │ ├── Contents.json │ │ └── AppIcon.appiconset │ │ │ ├── AppIcon-16.png │ │ │ ├── AppIcon-32.png │ │ │ ├── AppIcon-128.png │ │ │ ├── AppIcon-16@2x.png │ │ │ ├── AppIcon-256.png │ │ │ ├── AppIcon-32@2x.png │ │ │ ├── AppIcon-512.png │ │ │ ├── AppIcon-128@2x.png │ │ │ ├── AppIcon-256@2x.png │ │ │ ├── AppIcon-512@2x.png │ │ │ └── Contents.json │ ├── Entitlements.plist │ ├── Main.cs │ ├── app.config │ ├── ViewController.designer.cs │ ├── AppDelegate.cs │ ├── ViewController.cs │ └── Info.plist ├── Microcharts.Samples.Eto │ ├── MacIcon.icns │ ├── Program.cs │ ├── Info.plist │ ├── Microcharts.Samples.Eto.csproj │ ├── SampleCharts.cs │ ├── MainForm.cs │ └── MainForm.eto.cs ├── Microcharts.Samples.Uwp │ ├── Assets │ │ ├── StoreLogo.png │ │ ├── SplashScreen.scale-200.png │ │ ├── LockScreenLogo.scale-200.png │ │ ├── Square44x44Logo.scale-200.png │ │ ├── Wide310x150Logo.scale-200.png │ │ ├── Square150x150Logo.scale-200.png │ │ └── Square44x44Logo.targetsize-24_altform-unplated.png │ ├── App.xaml │ ├── Properties │ │ ├── AssemblyInfo.cs │ │ └── Default.rd.xml │ ├── MainPage.xaml.cs │ ├── MainPage.xaml │ └── Package.appxmanifest ├── Microcharts.Samples.WinUI │ ├── Assets │ │ ├── StoreLogo.png │ │ ├── SplashScreen.scale-200.png │ │ ├── LockScreenLogo.scale-200.png │ │ ├── Square44x44Logo.scale-200.png │ │ ├── Wide310x150Logo.scale-200.png │ │ ├── Square150x150Logo.scale-200.png │ │ └── Square44x44Logo.targetsize-24_altform-unplated.png │ ├── Properties │ │ ├── launchSettings.json │ │ └── PublishProfiles │ │ │ ├── win10-x64.pubxml │ │ │ ├── win10-x86.pubxml │ │ │ └── win10-arm64.pubxml │ ├── App.xaml │ ├── app.manifest │ ├── MainWindow.xaml.cs │ └── MainWindow.xaml ├── Microcharts.Samples.Uno │ ├── Microcharts.Samples.Uno.Mobile │ │ ├── MacOS │ │ │ ├── Assets.xcassets │ │ │ │ ├── Contents.json │ │ │ │ ├── AppIcon.appiconset │ │ │ │ │ ├── AppIcon-16.png │ │ │ │ │ ├── AppIcon-32.png │ │ │ │ │ ├── AppIcon-128.png │ │ │ │ │ ├── AppIcon-16@2x.png │ │ │ │ │ ├── AppIcon-256.png │ │ │ │ │ ├── AppIcon-32@2x.png │ │ │ │ │ ├── AppIcon-512.png │ │ │ │ │ ├── AppIcon-128@2x.png │ │ │ │ │ ├── AppIcon-256@2x.png │ │ │ │ │ ├── AppIcon-512@2x.png │ │ │ │ │ └── Contents.json │ │ │ │ └── unologo.imageset │ │ │ │ │ └── unoplatform.jpg │ │ │ ├── Resources │ │ │ │ └── Fonts │ │ │ │ │ └── uno-fluentui-assets.ttf │ │ │ ├── Entitlements.plist │ │ │ ├── Main.cs │ │ │ └── Info.plist │ │ ├── iOS │ │ │ ├── Resources │ │ │ │ ├── Default-568h@2x.png │ │ │ │ ├── SplashScreen@2x.png │ │ │ │ ├── SplashScreen@3x.png │ │ │ │ └── Fonts │ │ │ │ │ └── uno-fluentui-assets.ttf │ │ │ ├── Media.xcassets │ │ │ │ ├── AppIcons.appiconset │ │ │ │ │ ├── Icon120.png │ │ │ │ │ ├── Icon152.png │ │ │ │ │ ├── Icon167.png │ │ │ │ │ ├── Icon180.png │ │ │ │ │ ├── Icon20.png │ │ │ │ │ ├── Icon29.png │ │ │ │ │ ├── Icon40.png │ │ │ │ │ ├── Icon58.png │ │ │ │ │ ├── Icon60.png │ │ │ │ │ ├── Icon76.png │ │ │ │ │ ├── Icon80.png │ │ │ │ │ ├── Icon87.png │ │ │ │ │ └── Icon1024.png │ │ │ │ └── LaunchImages.launchimage │ │ │ │ │ └── Contents.json │ │ │ ├── Entitlements.plist │ │ │ └── Main.iOS.cs │ │ ├── Android │ │ │ ├── Resources │ │ │ │ ├── mipmap-hdpi │ │ │ │ │ └── icon.png │ │ │ │ ├── mipmap-ldpi │ │ │ │ │ └── icon.png │ │ │ │ ├── mipmap-mdpi │ │ │ │ │ └── icon.png │ │ │ │ ├── mipmap-tvdpi │ │ │ │ │ └── icon.png │ │ │ │ ├── mipmap-xhdpi │ │ │ │ │ └── icon.png │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ │ └── icon.png │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ │ └── icon.png │ │ │ │ └── values │ │ │ │ │ ├── Strings.xml │ │ │ │ │ └── Styles.xml │ │ │ ├── Assets │ │ │ │ ├── Fonts │ │ │ │ │ └── uno-fluentui-assets.ttf │ │ │ │ └── AboutAssets.txt │ │ │ ├── environment.conf │ │ │ ├── AndroidManifest.xml │ │ │ ├── MainActivity.Android.cs │ │ │ └── Main.Android.cs │ │ └── MacCatalyst │ │ │ ├── Resources │ │ │ ├── Default-568h@2x.png │ │ │ ├── SplashScreen@2x.png │ │ │ ├── SplashScreen@3x.png │ │ │ └── Fonts │ │ │ │ └── uno-fluentui-assets.ttf │ │ │ ├── Entitlements.plist │ │ │ ├── Media.xcassets │ │ │ └── AppIcons.appiconset │ │ │ │ ├── Icon120.png │ │ │ │ ├── Icon152.png │ │ │ │ ├── Icon167.png │ │ │ │ ├── Icon180.png │ │ │ │ ├── Icon20.png │ │ │ │ ├── Icon29.png │ │ │ │ ├── Icon40.png │ │ │ │ ├── Icon58.png │ │ │ │ ├── Icon60.png │ │ │ │ ├── Icon76.png │ │ │ │ ├── Icon80.png │ │ │ │ ├── Icon87.png │ │ │ │ └── Icon1024.png │ │ │ ├── Main.maccatalyst.cs │ │ │ └── Info.plist │ ├── Microcharts.Samples.Uno.Windows │ │ ├── Properties │ │ │ ├── launchSettings.json │ │ │ └── Properties │ │ │ │ ├── win10-x64.pubxml │ │ │ │ ├── win10-x86.pubxml │ │ │ │ └── win10-arm64.pubxml │ │ ├── Images │ │ │ ├── StoreLogo.png │ │ │ ├── SplashScreen.scale-200.png │ │ │ ├── LockScreenLogo.scale-200.png │ │ │ ├── Square44x44Logo.scale-200.png │ │ │ ├── Wide310x150Logo.scale-200.png │ │ │ ├── Square150x150Logo.scale-200.png │ │ │ └── Square44x44Logo.targetsize-24_altform-unplated.png │ │ ├── Microcharts.Samples.Uno.Windows_TemporaryKey.pfx │ │ └── app.manifest │ ├── Microcharts.Samples.Uno.Skia.Gtk │ │ ├── Assets │ │ │ └── Fonts │ │ │ │ └── uno-fluentui-assets.ttf │ │ └── Program.cs │ └── Microcharts.Samples.Uno.Shared │ │ ├── App.xaml │ │ ├── Assets │ │ └── SharedAssets.md │ │ ├── Microcharts.Samples.Uno.Shared.shproj │ │ ├── MainPage.xaml.cs │ │ ├── MainPage.xaml │ │ ├── Microcharts.Samples.Uno.Shared.projitems │ │ └── Microcharts.Samples.Uno.Shared.globs.props ├── Microcharts.Droid │ ├── Resources │ │ └── values │ │ │ └── Strings.xml │ └── Properties │ │ └── AssemblyInfo.cs ├── Microcharts.Samples.Maui │ ├── Resources │ │ ├── Fonts │ │ │ └── OpenSans-Regular.ttf │ │ ├── AppIcon │ │ │ ├── appicon.svg │ │ │ └── appiconfg.svg │ │ ├── Raw │ │ │ └── AboutAssets.txt │ │ └── Splash │ │ │ └── splash.svg │ ├── Properties │ │ └── launchSettings.json │ ├── Platforms │ │ ├── Android │ │ │ ├── Resources │ │ │ │ └── values │ │ │ │ │ └── colors.xml │ │ │ ├── AndroidManifest.xml │ │ │ ├── MainActivity.cs │ │ │ └── MainApplication.cs │ │ ├── iOS │ │ │ ├── AppDelegate.cs │ │ │ ├── Program.cs │ │ │ └── Info.plist │ │ ├── MacCatalyst │ │ │ ├── AppDelegate.cs │ │ │ ├── Program.cs │ │ │ └── Info.plist │ │ ├── Windows │ │ │ ├── App.xaml │ │ │ ├── app.manifest │ │ │ └── App.xaml.cs │ │ └── Tizen │ │ │ ├── Main.cs │ │ │ └── tizen-manifest.xml │ ├── App.xaml.cs │ ├── Model │ │ └── ChartItem.cs │ ├── MauiProgram.cs │ ├── App.xaml │ ├── ChartPage.xaml.cs │ ├── ChartConfigurationPage.xaml.cs │ ├── Directory.Build.targets │ ├── LegacyPage.xaml.cs │ ├── MainPage.xaml.cs │ └── ChartPage.xaml ├── Microcharts.Samples.Android │ ├── Resources │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_round.png │ │ │ └── ic_launcher_foreground.png │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_round.png │ │ │ └── ic_launcher_foreground.png │ │ ├── values │ │ │ ├── ic_launcher_background.xml │ │ │ ├── strings.xml │ │ │ ├── colors.xml │ │ │ └── styles.xml │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_round.png │ │ │ └── ic_launcher_foreground.png │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_round.png │ │ │ └── ic_launcher_foreground.png │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_round.png │ │ │ └── ic_launcher_foreground.png │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ └── layout │ │ │ └── activity_main.xml │ ├── Properties │ │ ├── AndroidManifest.xml │ │ └── AssemblyInfo.cs │ ├── Assets │ │ └── AboutAssets.txt │ └── MainActivity.cs ├── .editorconfig ├── Microcharts.Samples.Forms │ ├── Microcharts.Samples.Forms.iOS │ │ ├── Entitlements.plist │ │ ├── Main.cs │ │ ├── AppDelegate.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── Info.plist │ ├── Microcharts.Samples.Forms.Android │ │ ├── Resources │ │ │ ├── values │ │ │ │ ├── colors.xml │ │ │ │ └── styles.xml │ │ │ └── layout │ │ │ │ ├── Toolbar.axml │ │ │ │ └── Tabbar.axml │ │ ├── Properties │ │ │ ├── AndroidManifest.xml │ │ │ └── AssemblyInfo.cs │ │ ├── Assets │ │ │ └── AboutAssets.txt │ │ └── MainActivity.cs │ └── Microcharts.Samples.Forms │ │ ├── App.xaml │ │ ├── Model │ │ └── ChartItem.cs │ │ ├── App.xaml.cs │ │ ├── ChartConfigurationPage.xaml.cs │ │ ├── Microcharts.Samples.Forms.csproj │ │ ├── LegacyPage.xaml.cs │ │ ├── MainPage.xaml.cs │ │ └── ChartPage.xaml ├── Microcharts.Metapackage │ └── Microcharts.Metapackage.csproj ├── Microcharts │ ├── Constants │ │ ├── DefaultValues.cs │ │ ├── Position.cs │ │ ├── GraphPosition.cs │ │ ├── Orientation.cs │ │ ├── LineMode.cs │ │ ├── SeriesLegendOption.cs │ │ ├── PointMode.cs │ │ ├── LabelMode.cs │ │ └── ValueLabelOption.cs │ ├── Helpers │ │ ├── Ease.cs │ │ ├── Timer.cs │ │ └── DelayTimer.cs │ ├── Charts │ │ ├── SimpleChart.cs │ │ └── PieChart.cs │ ├── Microcharts.csproj │ ├── Abstracts │ │ └── ITimer.cs │ └── ChartSerie.cs ├── Microcharts.Maui │ ├── AppHostBuilderExtensions.cs │ └── Microcharts.Maui.csproj ├── Nuget.config ├── Microcharts.Samples │ ├── Microcharts.Samples.csproj │ └── ExampleChartItem.cs ├── Microcharts.Eto │ ├── Microcharts.Eto.csproj │ └── ChartView.cs ├── Microcharts.Avalonia │ ├── Microcharts.Avalonia.csproj │ ├── ChartDrawOperation.cs │ └── ChartView.cs ├── Microcharts.Uno │ └── Microcharts.Uno.csproj ├── Microcharts-mac.slnf ├── Microcharts.Forms │ └── Microcharts.Forms.csproj ├── Microcharts.iOS │ └── Properties │ │ └── AssemblyInfo.cs ├── Microcharts.macOS │ └── Properties │ │ └── AssemblyInfo.cs ├── Microcharts.Uwp │ └── Properties │ │ ├── AssemblyInfo.cs │ │ └── Microcharts.Uwp.rd.xml ├── Microcharts.Uno.WinUI │ └── Microcharts.Uno.WinUI.csproj └── Microcharts.WinUI │ └── Microcharts.WinUI.csproj ├── .github ├── ISSUE_TEMPLATE │ ├── question.md │ ├── feature_request.md │ └── bug_report.md ├── stale.yml └── workflows │ └── CI-MacOS.yml ├── nuget.config ├── CONTRIBUTING.md └── LICENSE /assets/Gallery.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/assets/Gallery.png -------------------------------------------------------------------------------- /assets/animations.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/assets/animations.gif -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Avalonia/.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | .vscode/ 3 | .vs/ 4 | 5 | bin/ 6 | obj/ 7 | 8 | *.user -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.iOS/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Eto/MacIcon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Eto/MacIcon.icns -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uwp/Assets/StoreLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uwp/Assets/StoreLogo.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/Assets/StoreLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.WinUI/Assets/StoreLogo.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Sources/Microcharts.Droid/Resources/values/Strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Microcharts.Droid 4 | 5 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uwp/Assets/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uwp/Assets/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/question.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Question 3 | about: Ask a question about Microcharts 4 | title: "[Question]" 5 | labels: question 6 | assignees: '' 7 | 8 | --- 9 | 10 | 11 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uwp/Assets/LockScreenLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uwp/Assets/LockScreenLogo.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uwp/Assets/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uwp/Assets/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uwp/Assets/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uwp/Assets/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/Assets/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.WinUI/Assets/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Resources/Fonts/OpenSans-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Maui/Resources/Fonts/OpenSans-Regular.ttf -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uwp/Assets/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uwp/Assets/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/Assets/LockScreenLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.WinUI/Assets/LockScreenLogo.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/Assets/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.WinUI/Assets/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/Assets/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.WinUI/Assets/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #2C3E50 4 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Properties/launchSettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "profiles": { 3 | "Windows Machine": { 4 | "commandName": "MsixPackage", 5 | "nativeDebugging": false 6 | } 7 | } 8 | } -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/Assets/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.WinUI/Assets/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Microcharts.Samples.Android 3 | Settings 4 | 5 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Properties/launchSettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "profiles": { 3 | "Microcharts.Sample.Uno.Windows": { 4 | "commandName": "MsixPackage" 5 | } 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-hdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-hdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-mdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-mdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-xhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-xhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-xxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-xxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/StoreLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/StoreLogo.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512.png -------------------------------------------------------------------------------- /Sources/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | end_of_line=lf 5 | charset=utf-8 6 | indent_style = space 7 | indent_size = 4 8 | trim_trailing_whitespace=true 9 | insert_final_newline=true 10 | 11 | [*.json] 12 | indent_size = 2 -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-xxxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Android/Resources/mipmap-xxxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uwp/Assets/Square44x44Logo.targetsize-24_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uwp/Assets/Square44x44Logo.targetsize-24_altform-unplated.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/Assets/Square44x44Logo.targetsize-24_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.WinUI/Assets/Square44x44Logo.targetsize-24_altform-unplated.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Resources/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Resources/Default-568h@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Resources/SplashScreen@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Resources/SplashScreen@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Resources/SplashScreen@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Resources/SplashScreen@3x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-hdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-hdpi/icon.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-ldpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-ldpi/icon.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-mdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-mdpi/icon.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Skia.Gtk/Assets/Fonts/uno-fluentui-assets.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Skia.Gtk/Assets/Fonts/uno-fluentui-assets.ttf -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/LockScreenLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/LockScreenLogo.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-tvdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-tvdpi/icon.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-xhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-xhdpi/icon.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-xxhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-xxhdpi/icon.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.iOS/Entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-xxxhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/mipmap-xxxhdpi/icon.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Resources/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Resources/Default-568h@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Resources/SplashScreen@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Resources/SplashScreen@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Resources/SplashScreen@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Resources/SplashScreen@3x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Resources/Fonts/uno-fluentui-assets.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Resources/Fonts/uno-fluentui-assets.ttf -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Assets/Fonts/uno-fluentui-assets.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Assets/Fonts/uno-fluentui-assets.ttf -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/environment.conf: -------------------------------------------------------------------------------- 1 | # See this for more details: http://developer.xamarin.com/guides/android/advanced_topics/garbage_collection/ 2 | MONO_GC_PARAMS=bridge-implementation=tarjan,nursery-size=32m,soft-heap-limit=256m -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Resources/Fonts/uno-fluentui-assets.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Resources/Fonts/uno-fluentui-assets.ttf -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon120.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon152.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon167.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon167.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon180.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon20.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon29.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon40.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon58.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon58.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon60.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon76.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon80.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon80.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon87.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon87.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Microcharts.Samples.Uno.Windows_TemporaryKey.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Microcharts.Samples.Uno.Windows_TemporaryKey.pfx -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #2c3e50 4 | #1B3147 5 | #3498db 6 | 7 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/values/Strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Hello World, Click Me! 4 | UnoQuickStart 5 | 6 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Resources/Fonts/uno-fluentui-assets.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Resources/Fonts/uno-fluentui-assets.ttf -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/AppIcons.appiconset/Icon1024.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms.iOS/Entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Resources/AppIcon/appicon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/unologo.imageset/unoplatform.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/unologo.imageset/unoplatform.jpg -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Sources/Microcharts.Metapackage/Microcharts.Metapackage.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0 5 | Microcharts.Metapackage.nuspec 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/Android/Resources/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #512BD4 4 | #2B0B98 5 | #2B0B98 6 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon120.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon152.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon167.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon167.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon180.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon20.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon29.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon40.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon58.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon58.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon60.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon76.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon80.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon80.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon87.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon87.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/Square44x44Logo.targetsize-24_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Images/Square44x44Logo.targetsize-24_altform-unplated.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/Properties/launchSettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "profiles": { 3 | "Microcharts.Samples.WinUI (Package)": { 4 | "commandName": "MsixPackage" 5 | }, 6 | "Microcharts.Samples.WinUI (Unpackaged)": { 7 | "commandName": "Project" 8 | } 9 | } 10 | } -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Media.xcassets/AppIcons.appiconset/Icon1024.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microcharts-dotnet/Microcharts/HEAD/Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png -------------------------------------------------------------------------------- /Sources/Microcharts/Constants/DefaultValues.cs: -------------------------------------------------------------------------------- 1 | namespace Microcharts 2 | { 3 | internal static class DefaultValues 4 | { 5 | internal const byte BarAreaAlpha = 32; 6 | internal const float MinBarHeight = 4; 7 | internal const float CornerRadius = 0; 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /nuget.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Main.cs: -------------------------------------------------------------------------------- 1 | using AppKit; 2 | 3 | namespace Microcharts.Samples.macOS 4 | { 5 | static class MainClass 6 | { 7 | static void Main(string[] args) 8 | { 9 | NSApplication.Init(); 10 | NSApplication.Main(args); 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Avalonia/App.axaml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uwp/App.xaml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Eto/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Eto.Forms; 3 | 4 | namespace Microcharts.Samples.Eto 5 | { 6 | static class Program 7 | { 8 | [STAThread] 9 | static void Main(string[] args) 10 | { 11 | new Application(global::Eto.Platform.Detect).Run(new MainForm()); 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/iOS/AppDelegate.cs: -------------------------------------------------------------------------------- 1 | using Foundation; 2 | using Microsoft.Maui; 3 | 4 | namespace Microcharts.Samples.Maui 5 | { 6 | [Register("AppDelegate")] 7 | public class AppDelegate : MauiUIApplicationDelegate 8 | { 9 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms.Android/Resources/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFFFFF 4 | #3F51B5 5 | #303F9F 6 | #FF4081 7 | 8 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/MacCatalyst/AppDelegate.cs: -------------------------------------------------------------------------------- 1 | using Foundation; 2 | using Microsoft.Maui; 3 | 4 | namespace Microcharts.Samples.Maui 5 | { 6 | [Register("AppDelegate")] 7 | public class AppDelegate : MauiUIApplicationDelegate 8 | { 9 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms/App.xaml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Sources/Microcharts.Maui/AppHostBuilderExtensions.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Maui.Hosting; 2 | using SkiaSharp.Views.Maui.Controls.Hosting; 3 | 4 | namespace Microcharts.Maui 5 | { 6 | public static class AppHostBuilderExtensions 7 | { 8 | public static MauiAppBuilder UseMicrocharts(this MauiAppBuilder builder) => 9 | builder.UseSkiaSharp(); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Sources/Nuget.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/Windows/App.xaml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Sources/Microcharts/Helpers/Ease.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) Aloïs DENIEL. All rights reserved. 2 | // Licensed under the MIT License. See LICENSE in the project root for license information. 3 | 4 | namespace Microcharts 5 | { 6 | internal static class Ease 7 | { 8 | public static float Out(float t) => t * t * t; 9 | 10 | 11 | public static float In(float t) => (--t) * t * t + 1; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/App.xaml.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Maui.Controls; 2 | using Application = Microsoft.Maui.Controls.Application; 3 | 4 | namespace Microcharts.Samples.Maui 5 | { 6 | public partial class App : Application 7 | { 8 | public App() 9 | { 10 | InitializeComponent(); 11 | 12 | MainPage = new NavigationPage(new MainPage()); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Sources/Microcharts/Constants/Position.cs: -------------------------------------------------------------------------------- 1 | namespace Microcharts 2 | { 3 | /// 4 | /// Indicate a position for the Y axis 5 | /// 6 | public enum Position 7 | { 8 | /// 9 | /// Left position 10 | /// 11 | Left, 12 | /// 13 | /// Right position 14 | /// 15 | Right 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Main.cs: -------------------------------------------------------------------------------- 1 | using AppKit; 2 | 3 | namespace Microcharts.Samples.Uno.macOS 4 | { 5 | internal static class MainClass 6 | { 7 | static void Main(string[] args) 8 | { 9 | NSApplication.Init(); 10 | NSApplication.SharedApplication.Delegate = new App(); 11 | NSApplication.Main(args); 12 | } 13 | } 14 | } 15 | 16 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples/Microcharts.Samples.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/Tizen/Main.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Microsoft.Maui; 3 | using Microsoft.Maui.Hosting; 4 | 5 | namespace Microcharts.Samples.Maui 6 | 7 | class Program : MauiApplication 8 | { 9 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); 10 | 11 | static void Main(string[] args) 12 | { 13 | var app = new Program(); 14 | app.Run(args); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Sources/Microcharts/Constants/GraphPosition.cs: -------------------------------------------------------------------------------- 1 | namespace Microcharts 2 | { 3 | /// 4 | /// Graph position option for the Donut chart 5 | /// 6 | public enum GraphPosition 7 | { 8 | /// 9 | /// Auto fill the chart in the avaible area 10 | /// 11 | AutoFill, 12 | /// 13 | /// Center the chart 14 | /// 15 | Center 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms.Android/Properties/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/app.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/Android/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.iOS/Main.cs: -------------------------------------------------------------------------------- 1 | using UIKit; 2 | 3 | namespace Microcharts.Samples.iOS 4 | { 5 | public class Application 6 | { 7 | // This is the main entry point of the application. 8 | static void Main(string[] args) 9 | { 10 | // if you want to use a different Application Delegate class from "AppDelegate" 11 | // you can specify it here. 12 | UIApplication.Main(args, null, "AppDelegate"); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms.Android/Resources/layout/Toolbar.axml: -------------------------------------------------------------------------------- 1 | 9 | 10 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | ### I wish to help, what's the basics to what I need to know? 2 | 3 | first and foremost, thank you for your help and interest. 4 | 5 | master currently has 1.0 code so it's best to put new things in there unless it's a fix for the 0.9 codebase which then you develop off the develop branch. 6 | 7 | if you're adding a new framework (MAUI, UWP), please ensure you'll be around to actively support it, please no web frameworks as the library is largely used by the mobile & desktop community of the .NET family. 8 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/Android/MainActivity.cs: -------------------------------------------------------------------------------- 1 | using Android.App; 2 | using Android.Content.PM; 3 | using Microsoft.Maui; 4 | 5 | namespace Microcharts.Samples.Maui 6 | { 7 | [Activity(Theme = "@style/Maui.SplashTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.Density)] 8 | public class MainActivity : MauiAppCompatActivity 9 | { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Main.iOS.cs: -------------------------------------------------------------------------------- 1 | using UIKit; 2 | 3 | namespace Microcharts.Samples.Uno 4 | { 5 | public class EntryPoint 6 | { 7 | // This is the main entry point of the application. 8 | static void Main(string[] args) 9 | { 10 | // if you want to use a different Application Delegate class from "AppDelegate" 11 | // you can specify it here. 12 | UIApplication.Main(args, null, typeof(App)); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/iOS/Program.cs: -------------------------------------------------------------------------------- 1 | using ObjCRuntime; 2 | using UIKit; 3 | 4 | namespace Microcharts.Samples.Maui 5 | { 6 | public class Program 7 | { 8 | // This is the main entry point of the application. 9 | static void Main(string[] args) 10 | { 11 | // if you want to use a different Application Delegate class from "AppDelegate" 12 | // you can specify it here. 13 | UIApplication.Main(args, null, typeof(AppDelegate)); 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/MacCatalyst/Program.cs: -------------------------------------------------------------------------------- 1 | using ObjCRuntime; 2 | using UIKit; 3 | 4 | namespace Microcharts.Samples.Maui 5 | { 6 | public class Program 7 | { 8 | // This is the main entry point of the application. 9 | static void Main(string[] args) 10 | { 11 | // if you want to use a different Application Delegate class from "AppDelegate" 12 | // you can specify it here. 13 | UIApplication.Main(args, null, typeof(AppDelegate)); 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Main.maccatalyst.cs: -------------------------------------------------------------------------------- 1 | using UIKit; 2 | 3 | namespace Microcharts.Samples.Uno 4 | { 5 | public class EntryPoint 6 | { 7 | // This is the main entry point of the application. 8 | static void Main(string[] args) 9 | { 10 | // if you want to use a different Application Delegate class from "AppDelegate" 11 | // you can specify it here. 12 | UIApplication.Main(args, null, typeof(App)); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/Android/MainApplication.cs: -------------------------------------------------------------------------------- 1 | using Android.App; 2 | using Android.Runtime; 3 | using Microsoft.Maui; 4 | using System; 5 | 6 | namespace Microcharts.Samples.Maui 7 | { 8 | [Application] 9 | public class MainApplication : MauiApplication 10 | { 11 | public MainApplication(IntPtr handle, JniHandleOwnership ownership) 12 | : base(handle, ownership) 13 | { 14 | } 15 | 16 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/ViewController.designer.cs: -------------------------------------------------------------------------------- 1 | // WARNING 2 | // 3 | // This file has been generated automatically by Xamarin Studio to store outlets and 4 | // actions made in the UI designer. If it is removed, they will be lost. 5 | // Manual changes to this file may not be handled correctly. 6 | // 7 | using Foundation; 8 | 9 | namespace Microcharts.Samples.macOS 10 | { 11 | [Register("ViewController")] 12 | partial class ViewController 13 | { 14 | void ReleaseDesignerOutlets() 15 | { 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Sources/Microcharts/Constants/Orientation.cs: -------------------------------------------------------------------------------- 1 | namespace Microcharts 2 | { 3 | /// 4 | /// Visual object orientation 5 | /// 6 | public enum Orientation 7 | { 8 | /// 9 | /// Default orientation of the object 10 | /// 11 | Default, 12 | /// 13 | /// Horizontal orientation 14 | /// 15 | Horizontal, 16 | /// 17 | /// Vertical orientation 18 | /// 19 | Vertical, 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/MainActivity.Android.cs: -------------------------------------------------------------------------------- 1 | using Android.App; 2 | using Android.Content.PM; 3 | using Android.OS; 4 | using Android.Views; 5 | using Android.Widget; 6 | 7 | namespace Microcharts.Samples.Uno 8 | { 9 | [Activity( 10 | MainLauncher = true, 11 | ConfigurationChanges = global::Uno.UI.ActivityHelper.AllConfigChanges, 12 | WindowSoftInputMode = SoftInput.AdjustPan | SoftInput.StateHidden 13 | )] 14 | public class MainActivity : Microsoft.UI.Xaml.ApplicationActivity 15 | { 16 | } 17 | } 18 | 19 | -------------------------------------------------------------------------------- /Sources/Microcharts/Charts/SimpleChart.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Microcharts 4 | { 5 | /// 6 | /// Base class of simple chart 7 | /// 8 | public abstract class SimpleChart : Chart 9 | { 10 | /// 11 | /// Gets or Sets Entries 12 | /// 13 | /// IEnumerable of 14 | public IEnumerable Entries 15 | { 16 | get => entries; 17 | set => UpdateEntries(value); 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms.iOS/Main.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using Foundation; 5 | using UIKit; 6 | 7 | namespace Microcharts.Samples.Forms.iOS 8 | { 9 | public class Application 10 | { 11 | // This is the main entry point of the application. 12 | static void Main(string[] args) 13 | { 14 | // if you want to use a different Application Delegate class from "AppDelegate" 15 | // you can specify it here. 16 | UIApplication.Main(args, null, "AppDelegate"); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Model/ChartItem.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Microcharts.Samples.Maui.Model 4 | { 5 | public class ChartItem 6 | { 7 | public ChartItem(string name, Chart chart, int index) 8 | { 9 | Name = name; 10 | Chart = chart; 11 | ChartFactory = () => Data.CreateXamarinSample()[index]; 12 | HasSeries = chart is SeriesChart; 13 | } 14 | 15 | public string Name { get; private set; } 16 | public Chart Chart { get; } 17 | public Func ChartFactory { get; } 18 | public bool HasSeries { get; } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms.Android/Resources/layout/Tabbar.axml: -------------------------------------------------------------------------------- 1 | 2 | 12 | -------------------------------------------------------------------------------- /Sources/Microcharts/Constants/LineMode.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) Aloïs DENIEL. All rights reserved. 2 | // Licensed under the MIT License. See LICENSE in the project root for license information. 3 | 4 | namespace Microcharts 5 | { 6 | /// 7 | /// Line drawing option 8 | /// 9 | public enum LineMode 10 | { 11 | /// 12 | /// Not diplaying line 13 | /// 14 | None, 15 | /// 16 | /// 17 | /// 18 | Spline, 19 | /// 20 | /// 21 | /// 22 | Straight, 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Sources/Microcharts/Constants/SeriesLegendOption.cs: -------------------------------------------------------------------------------- 1 | namespace Microcharts 2 | { 3 | /// 4 | /// Define the legend layout option of charts 5 | /// 6 | public enum SeriesLegendOption 7 | { 8 | /// 9 | /// Legend displayed on top of the chart 10 | /// 11 | Top, 12 | /// 13 | /// Legend displayed at the bottom of the chart 14 | /// 15 | Bottom, 16 | /// 17 | /// No legend displayed 18 | /// 19 | None 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.iOS/QuickstartViewController.designer.cs: -------------------------------------------------------------------------------- 1 | // WARNING 2 | // 3 | // This file has been generated automatically by Xamarin Studio from the outlets and 4 | // actions declared in your storyboard file. 5 | // Manual changes to this file will not be maintained. 6 | // 7 | using Foundation; 8 | using System; 9 | using System.CodeDom.Compiler; 10 | using UIKit; 11 | 12 | namespace Microcharts.Samples.iOS 13 | { 14 | [Register("QuickstartViewController")] 15 | partial class QuickstartViewController 16 | { 17 | void ReleaseDesignerOutlets() 18 | { 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Sources/Microcharts/Constants/PointMode.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) Aloïs DENIEL. All rights reserved. 2 | // Licensed under the MIT License. See LICENSE in the project root for license information. 3 | 4 | namespace Microcharts 5 | { 6 | /// 7 | /// Point display mode 8 | /// 9 | public enum PointMode 10 | { 11 | /// 12 | /// No point 13 | /// 14 | None, 15 | /// 16 | /// Circle point 17 | /// 18 | Circle, 19 | /// 20 | /// Square point 21 | /// 22 | Square, 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Sources/Microcharts/Constants/LabelMode.cs: -------------------------------------------------------------------------------- 1 | namespace Microcharts 2 | { 3 | /// 4 | /// Label display mode for the 5 | /// 6 | public enum LabelMode 7 | { 8 | /// 9 | /// Not displaying label 10 | /// 11 | None, 12 | /// 13 | /// Display an equaly number of label in the Left and Right of the chart 14 | /// 15 | LeftAndRight, 16 | /// 17 | /// Display all the label at the Right of the chart 18 | /// 19 | RightOnly 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/AppDelegate.cs: -------------------------------------------------------------------------------- 1 | using AppKit; 2 | using Foundation; 3 | 4 | namespace Microcharts.Samples.macOS 5 | { 6 | [Register("AppDelegate")] 7 | public class AppDelegate : NSApplicationDelegate 8 | { 9 | public AppDelegate() 10 | { 11 | } 12 | 13 | public override void DidFinishLaunching(NSNotification notification) 14 | { 15 | // Insert code here to initialize your application 16 | } 17 | 18 | public override void WillTerminate(NSNotification notification) 19 | { 20 | // Insert code here to tear down your application 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms/Model/ChartItem.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Microcharts.Samples.Forms.Model 4 | { 5 | public class ChartItem 6 | { 7 | public ChartItem(string name, Chart chart, int index) 8 | { 9 | Name = name; 10 | Chart = chart; 11 | ChartFactory = () => Data.CreateXamarinSample()[index]; 12 | HasSeries = chart is SeriesChart; 13 | } 14 | 15 | public string Name { get; private set; } 16 | public Chart Chart { get; } 17 | public Func ChartFactory { get; } 18 | public bool HasSeries { get; } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Sources/Microcharts.Eto/Microcharts.Eto.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0 5 | latest 6 | enable 7 | 8 | Simple, cross-platform chart library for Eto. 9 | eto chart skia 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Sources/Microcharts/Microcharts.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0 5 | Microcharts.Core 6 | Core components for Microcharts. 7 | microcharts 8 | true 9 | $(NoWarn);CS1591 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Resources/values/Styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 12 | 16 | 17 | -------------------------------------------------------------------------------- /Sources/Microcharts/Helpers/Timer.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) Aloïs DENIEL. All rights reserved. 2 | // Licensed under the MIT License. See LICENSE in the project root for license information. 3 | 4 | using Microcharts.Abstracts; 5 | 6 | namespace Microcharts 7 | { 8 | using System; 9 | 10 | /// 11 | /// A loop that executes an action. 12 | /// 13 | public static class Timer 14 | { 15 | /// 16 | /// Gets or sets a factory used to instanciate timers. 17 | /// 18 | /// The factory function. 19 | public static Func Create { get; set; } = () => new DelayTimer(); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/MauiProgram.cs: -------------------------------------------------------------------------------- 1 | using Microcharts.Maui; 2 | 3 | namespace Microcharts.Samples.Maui 4 | { 5 | public static class MauiProgram 6 | { 7 | public static MauiApp CreateMauiApp() 8 | { 9 | var builder = MauiApp.CreateBuilder(); 10 | builder 11 | .UseMauiApp() 12 | .ConfigureFonts(fonts => 13 | { 14 | fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular"); 15 | fonts.AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold"); 16 | }) 17 | .UseMicrocharts(); 18 | 19 | return builder.Build(); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Sources/Microcharts/Charts/PieChart.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) Aloïs DENIEL. All rights reserved. 2 | // Licensed under the MIT License. See LICENSE in the project root for license information. 3 | 4 | namespace Microcharts 5 | { 6 | /// 7 | /// ![chart](../images/Donut.png) 8 | /// 9 | /// Pie chart. 10 | /// 11 | public class PieChart : DonutChart 12 | { 13 | #region Constructors 14 | 15 | /// 16 | /// Initializes a new instance of the class. 17 | /// 18 | public PieChart() 19 | { 20 | this.HoleRadius = 0; 21 | } 22 | 23 | #endregion 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | title: "[Feature]" 5 | labels: enhancement 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Is your feature request related to a problem? Please describe.** 11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 12 | 13 | **Describe the solution you'd like** 14 | A clear and concise description of what you want to happen. 15 | 16 | **Describe alternatives you've considered** 17 | A clear and concise description of any alternative solutions or features you've considered. 18 | 19 | **Additional context** 20 | Add any other context or screenshots about the feature request here. 21 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Properties/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Avalonia/App.axaml.cs: -------------------------------------------------------------------------------- 1 | using Avalonia; 2 | using Avalonia.Controls.ApplicationLifetimes; 3 | using Avalonia.Markup.Xaml; 4 | 5 | namespace Microcharts.Samples.Avalonia 6 | { 7 | public class App : Application 8 | { 9 | public override void Initialize() 10 | { 11 | AvaloniaXamlLoader.Load(this); 12 | } 13 | 14 | public override void OnFrameworkInitializationCompleted() 15 | { 16 | if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop) 17 | { 18 | desktop.MainWindow = new MainWindow(); 19 | } 20 | 21 | base.OnFrameworkInitializationCompleted(); 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Assets/AboutAssets.txt: -------------------------------------------------------------------------------- 1 | Any raw assets you want to be deployed with your application can be placed in 2 | this directory (and child directories) and given a Build Action of "AndroidAsset". 3 | 4 | These files will be deployed with your package and will be accessible using Android's 5 | AssetManager, like this: 6 | 7 | public class ReadAsset : Activity 8 | { 9 | protected override void OnCreate (Bundle bundle) 10 | { 11 | base.OnCreate (bundle); 12 | 13 | InputStream input = Assets.Open ("my_asset.txt"); 14 | } 15 | } 16 | 17 | Additionally, some Android functions will automatically load asset files: 18 | 19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf"); -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Avalonia/Microcharts.Samples.Avalonia.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | WinExe 4 | net6.0 5 | enable 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Skia.Gtk/Program.cs: -------------------------------------------------------------------------------- 1 | using GLib; 2 | using Microcharts.Samples.Uno; 3 | using System; 4 | using Uno.UI.Runtime.Skia; 5 | 6 | namespace Microcharts.Sample.Uno.Skia.Gtk 7 | { 8 | internal class Program 9 | { 10 | static void Main(string[] args) 11 | { 12 | ExceptionManager.UnhandledException += delegate (UnhandledExceptionArgs expArgs) 13 | { 14 | Console.WriteLine("GLIB UNHANDLED EXCEPTION" + expArgs.ExceptionObject.ToString()); 15 | expArgs.ExitApplication = true; 16 | }; 17 | 18 | var host = new GtkHost(() => new App()); 19 | 20 | host.Run(); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Resources/Raw/AboutAssets.txt: -------------------------------------------------------------------------------- 1 | Any raw assets you want to be deployed with your application can be placed in 2 | this directory (and child directories). Deployment of the asset to your application 3 | is automatically handled by the following `MauiAsset` Build Action within your `.csproj`. 4 | 5 | 6 | 7 | These files will be deployed with you package and will be accessible using Essentials: 8 | 9 | async Task LoadMauiAsset() 10 | { 11 | using var stream = await FileSystem.OpenAppPackageFileAsync("AboutAssets.txt"); 12 | using var reader = new StreamReader(stream); 13 | 14 | var contents = reader.ReadToEnd(); 15 | } 16 | -------------------------------------------------------------------------------- /Sources/Microcharts.Avalonia/Microcharts.Avalonia.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0 5 | enable 6 | 9 7 | 8 | Simple, cross-platform chart library for Avalonia. 9 | avalonia chart skia 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /Sources/Microcharts.Eto/ChartView.cs: -------------------------------------------------------------------------------- 1 | 2 | namespace Microcharts.Eto 3 | { 4 | using global::Eto.SkiaDraw; 5 | public class ChartView : SkiaDrawable 6 | { 7 | Chart? _chart; 8 | public ChartView() 9 | { 10 | } 11 | 12 | public Chart? Chart 13 | { 14 | get => _chart; 15 | set 16 | { 17 | _chart = value; 18 | this.Invalidate(); 19 | } 20 | } 21 | protected override void OnPaint(SKPaintEventArgs e) 22 | { 23 | if (_chart != null) 24 | _chart.Draw(e.Surface.Canvas, Width, Height); 25 | else 26 | e.Surface.Canvas.Clear(); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/App.xaml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /.github/stale.yml: -------------------------------------------------------------------------------- 1 | # Number of days of inactivity before an issue becomes stale 2 | daysUntilStale: 60 3 | # Number of days of inactivity before a stale issue is closed 4 | daysUntilClose: 14 5 | # Issues with these labels will never be considered stale 6 | exemptLabels: 7 | - Release Announcement 8 | - Important News 9 | # Label to use when marking an issue as stale 10 | staleLabel: wontfix 11 | # Comment to post when marking an issue as stale. Set to `false` to disable 12 | markComment: > 13 | This issue has been automatically marked as stale because it has not had 14 | recent activity. It will be closed if no further activity occurs. Thank you 15 | for your contributions. 16 | # Comment to post when closing a stale issue. Set to `false` to disable 17 | closeComment: true 18 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms.Android/Assets/AboutAssets.txt: -------------------------------------------------------------------------------- 1 | Any raw assets you want to be deployed with your application can be placed in 2 | this directory (and child directories) and given a Build Action of "AndroidAsset". 3 | 4 | These files will be deployed with you package and will be accessible using Android's 5 | AssetManager, like this: 6 | 7 | public class ReadAsset : Activity 8 | { 9 | protected override void OnCreate (Bundle bundle) 10 | { 11 | base.OnCreate (bundle); 12 | 13 | InputStream input = Assets.Open ("my_asset.txt"); 14 | } 15 | } 16 | 17 | Additionally, some Android functions will automatically load asset files: 18 | 19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf"); 20 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Avalonia/Program.cs: -------------------------------------------------------------------------------- 1 | using Avalonia; 2 | 3 | namespace Microcharts.Samples.Avalonia 4 | { 5 | class Program 6 | { 7 | // Initialization code. Don't use any Avalonia, third-party APIs or any 8 | // SynchronizationContext-reliant code before AppMain is called: things aren't initialized 9 | // yet and stuff might break. 10 | public static void Main(string[] args) => BuildAvaloniaApp() 11 | .StartWithClassicDesktopLifetime(args); 12 | 13 | // Avalonia configuration, don't remove; also used by visual designer. 14 | public static AppBuilder BuildAvaloniaApp() 15 | => AppBuilder.Configure() 16 | .UsePlatformDetect() 17 | .LogToTrace(); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Shared/App.xaml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Sources/Microcharts/Abstracts/ITimer.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) Aloïs DENIEL. All rights reserved. 2 | // Licensed under the MIT License. See LICENSE in the project root for license information. 3 | 4 | using System; 5 | 6 | namespace Microcharts.Abstracts 7 | { 8 | /// 9 | /// A repeated timer. 10 | /// 11 | public interface ITimer 12 | { 13 | /// 14 | /// Start the timer and triggers the step action every elapsed interval, until false is returned. 15 | /// 16 | /// The intervalle between steps. 17 | /// An action executed every step. It should return false when finished. 18 | void Start(TimeSpan interval, Func step); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples/ExampleChartItem.cs: -------------------------------------------------------------------------------- 1 | namespace Microcharts.Samples 2 | { 3 | public class ExampleChartItem 4 | { 5 | public Chart Chart { get; set; } 6 | public string ChartType { get => Chart?.GetType()?.Name ?? "Unknown"; } 7 | public string ExampleName { get; set; } 8 | public string ExampleTextDescription { get; set; } 9 | public ExampleChartType ExampleChartType { get; set; } 10 | public bool IsSimple => ExampleChartType == ExampleChartType.Simple; 11 | public bool IsSeries => ExampleChartType == ExampleChartType.Series; 12 | public bool IsDynamic => ExampleChartType == ExampleChartType.Dynamic; 13 | } 14 | 15 | public enum ExampleChartType 16 | { 17 | Simple, 18 | Series, 19 | Dynamic 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | title: "[Bug]" 5 | labels: bug 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Describe the bug** 11 | A clear and concise description of what the bug is. 12 | 13 | **Which platform and version is this for?** 14 | example: iOS 13.4 15 | 16 | **To Reproduce** 17 | Steps to reproduce the behavior: 18 | 1. Go to '...' 19 | 2. Click on '....' 20 | 3. Scroll down to '....' 21 | 4. See error 22 | 23 | **Expected behavior** 24 | A clear and concise description of what you expected to happen. 25 | 26 | **Screenshots** 27 | If applicable, add screenshots to help explain your problem. 28 | 29 | ** Device** 30 | if it's only happening for a specific device, let us know. 31 | 32 | **Additional information** 33 | Add any other things about the problem here. 34 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/Windows/app.manifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 11 | true/PM 12 | PerMonitorV2, PerMonitor 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Eto/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleName 6 | Microcharts.Samples.Eto 7 | CFBundleIdentifier 8 | com.example.Microcharts.Samples.Eto 9 | CFBundleShortVersionString 10 | 1.0 11 | LSMinimumSystemVersion 12 | 10.12 13 | CFBundleDevelopmentRegion 14 | en 15 | NSHumanReadableCopyright 16 | 17 | CFBundleIconFile 18 | MacIcon.icns 19 | 20 | 21 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/app.manifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 11 | true/PM 12 | PerMonitorV2, PerMonitor 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.iOS/MainViewController.designer.cs: -------------------------------------------------------------------------------- 1 | // WARNING 2 | // 3 | // This file has been generated automatically by Visual Studio from the outlets and 4 | // actions declared in your storyboard file. 5 | // Manual changes to this file will not be maintained. 6 | // 7 | using Foundation; 8 | using System; 9 | using System.CodeDom.Compiler; 10 | using UIKit; 11 | 12 | namespace Microcharts.Samples.iOS 13 | { 14 | [Register ("MainViewController")] 15 | partial class MainViewController 16 | { 17 | [Outlet] 18 | [GeneratedCode ("iOS Designer", "1.0")] 19 | UIKit.UIView chart1 { get; set; } 20 | 21 | void ReleaseDesignerOutlets () 22 | { 23 | if (chart1 != null) { 24 | chart1.Dispose (); 25 | chart1 = null; 26 | } 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/ViewController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | using AppKit; 4 | using Microcharts.macOS; 5 | using System.Linq; 6 | 7 | namespace Microcharts.Samples.macOS 8 | { 9 | public partial class ViewController : NSViewController 10 | { 11 | public ViewController(IntPtr handle) : base(handle) 12 | { 13 | } 14 | 15 | public override void ViewDidLoad() 16 | { 17 | base.ViewDidLoad(); 18 | 19 | var chartView = new ChartView() 20 | { 21 | Chart = Data.CreateQuickstart().ElementAt(2), 22 | Frame = this.View.Bounds, 23 | AutoresizingMask = NSViewResizingMask.WidthSizable | NSViewResizingMask.HeightSizable 24 | }; 25 | 26 | this.View.AddSubview(chartView); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms/App.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Xamarin.Forms; 3 | using Xamarin.Forms.Xaml; 4 | 5 | [assembly: XamlCompilation(XamlCompilationOptions.Compile)] 6 | 7 | namespace Microcharts.Samples.Forms 8 | { 9 | public partial class App : Application 10 | { 11 | public App() 12 | { 13 | InitializeComponent(); 14 | 15 | MainPage = new MainPage(); 16 | } 17 | 18 | protected override void OnStart() 19 | { 20 | // Handle when your app starts 21 | } 22 | 23 | protected override void OnSleep() 24 | { 25 | // Handle when your app sleeps 26 | } 27 | 28 | protected override void OnResume() 29 | { 30 | // Handle when your app resumes 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/Tizen/tizen-manifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | maui-appicon-placeholder 7 | 8 | 9 | 10 | 11 | http://tizen.org/privilege/internet 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/App.xaml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /Sources/Microcharts.Uno/Microcharts.Uno.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0 5 | enable 6 | 9 7 | 8 | Simple, cross-platform chart library for Uno. 9 | dotnet chart skia skiasharp uno 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms.Android/MainActivity.cs: -------------------------------------------------------------------------------- 1 | using Android.App; 2 | using Android.Content.PM; 3 | using Android.OS; 4 | 5 | namespace Microcharts.Samples.Forms.Android 6 | { 7 | [Activity(Label = "Microcharts.Samples.Forms", Theme = "@style/MainTheme", MainLauncher = true, 8 | ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)] 9 | public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity 10 | { 11 | protected override void OnCreate(Bundle savedInstanceState) 12 | { 13 | TabLayoutResource = Resource.Layout.Tabbar; 14 | ToolbarResource = Resource.Layout.Toolbar; 15 | 16 | base.OnCreate(savedInstanceState); 17 | global::Xamarin.Forms.Forms.Init(this, savedInstanceState); 18 | LoadApplication(new App()); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Assets/AboutAssets.txt: -------------------------------------------------------------------------------- 1 | To add cross-platform image assets for your Uno Platform app, use the Assets folder 2 | in the shared project instead. Assets in this folder are Android-only assets. 3 | 4 | Any raw assets you want to be deployed with your application can be placed in 5 | this directory (and child directories) and given a Build Action of "AndroidAsset". 6 | 7 | These files will be deployed with you package and will be accessible using Android's 8 | AssetManager, like this: 9 | 10 | public class ReadAsset : Activity 11 | { 12 | protected override void OnCreate (Bundle bundle) 13 | { 14 | base.OnCreate (bundle); 15 | 16 | InputStream input = Assets.Open ("my_asset.txt"); 17 | } 18 | } 19 | 20 | Additionally, some Android functions will automatically load asset files: 21 | 22 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf"); 23 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.iOS/MainViewController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Linq; 3 | using CoreGraphics; 4 | using Microcharts.iOS; 5 | using UIKit; 6 | 7 | namespace Microcharts.Samples.iOS 8 | { 9 | public partial class MainViewController : UIViewController 10 | { 11 | public MainViewController(IntPtr handle) : base(handle) 12 | { 13 | // Note: this .ctor should not contain any initialization logic. 14 | } 15 | 16 | public override void ViewWillAppear(bool animated) 17 | { 18 | base.ViewWillAppear(animated); 19 | 20 | var chartView = new ChartView 21 | { 22 | Frame = new CGRect(0, 0, chart1.Bounds.Width, 172), 23 | AutoresizingMask = UIViewAutoresizing.FlexibleWidth, 24 | Chart = Data.CreateQuickstart().ElementAt(2) 25 | }; 26 | 27 | chart1.AddSubview(chartView); 28 | } 29 | } 30 | } 31 | 32 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/Properties/PublishProfiles/win10-x64.pubxml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | FileSystem 8 | x64 9 | win10-x64 10 | bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\ 11 | true 12 | False 13 | False 14 | True 15 | 19 | 20 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/Properties/PublishProfiles/win10-x86.pubxml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | FileSystem 8 | x86 9 | win10-x86 10 | bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\ 11 | true 12 | False 13 | False 14 | True 15 | 19 | 20 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/MainActivity.cs: -------------------------------------------------------------------------------- 1 | using Android.App; 2 | using Android.OS; 3 | using AndroidX.AppCompat.App; 4 | using Microcharts.Droid; 5 | 6 | namespace Microcharts.Samples.Android 7 | { 8 | [Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher = true)] 9 | public class MainActivity : AppCompatActivity 10 | { 11 | protected override void OnCreate(Bundle savedInstanceState) 12 | { 13 | base.OnCreate(savedInstanceState); 14 | 15 | SetContentView(Resource.Layout.activity_main); 16 | 17 | var charts = Data.CreateQuickstart(); 18 | 19 | FindViewById(Resource.Id.chartView1).Chart = charts[0]; 20 | FindViewById(Resource.Id.chartView2).Chart = charts[1]; 21 | FindViewById(Resource.Id.chartView3).Chart = charts[2]; 22 | FindViewById(Resource.Id.chartView4).Chart = charts[3]; 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/Properties/PublishProfiles/win10-arm64.pubxml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | FileSystem 8 | ARM64 9 | win10-arm64 10 | bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\ 11 | true 12 | False 13 | False 14 | True 15 | 19 | 20 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/Windows/App.xaml.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Maui; 2 | using Microsoft.UI.Xaml; 3 | using Windows.ApplicationModel; 4 | 5 | // To learn more about WinUI, the WinUI project structure, 6 | // and more about our project templates, see: http://aka.ms/winui-project-info. 7 | 8 | namespace Microcharts.Samples.Maui.WinUI 9 | { 10 | /// 11 | /// Provides application-specific behavior to supplement the default Application class. 12 | /// 13 | public partial class App : MauiWinUIApplication 14 | { 15 | /// 16 | /// Initializes the singleton application object. This is the first line of authored code 17 | /// executed, and as such is the logical equivalent of main() or WinMain(). 18 | /// 19 | public App() 20 | { 21 | this.InitializeComponent(); 22 | } 23 | 24 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Properties/Properties/win10-x64.pubxml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | FileSystem 8 | x64 9 | win10-x64 10 | bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\ 11 | true 12 | False 13 | False 14 | True 15 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Properties/Properties/win10-x86.pubxml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | FileSystem 8 | x86 9 | win10-x86 10 | bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\ 11 | true 12 | False 13 | False 14 | True 15 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Windows/Properties/Properties/win10-arm64.pubxml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | FileSystem 8 | arm64 9 | win10-arm64 10 | bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\ 11 | true 12 | False 13 | False 14 | True 15 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Sources/Microcharts/Constants/ValueLabelOption.cs: -------------------------------------------------------------------------------- 1 | namespace Microcharts 2 | { 3 | /// 4 | /// Define the value label layout option of charts 5 | /// 6 | public enum ValueLabelOption 7 | { 8 | /// 9 | /// Display value label on top of the chart 10 | /// 11 | /// For only work for 1 serie. With multi-series filled, it's that will be used 12 | TopOfChart, 13 | /// 14 | /// Display value label on top of displayed element (e.g Bar or Point) 15 | /// 16 | TopOfElement, 17 | /// 18 | /// Display value label over the displayed element (e.g Bar or Point) 19 | /// 20 | OverElement, 21 | /// 22 | /// Not display the value label 23 | /// 24 | None 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Sources/Microcharts-mac.slnf: -------------------------------------------------------------------------------- 1 | { 2 | "solution": { 3 | "path": "Microcharts.sln", 4 | "projects": [ 5 | "Microcharts.Droid\\Microcharts.Droid.csproj", 6 | "Microcharts.Forms\\Microcharts.Forms.csproj", 7 | "Microcharts.MetaPackage\\Microcharts.Metapackage.csproj", 8 | "Microcharts.Samples.Android\\Microcharts.Samples.Android.csproj", 9 | "Microcharts.Samples.Forms\\Microcharts.Samples.Forms.Android\\Microcharts.Samples.Forms.Android.csproj", 10 | "Microcharts.Samples.Forms\\Microcharts.Samples.Forms.iOS\\Microcharts.Samples.Forms.iOS.csproj", 11 | "Microcharts.Samples.Forms\\Microcharts.Samples.Forms\\Microcharts.Samples.Forms.csproj", 12 | "Microcharts.Samples.iOS\\Microcharts.Samples.iOS.csproj", 13 | "Microcharts.Samples.macOS\\Microcharts.Samples.macOS.csproj", 14 | "Microcharts.Samples\\Microcharts.Samples.csproj", 15 | "Microcharts.iOS\\Microcharts.iOS.csproj", 16 | "Microcharts.macOS\\Microcharts.macOS.csproj", 17 | "Microcharts\\Microcharts.csproj" 18 | ] 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Eto/Microcharts.Samples.Eto.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 10 | net6.0 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Sources/Microcharts.Forms/Microcharts.Forms.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0 5 | latest 6 | Simple, cross-platform chart library for Xamarin.Forms. 7 | xamarin ios android chart skia Forms 8 | 9 | 10 | 11 | full 12 | 13 | 14 | 15 | none 16 | 3 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("Microcharts.Samples.Android")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("Microcharts.Samples.Android")] 14 | [assembly: AssemblyCopyright("Copyright © 2018")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | [assembly: AssemblyVersion("1.0.0.0")] 26 | [assembly: AssemblyFileVersion("1.0.0.0")] 27 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/ChartPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | using Microsoft.Maui; 8 | using Microsoft.Maui.Controls; 9 | using Microsoft.Maui.Controls.Xaml; 10 | 11 | namespace Microcharts.Samples.Maui 12 | { 13 | [XamlCompilation(XamlCompilationOptions.Compile)] 14 | public partial class ChartPage : ContentPage 15 | { 16 | 17 | public ChartPage(ExampleChartItem chartItem) 18 | { 19 | ExampleChartItem = chartItem; 20 | InitializeComponent(); 21 | Title = ExampleChartItem.ChartType; 22 | 23 | } 24 | 25 | public ExampleChartItem ExampleChartItem { get; } 26 | 27 | protected override void OnAppearing() 28 | { 29 | base.OnAppearing(); 30 | 31 | chartView.Chart = ExampleChartItem.Chart; 32 | if(!chartView.Chart.IsAnimating) 33 | chartView.Chart.AnimateAsync(true).ConfigureAwait(false); 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms/ChartConfigurationPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | using Xamarin.Forms; 8 | using Xamarin.Forms.Xaml; 9 | 10 | namespace Microcharts.Samples.Forms 11 | { 12 | [XamlCompilation(XamlCompilationOptions.Compile)] 13 | public partial class ChartConfigurationPage : ContentPage 14 | { 15 | public ChartConfigurationPage(string chartType) 16 | { 17 | Items = Data.CreateXamarinExampleChartItem(chartType).ToList(); 18 | InitializeComponent(); 19 | Title = chartType; 20 | } 21 | 22 | public List Items { get; } 23 | 24 | private void TapGestureRecognizer_Tapped(object sender, EventArgs e) 25 | { 26 | Frame frame = (sender as Frame); 27 | ExampleChartItem exChartItem = frame.BindingContext as ExampleChartItem; 28 | Navigation.PushAsync(new ChartPage(exChartItem)); 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /Sources/Microcharts/Helpers/DelayTimer.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) Aloïs DENIEL. All rights reserved. 2 | // Licensed under the MIT License. See LICENSE in the project root for license information. 3 | 4 | using Microcharts.Abstracts; 5 | 6 | namespace Microcharts 7 | { 8 | using System; 9 | using System.Threading.Tasks; 10 | 11 | /// 12 | /// A timer based on Task.Delay. 13 | /// 14 | public class DelayTimer : ITimer 15 | { 16 | /// 17 | /// Start the loop with specified interval and step action. The loop stops as 18 | /// soon that the step return false. 19 | /// 20 | /// The interval. 21 | /// The step. 22 | public async void Start(TimeSpan interval, Func step) 23 | { 24 | var shouldContinue = step(); 25 | 26 | while (shouldContinue) 27 | { 28 | await Task.Delay(interval); 29 | shouldContinue = step(); 30 | } 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /Sources/Microcharts.Maui/Microcharts.Maui.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | net7.0-ios;net7.0-android;net7.0-maccatalyst 6 | $(TargetFrameworks);net7.0-windows10.0.19041 7 | 10.0.17763.0 8 | net7.0-windows 9 | true 10 | 11 | Simple, cross-platform chart library for .NET MAUI. 12 | maui dotnet chart skia skiasharp 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/ChartConfigurationPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | using Microsoft.Maui; 8 | using Microsoft.Maui.Controls; 9 | using Microsoft.Maui.Controls.Xaml; 10 | 11 | namespace Microcharts.Samples.Maui 12 | { 13 | [XamlCompilation(XamlCompilationOptions.Compile)] 14 | public partial class ChartConfigurationPage : ContentPage 15 | { 16 | public ChartConfigurationPage(string chartType) 17 | { 18 | Items = Data.CreateXamarinExampleChartItem(chartType).ToList(); 19 | InitializeComponent(); 20 | Title = chartType; 21 | } 22 | 23 | public List Items { get; } 24 | 25 | private void TapGestureRecognizer_Tapped(object sender, EventArgs e) 26 | { 27 | Frame frame = (sender as Frame); 28 | ExampleChartItem exChartItem = frame.BindingContext as ExampleChartItem; 29 | Navigation.PushAsync(new ChartPage(exChartItem)); 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Directory.Build.targets: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | <_KeepLaunchProfiles>true 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | false 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Shared/Assets/SharedAssets.md: -------------------------------------------------------------------------------- 1 | See the documentation about assets here: https://platform.uno/docs/articles/features/working-with-assets.html 2 | 3 | # Here is a cheat sheet: 4 | 5 | 1. Add the image file to the `Assets` directory of a shared project. 6 | 2. Set the build action to `Content`. 7 | 3. (Recommended) Provide an asset for various scales/dpi 8 | 9 | ## Examples 10 | 11 | ``` 12 | \Assets\Images\logo.scale-100.png 13 | \Assets\Images\logo.scale-200.png 14 | \Assets\Images\logo.scale-400.png 15 | 16 | \Assets\Images\scale-100\logo.png 17 | \Assets\Images\scale-200\logo.png 18 | \Assets\Images\scale-400\logo.png 19 | ``` 20 | 21 | ## Table of scales 22 | 23 | | Scale | UWP | iOS | Android | 24 | |-------|:-----------:|:--------:|:-------:| 25 | | `100` | scale-100 | @1x | mdpi | 26 | | `125` | scale-125 | N/A | N/A | 27 | | `150` | scale-150 | N/A | hdpi | 28 | | `200` | scale-200 | @2x | xhdpi | 29 | | `300` | scale-300 | @3x | xxhdpi | 30 | | `400` | scale-400 | N/A | xxxhdpi | 31 | 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/MacCatalyst/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | UIDeviceFamily 6 | 7 | 1 8 | 2 9 | 10 | UIRequiredDeviceCapabilities 11 | 12 | arm64 13 | 14 | UISupportedInterfaceOrientations 15 | 16 | UIInterfaceOrientationPortrait 17 | UIInterfaceOrientationLandscapeLeft 18 | UIInterfaceOrientationLandscapeRight 19 | 20 | UISupportedInterfaceOrientations~ipad 21 | 22 | UIInterfaceOrientationPortrait 23 | UIInterfaceOrientationPortraitUpsideDown 24 | UIInterfaceOrientationLandscapeLeft 25 | UIInterfaceOrientationLandscapeRight 26 | 27 | XSAppIconAssets 28 | Assets.xcassets/appicon.appiconset 29 | 30 | 31 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Aloïs Deniel 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Sources/Microcharts.Droid/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | 4 | // Information about this assembly is defined by the following attributes. 5 | // Change them to the values specific to your project. 6 | 7 | [assembly: AssemblyTitle("Microcharts.Droid")] 8 | [assembly: AssemblyDescription("")] 9 | [assembly: AssemblyConfiguration("")] 10 | [assembly: AssemblyCompany("")] 11 | [assembly: AssemblyProduct("")] 12 | [assembly: AssemblyCopyright("${AuthorCopyright}")] 13 | [assembly: AssemblyTrademark("")] 14 | [assembly: AssemblyCulture("")] 15 | 16 | // The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}". 17 | // The form "{Major}.{Minor}.*" will automatically update the build and revision, 18 | // and "{Major}.{Minor}.{Build}.*" will update just the revision. 19 | 20 | [assembly: AssemblyVersion("1.0.0")] 21 | 22 | // The following attributes are used to specify the signing key for the assembly, 23 | // if desired. See the Mono documentation for more information about signing. 24 | 25 | //[assembly: AssemblyDelaySign(false)] 26 | //[assembly: AssemblyKeyFile("")] 27 | -------------------------------------------------------------------------------- /Sources/Microcharts.iOS/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | 4 | // Information about this assembly is defined by the following attributes. 5 | // Change them to the values specific to your project. 6 | 7 | [assembly: AssemblyTitle("Microcharts.iOS")] 8 | [assembly: AssemblyDescription("")] 9 | [assembly: AssemblyConfiguration("")] 10 | [assembly: AssemblyCompany("")] 11 | [assembly: AssemblyProduct("")] 12 | [assembly: AssemblyCopyright("${AuthorCopyright}")] 13 | [assembly: AssemblyTrademark("")] 14 | [assembly: AssemblyCulture("")] 15 | 16 | // The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}". 17 | // The form "{Major}.{Minor}.*" will automatically update the build and revision, 18 | // and "{Major}.{Minor}.{Build}.*" will update just the revision. 19 | 20 | [assembly: AssemblyVersion("1.0.*")] 21 | 22 | // The following attributes are used to specify the signing key for the assembly, 23 | // if desired. See the Mono documentation for more information about signing. 24 | 25 | //[assembly: AssemblyDelaySign(false)] 26 | //[assembly: AssemblyKeyFile("")] 27 | -------------------------------------------------------------------------------- /Sources/Microcharts.macOS/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | 4 | // Information about this assembly is defined by the following attributes. 5 | // Change them to the values specific to your project. 6 | 7 | [assembly: AssemblyTitle("Microcharts.macOS")] 8 | [assembly: AssemblyDescription("")] 9 | [assembly: AssemblyConfiguration("")] 10 | [assembly: AssemblyCompany("")] 11 | [assembly: AssemblyProduct("")] 12 | [assembly: AssemblyCopyright("${AuthorCopyright}")] 13 | [assembly: AssemblyTrademark("")] 14 | [assembly: AssemblyCulture("")] 15 | 16 | // The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}". 17 | // The form "{Major}.{Minor}.*" will automatically update the build and revision, 18 | // and "{Major}.{Minor}.{Build}.*" will update just the revision. 19 | 20 | [assembly: AssemblyVersion("1.0.*")] 21 | 22 | // The following attributes are used to specify the signing key for the assembly, 23 | // if desired. See the Mono documentation for more information about signing. 24 | 25 | //[assembly: AssemblyDelaySign(false)] 26 | //[assembly: AssemblyKeyFile("")] 27 | -------------------------------------------------------------------------------- /Sources/Microcharts/ChartSerie.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using SkiaSharp; 3 | 4 | namespace Microcharts 5 | { 6 | /// 7 | /// A serie of data entries for chart 8 | /// 9 | public class ChartSerie 10 | { 11 | /// 12 | /// Gets or sets the name of the serie 13 | /// 14 | /// Name of the serie 15 | public string Name { get; set; } = "Default"; 16 | 17 | /// 18 | /// Gets or sets the color of the fill 19 | /// 20 | /// The color of the fill. 21 | public SKColor? Color { get; set; } = SKColors.Black; 22 | 23 | /// 24 | /// Gets or sets the color of the rest part 25 | /// 26 | /// The color of the rest part. 27 | public SKColor? OtherColor { get; set; } = SKColors.Empty; 28 | 29 | /// 30 | /// Gets or sets the entries value for the serie 31 | /// 32 | public IEnumerable Entries { get; set; } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleName 6 | Microcharts 7 | CFBundleIdentifier 8 | com.Microcharts 9 | CFBundleShortVersionString 10 | 1.0 11 | CFBundleVersion 12 | 1 13 | LSMinimumSystemVersion 14 | 10.12 15 | CFBundleDevelopmentRegion 16 | en 17 | CFBundleInfoDictionaryVersion 18 | 6.0 19 | CFBundlePackageType 20 | APPL 21 | CFBundleSignature 22 | ???? 23 | NSHumanReadableCopyright 24 | ${AuthorCopyright:HtmlEncode} 25 | NSPrincipalClass 26 | NSApplication 27 | NSMainStoryboardFile 28 | Main 29 | XSAppIconAssets 30 | Assets.xcassets/AppIcon.appiconset 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Platforms/iOS/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | LSRequiresIPhoneOS 6 | 7 | UIDeviceFamily 8 | 9 | 1 10 | 2 11 | 12 | UIRequiredDeviceCapabilities 13 | 14 | arm64 15 | 16 | UISupportedInterfaceOrientations 17 | 18 | UIInterfaceOrientationPortrait 19 | UIInterfaceOrientationLandscapeLeft 20 | UIInterfaceOrientationLandscapeRight 21 | 22 | UISupportedInterfaceOrientations~ipad 23 | 24 | UIInterfaceOrientationPortrait 25 | UIInterfaceOrientationPortraitUpsideDown 26 | UIInterfaceOrientationLandscapeLeft 27 | UIInterfaceOrientationLandscapeRight 28 | 29 | XSAppIconAssets 30 | Assets.xcassets/appicon.appiconset 31 | 32 | 33 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Shared/Microcharts.Samples.Uno.Shared.shproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6279c845-92f8-4333-ab99-3d213163593c 5 | 14.0 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Sources/Microcharts.Uwp/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("Microcharts.Uwp")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("Microcharts.Uwp")] 13 | [assembly: AssemblyCopyright("Copyright © 2017")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Version information for an assembly consists of the following four values: 18 | // 19 | // Major Version 20 | // Minor Version 21 | // Build Number 22 | // Revision 23 | // 24 | // You can specify all the values or you can default the Build and Revision Numbers 25 | // by using the '*' as shown below: 26 | // [assembly: AssemblyVersion("1.0.*")] 27 | [assembly: AssemblyVersion("1.0.0.0")] 28 | [assembly: AssemblyFileVersion("1.0.0.0")] 29 | [assembly: ComVisible(false)] -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.iOS/StoryboardHelpers.cs: -------------------------------------------------------------------------------- 1 | using UIKit; 2 | 3 | namespace Microcharts.Samples.iOS 4 | { 5 | public static class StoryboardHelpers 6 | { 7 | public static T CreateViewController(string storyboardName, string viewControllerStoryBoardId = null) where T : UIViewController 8 | { 9 | var storyboard = UIStoryboard.FromName(storyboardName, null); 10 | T vc; 11 | 12 | if (string.IsNullOrEmpty(viewControllerStoryBoardId)) 13 | { 14 | vc = (T) storyboard.InstantiateInitialViewController(); 15 | 16 | if (UIDevice.CurrentDevice.CheckSystemVersion(13, 0)) 17 | { 18 | vc.ModalPresentationStyle = UIModalPresentationStyle.FullScreen; 19 | } 20 | 21 | return vc; 22 | } 23 | 24 | vc = (T) storyboard.InstantiateViewController(viewControllerStoryBoardId); 25 | 26 | if (UIDevice.CurrentDevice.CheckSystemVersion(13, 0)) 27 | { 28 | vc.ModalPresentationStyle = UIModalPresentationStyle.FullScreen; 29 | } 30 | 31 | return vc; 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uwp/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("Microcharts.Samples.Uwp")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("Microcharts.Samples.Uwp")] 13 | [assembly: AssemblyCopyright("Copyright © 2017")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Version information for an assembly consists of the following four values: 18 | // 19 | // Major Version 20 | // Minor Version 21 | // Build Number 22 | // Revision 23 | // 24 | // You can specify all the values or you can default the Build and Revision Numbers 25 | // by using the '*' as shown below: 26 | // [assembly: AssemblyVersion("1.0.*")] 27 | [assembly: AssemblyVersion("1.0.0.0")] 28 | [assembly: AssemblyFileVersion("1.0.0.0")] 29 | [assembly: ComVisible(false)] -------------------------------------------------------------------------------- /Sources/Microcharts.Avalonia/ChartDrawOperation.cs: -------------------------------------------------------------------------------- 1 | using Avalonia; 2 | using Avalonia.Media; 3 | using Avalonia.Platform; 4 | using Avalonia.Rendering.SceneGraph; 5 | using Avalonia.Skia; 6 | 7 | namespace Microcharts.Avalonia 8 | { 9 | public class ChartDrawOperation : ICustomDrawOperation 10 | { 11 | public ChartView Parent { get; } 12 | 13 | public ChartDrawOperation(ChartView parent) 14 | { 15 | Parent = parent; 16 | } 17 | 18 | public void Dispose() { } 19 | public bool HitTest(Point p) => Parent.Bounds.Contains(p); 20 | public bool Equals(ICustomDrawOperation other) => this == other; 21 | 22 | public void Render(ImmediateDrawingContext context) 23 | { 24 | if (context.TryGetFeature() is { } leaseFeature) 25 | { 26 | using var lease = leaseFeature.Lease(); 27 | var canvas = lease.SkCanvas; 28 | canvas.Save(); 29 | Parent.Chart?.Draw(canvas, (int)Bounds.Width, (int)Bounds.Height); 30 | canvas.Restore(); 31 | } 32 | } 33 | 34 | public Rect Bounds => Parent.Bounds; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms.iOS/AppDelegate.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using Foundation; 5 | using UIKit; 6 | 7 | namespace Microcharts.Samples.Forms.iOS 8 | { 9 | // The UIApplicationDelegate for the application. This class is responsible for launching the 10 | // User Interface of the application, as well as listening (and optionally responding) to 11 | // application events from iOS. 12 | [Register("AppDelegate")] 13 | public partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate 14 | { 15 | // 16 | // This method is invoked when the application has loaded and is ready to run. In this 17 | // method you should instantiate the window, load the UI into it and then make the window 18 | // visible. 19 | // 20 | // You have 17 seconds to return from this method, or iOS will terminate your application. 21 | // 22 | public override bool FinishedLaunching(UIApplication app, NSDictionary options) 23 | { 24 | global::Xamarin.Forms.Forms.Init(); 25 | LoadApplication(new App()); 26 | 27 | return base.FinishedLaunching(app, options); 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Sources/Microcharts.Uno.WinUI/Microcharts.Uno.WinUI.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0; 5 | enable 6 | 9 7 | 8 | Simple, cross-platform chart library for Uno WinUI. 9 | WinUI dotnet chart skia skiasharp windows uno 10 | 11 | 12 | 13 | $(DefineConstants)TRACE;WINUI 14 | 15 | 16 | 17 | $(DefineConstants)TRACE;WINUI 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms.iOS/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("Microcharts.Samples.Forms.iOS")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("CompanyName")] 12 | [assembly: AssemblyProduct("Microcharts.Samples.Forms.iOS")] 13 | [assembly: AssemblyCopyright("Copyright © CompanyName Year")] 14 | [assembly: AssemblyTrademark("CompanyTrademark")] 15 | [assembly: AssemblyCulture("")] 16 | [assembly: ComVisible(false)] 17 | 18 | // Version information for an assembly consists of the following four values: 19 | // 20 | // Major Version 21 | // Minor Version 22 | // Build Number 23 | // Revision 24 | // 25 | // You can specify all the values or you can default the Build and Revision Numbers 26 | // by using the '*' as shown below: 27 | // [assembly: AssemblyVersion("1.0.*")] 28 | [assembly: AssemblyVersion("1.0.0.0")] 29 | [assembly: AssemblyFileVersion("1.0.0.0")] 30 | -------------------------------------------------------------------------------- /Sources/Microcharts.Avalonia/ChartView.cs: -------------------------------------------------------------------------------- 1 | using Avalonia; 2 | using Avalonia.Controls; 3 | using Avalonia.Media; 4 | 5 | namespace Microcharts.Avalonia 6 | { 7 | public class ChartView : Control 8 | { 9 | public ChartView() 10 | { 11 | drawOperation = new ChartDrawOperation(this); 12 | } 13 | 14 | protected override void OnPropertyChanged(AvaloniaPropertyChangedEventArgs change) 15 | { 16 | base.OnPropertyChanged(change); 17 | if (change.Property == ChartProperty) 18 | { 19 | InvalidateVisual(); 20 | } 21 | } 22 | 23 | readonly ChartDrawOperation drawOperation; 24 | Chart? chart; 25 | 26 | public Chart? Chart 27 | { 28 | get => chart; 29 | set => SetAndRaise(ChartProperty, ref chart, value); 30 | } 31 | 32 | public static readonly DirectProperty ChartProperty = 33 | AvaloniaProperty.RegisterDirect( 34 | nameof(Chart), 35 | c => c.Chart, 36 | (c, v) => c.Chart = v); 37 | 38 | public override void Render(DrawingContext context) 39 | { 40 | context.Custom(drawOperation); 41 | } 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms/Microcharts.Samples.Forms.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0 5 | 6 | 7 | 8 | pdbonly 9 | true 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | LegacyPage.xaml 24 | 25 | 26 | 27 | 28 | 29 | MSBuild:UpdateDesignTimeXaml 30 | 31 | 32 | MSBuild:UpdateDesignTimeXaml 33 | 34 | 35 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uwp/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using System.Linq; 5 | using System.Runtime.InteropServices.WindowsRuntime; 6 | using Windows.Foundation; 7 | using Windows.Foundation.Collections; 8 | using Windows.UI.Xaml; 9 | using Windows.UI.Xaml.Controls; 10 | using Windows.UI.Xaml.Controls.Primitives; 11 | using Windows.UI.Xaml.Data; 12 | using Windows.UI.Xaml.Input; 13 | using Windows.UI.Xaml.Media; 14 | using Windows.UI.Xaml.Navigation; 15 | 16 | // The Blank Page item template is documented at https://go.microsoft.com/fwlink/?LinkId=402352&clcid=0x409 17 | 18 | namespace Microcharts.Samples.Uwp 19 | { 20 | /// 21 | /// An empty page that can be used on its own or navigated to within a Frame. 22 | /// 23 | public sealed partial class MainPage : Page 24 | { 25 | public MainPage() 26 | { 27 | this.InitializeComponent(); 28 | var charts = Data.CreateQuickstart(); 29 | this.chart1.Chart = charts[0]; 30 | this.chart2.Chart = charts[1]; 31 | this.chart3.Chart = charts[2]; 32 | this.chart4.Chart = charts[3]; 33 | this.chart5.Chart = charts[4]; 34 | this.chart6.Chart = charts[5]; 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms.Android/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("Microcharts.Samples.Forms.Android")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("CompanyName")] 13 | [assembly: AssemblyProduct("Microcharts.Samples.Forms.Android")] 14 | [assembly: AssemblyCopyright("Copyright © CompanyName Year")] 15 | [assembly: AssemblyTrademark("CompanyTrademark")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /Sources/Microcharts.WinUI/Microcharts.WinUI.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net6.0-windows10.0.19041.0 5 | enable 6 | 9 7 | true 8 | Simple, cross-platform chart library for WindowsAppSDK / WinUI. 9 | WinUI dotnet chart skia skiasharp windows reunion 10 | 11 | 12 | 13 | WINUI 14 | 15 | 16 | 17 | WINUI 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms/LegacyPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Diagnostics; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using Microcharts.Samples.Forms.Model; 8 | using Xamarin.Forms; 9 | 10 | namespace Microcharts.Samples.Forms 11 | { 12 | public partial class LegacyPage : ContentPage 13 | { 14 | public LegacyPage() 15 | { 16 | var charts = Data.CreateXamarinLegacySample(); 17 | var items = new List(); 18 | for (int i = 0; i < charts.Length; i++) 19 | { 20 | items.Add(new ChartItem(charts[i].GetType().Name, charts[i], i)); 21 | } 22 | Items = items; 23 | InitializeComponent(); 24 | } 25 | 26 | protected override void OnAppearing() 27 | { 28 | base.OnAppearing(); 29 | } 30 | 31 | public List Items { get; } 32 | 33 | private void TapGestureRecognizer_Tapped(object sender, EventArgs e) 34 | { 35 | Frame frame = (sender as Frame); 36 | ChartItem chartItem = frame.BindingContext as ChartItem; 37 | Navigation.PushAsync(new ChartConfigurationPage(chartItem.Name)); 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/LegacyPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Diagnostics; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using Microcharts.Samples.Maui.Model; 8 | using Microsoft.Maui; 9 | using Microsoft.Maui.Controls; 10 | 11 | namespace Microcharts.Samples.Maui 12 | { 13 | public partial class LegacyPage : ContentPage 14 | { 15 | public LegacyPage() 16 | { 17 | var charts = Data.CreateXamarinLegacySample(); 18 | var items = new List(); 19 | for (int i = 0; i < charts.Length; i++) 20 | { 21 | items.Add(new ChartItem(charts[i].GetType().Name, charts[i], i)); 22 | } 23 | Items = items; 24 | InitializeComponent(); 25 | } 26 | 27 | protected override void OnAppearing() 28 | { 29 | base.OnAppearing(); 30 | } 31 | 32 | public List Items { get; } 33 | 34 | private void TapGestureRecognizer_Tapped(object sender, EventArgs e) 35 | { 36 | Frame frame = (sender as Frame); 37 | ChartItem chartItem = frame.BindingContext as ChartItem; 38 | Navigation.PushAsync(new ChartConfigurationPage(chartItem.Name)); 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Shared/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.UI.Xaml; 2 | using Microsoft.UI.Xaml.Controls; 3 | using Microsoft.UI.Xaml.Controls.Primitives; 4 | using Microsoft.UI.Xaml.Data; 5 | using Microsoft.UI.Xaml.Input; 6 | using Microsoft.UI.Xaml.Media; 7 | using Microsoft.UI.Xaml.Navigation; 8 | using System; 9 | using System.Collections.Generic; 10 | using System.IO; 11 | using System.Linq; 12 | using System.Runtime.InteropServices.WindowsRuntime; 13 | using Windows.Foundation; 14 | using Windows.Foundation.Collections; 15 | 16 | // The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=402352&clcid=0x409 17 | 18 | namespace Microcharts.Samples.Uno 19 | { 20 | /// 21 | /// An empty page that can be used on its own or navigated to within a Frame. 22 | /// 23 | public sealed partial class MainPage : Page 24 | { 25 | public MainPage() 26 | { 27 | this.InitializeComponent(); 28 | var charts = Data.CreateQuickstart(); 29 | this.chart1.Chart = charts[0]; 30 | this.chart2.Chart = charts[1]; 31 | this.chart3.Chart = charts[2]; 32 | this.chart4.Chart = charts[3]; 33 | this.chart5.Chart = charts[4]; 34 | this.chart6.Chart = charts[5]; 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Android/Resources/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 9 | 13 | 18 | 23 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uwp/Properties/Default.rd.xml: -------------------------------------------------------------------------------- 1 | 17 | 18 | 19 | 20 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using Microcharts.Samples.Forms.Model; 4 | using Xamarin.Forms; 5 | 6 | namespace Microcharts.Samples.Forms 7 | { 8 | public partial class MainPage : ContentPage 9 | { 10 | public MainPage() 11 | { 12 | var charts = Data.CreateXamarinSample(); 13 | var items = new List(); 14 | for (int i = 0; i < charts.Length; i++) 15 | { 16 | items.Add(new ChartItem(charts[i].GetType().Name, charts[i], i)); 17 | } 18 | Items = items; 19 | InitializeComponent(); 20 | } 21 | 22 | protected override void OnAppearing() 23 | { 24 | base.OnAppearing(); 25 | } 26 | 27 | public List Items { get; } 28 | 29 | private void TapGestureRecognizer_Tapped(object sender, EventArgs e) 30 | { 31 | Frame frame = (sender as Frame); 32 | ChartItem chartItem = frame.BindingContext as ChartItem; 33 | Navigation.PushAsync(new ChartConfigurationPage(chartItem.Name)); 34 | } 35 | 36 | private void TapGestureRecognizerLegacyChartsTapped(object sender, EventArgs e) 37 | { 38 | Navigation.PushAsync(new LegacyPage()); 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms/ChartPage.xaml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 10 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using Microcharts.Samples.Maui.Model; 4 | using Microsoft.Maui; 5 | using Microsoft.Maui.Controls; 6 | 7 | namespace Microcharts.Samples.Maui 8 | { 9 | public partial class MainPage : ContentPage 10 | { 11 | public MainPage() 12 | { 13 | var charts = Data.CreateXamarinSample(); 14 | var items = new List(); 15 | for (int i = 0; i < charts.Length; i++) 16 | { 17 | items.Add(new ChartItem(charts[i].GetType().Name, charts[i], i)); 18 | } 19 | Items = items; 20 | InitializeComponent(); 21 | } 22 | 23 | protected override void OnAppearing() 24 | { 25 | base.OnAppearing(); 26 | } 27 | 28 | public List Items { get; } 29 | 30 | private void TapGestureRecognizer_Tapped(object sender, EventArgs e) 31 | { 32 | Frame frame = (sender as Frame); 33 | ChartItem chartItem = frame.BindingContext as ChartItem; 34 | Navigation.PushAsync(new ChartConfigurationPage(chartItem.Name)); 35 | } 36 | 37 | private void TapGestureRecognizerLegacyChartsTapped(object sender, EventArgs e) 38 | { 39 | Navigation.PushAsync(new LegacyPage()); 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /.github/workflows/CI-MacOS.yml: -------------------------------------------------------------------------------- 1 | name: Publish NuGet packages (Mac) 2 | 3 | on: 4 | # Allows you to run this workflow manually from the Actions tab 5 | workflow_dispatch: 6 | 7 | jobs: 8 | Mac-NuGet-Builds: 9 | env: 10 | NUGET_AUTH_TOKEN: ${{secrets.NUGET_API_TOKEN}} 11 | DOTNET_NOLOGO: true 12 | 13 | runs-on: macos-latest 14 | steps: 15 | - name: Clone source 16 | uses: actions/checkout@v3.1.0 17 | with: 18 | fetch-depth: 0 19 | 20 | - name: Install .NET SDK 21 | uses: actions/setup-dotnet@v3 22 | with: 23 | dotnet-version: | 24 | 6.0.x 25 | 7.0.x 26 | 27 | - name: "Restore NuGet packages (Mac)" 28 | run: msbuild /t:restore /p:Configuration=Release Sources/Microcharts-mac.slnf /bl:mac-restore-build.binlog 29 | 30 | - name: "Publish bin logs as artifacts" 31 | uses: actions/upload-artifact@v3 32 | with: 33 | name: msbuild-binlogs 34 | path: '**/*.binlog' 35 | if: always() 36 | 37 | - name: "Build and pack Microcharts macOS" 38 | run: msbuild /t:build,pack /p:Configuration=Release Sources/Microcharts.macOS/Microcharts.macOS.csproj 39 | 40 | - name: Publish packages to nuget.org 41 | run: | 42 | cd artifacts 43 | ls *.nupkg 44 | nuget push "*.nupkg" -SkipDuplicate -NoSymbols -ApiKey $NUGET_AUTH_TOKEN -Source https://api.nuget.org/v3/index.json 45 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/app.manifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 21 | true/PM 22 | PerMonitorV2, PerMonitor 23 | 24 | 25 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleName 6 | Microcharts.Sample.Uno.macOS 7 | CFBundleIdentifier 8 | com.companyname.Microcharts.Sample.Uno-macOS 9 | CFBundleShortVersionString 10 | 1.0 11 | CFBundleVersion 12 | 1 13 | CFBundleDevelopmentRegion 14 | en 15 | CFBundleInfoDictionaryVersion 16 | 6.0 17 | CFBundlePackageType 18 | APPL 19 | CFBundleSignature 20 | ???? 21 | LSApplicationCategoryType 22 | public.app-category.utilities 23 | NSHumanReadableCopyright 24 | ${AuthorCopyright:HtmlEncode} 25 | NSPrincipalClass 26 | NSApplication 27 | XSAppIconAssets 28 | Assets.xcassets/AppIcons.appiconset 29 | ATSApplicationFontsPath 30 | Fonts/uno-fluentui-assets.ttf 31 | 32 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.iOS/QuickstartViewController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using CoreGraphics; 3 | using Microcharts.iOS; 4 | using UIKit; 5 | 6 | namespace Microcharts.Samples.iOS 7 | { 8 | public partial class QuickstartViewController : UIViewController 9 | { 10 | public QuickstartViewController() 11 | { 12 | 13 | } 14 | 15 | protected QuickstartViewController(IntPtr handle) : base(handle) 16 | { 17 | // Note: this .ctor should not contain any initialization logic. 18 | } 19 | 20 | public override void ViewDidLoad() 21 | { 22 | base.ViewDidLoad(); 23 | 24 | this.View.BackgroundColor = UIColor.LightGray; 25 | 26 | var charts = Data.CreateQuickstart(); 27 | 28 | // Simple 29 | var chartView = new ChartView 30 | { 31 | Frame = new CGRect(0, 32, this.View.Bounds.Width, 140), 32 | AutoresizingMask = UIViewAutoresizing.FlexibleWidth, 33 | Chart = charts[0], 34 | }; 35 | 36 | this.View.Add(chartView); 37 | 38 | //Additional 39 | for (int i = 1; i < charts.Length; i++) 40 | { 41 | this.AddAdditionnalGraph(charts, i); 42 | } 43 | } 44 | 45 | private void AddAdditionnalGraph(Chart[] charts, int i) 46 | { 47 | this.View.Add(new ChartView 48 | { 49 | Frame = new CGRect(0, 32 + (i * (140 + 12)), this.View.Bounds.Width, 140), 50 | AutoresizingMask = UIViewAutoresizing.FlexibleWidth, 51 | Chart = charts[i], 52 | }); 53 | } 54 | } 55 | } 56 | 57 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/ChartPage.xaml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 10 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uwp/MainPage.xaml: -------------------------------------------------------------------------------- 1 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Avalonia/MainWindow.axaml: -------------------------------------------------------------------------------- 1 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Eto/SampleCharts.cs: -------------------------------------------------------------------------------- 1 | 2 | namespace Microcharts.Samples.Eto 3 | { 4 | using SkiaSharp; 5 | public class SampleCharts 6 | { 7 | public ChartEntry[] Entries = new ChartEntry[] 8 | { 9 | new ChartEntry(200) 10 | { 11 | Label = "January", 12 | ValueLabel = "200", 13 | Color = SKColor.Parse("#266489") 14 | }, 15 | new ChartEntry(400) 16 | { 17 | Label = "February", 18 | ValueLabel = "400", 19 | Color = SKColor.Parse("#68B9C0") 20 | }, 21 | new ChartEntry(-100) 22 | { 23 | Label = "March", 24 | ValueLabel = "-100", 25 | Color = SKColor.Parse("#90D585") 26 | } 27 | }; 28 | 29 | public Chart[] Charts { get; set; } 30 | 31 | public SampleCharts() 32 | { 33 | this.Charts = new Chart[] 34 | { 35 | new BarChart() {Entries = this.Entries}, 36 | new PointChart() {Entries = this.Entries}, 37 | new LineChart() {Entries = this.Entries}, 38 | new DonutChart() {Entries = this.Entries}, 39 | new RadialGaugeChart() {Entries = this.Entries}, 40 | new RadarChart() {Entries = this.Entries} 41 | }; 42 | } 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/MainWindow.xaml.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft Corporation and Contributors. 2 | // Licensed under the MIT License. 3 | 4 | using Microsoft.UI.Xaml; 5 | using Microsoft.UI.Xaml.Controls; 6 | using Microsoft.UI.Xaml.Controls.Primitives; 7 | using Microsoft.UI.Xaml.Data; 8 | using Microsoft.UI.Xaml.Input; 9 | using Microsoft.UI.Xaml.Media; 10 | using Microsoft.UI.Xaml.Navigation; 11 | using System; 12 | using System.Collections.Generic; 13 | using System.IO; 14 | using System.Linq; 15 | using System.Runtime.InteropServices.WindowsRuntime; 16 | using Windows.Foundation; 17 | using Windows.Foundation.Collections; 18 | 19 | // To learn more about WinUI, the WinUI project structure, 20 | // and more about our project templates, see: http://aka.ms/winui-project-info. 21 | 22 | namespace Microcharts.Samples.WinUI 23 | { 24 | /// 25 | /// An empty window that can be used on its own or navigated to within a Frame. 26 | /// 27 | public sealed partial class MainWindow : Window 28 | { 29 | public MainWindow() 30 | { 31 | this.InitializeComponent(); 32 | var charts = Data.CreateQuickstart(); 33 | this.chart1.Chart = charts[0]; 34 | this.chart2.Chart = charts[1]; 35 | this.chart3.Chart = charts[2]; 36 | this.chart4.Chart = charts[3]; 37 | this.chart5.Chart = charts[4]; 38 | this.chart6.Chart = charts[5]; 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacCatalyst/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleName 6 | Microcharts.Sample.Uno 7 | CFBundleDisplayName 8 | Microcharts.Sample.Uno 9 | CFBundleIdentifier 10 | com.companyname.changeme 11 | CFBundleShortVersionString 12 | 1.0 13 | CFBundleVersion 14 | 1.0 15 | UIDeviceFamily 16 | 17 | 2 18 | 19 | LSApplicationCategoryType 20 | public.app-category.utilities 21 | UILaunchStoryboardName 22 | LaunchScreen 23 | UISupportedInterfaceOrientations 24 | 25 | UIInterfaceOrientationPortrait 26 | UIInterfaceOrientationLandscapeLeft 27 | UIInterfaceOrientationLandscapeRight 28 | 29 | XSAppIconAssets 30 | Media.xcassets/AppIcon.appiconset 31 | UIAppFonts 32 | 33 | Fonts/uno-fluentui-assets.ttf 34 | 35 | 36 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/Android/Main.Android.cs: -------------------------------------------------------------------------------- 1 | using Android.App; 2 | using Android.Content; 3 | using Android.OS; 4 | using Android.Runtime; 5 | using Android.Views; 6 | using Android.Widget; 7 | using Com.Nostra13.Universalimageloader.Core; 8 | using Microsoft.UI.Xaml.Media; 9 | using System; 10 | using System.Collections.Generic; 11 | using System.Linq; 12 | using System.Text; 13 | 14 | namespace Microcharts.Samples.Uno.Droid 15 | { 16 | [global::Android.App.ApplicationAttribute( 17 | Label = "@string/ApplicationName", 18 | Icon = "@mipmap/icon", 19 | LargeHeap = true, 20 | HardwareAccelerated = true, 21 | Theme = "@style/AppTheme" 22 | )] 23 | public class Application : Microsoft.UI.Xaml.NativeApplication 24 | { 25 | public Application(IntPtr javaReference, JniHandleOwnership transfer) 26 | : base(() => new App(), javaReference, transfer) 27 | { 28 | ConfigureUniversalImageLoader(); 29 | } 30 | 31 | private static void ConfigureUniversalImageLoader() 32 | { 33 | // Create global configuration and initialize ImageLoader with this config 34 | ImageLoaderConfiguration config = new ImageLoaderConfiguration 35 | .Builder(Context) 36 | .Build(); 37 | 38 | ImageLoader.Instance.Init(config); 39 | 40 | ImageSource.DefaultImageLoader = ImageLoader.Instance.LoadImageAsync; 41 | } 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Shared/MainPage.xaml: -------------------------------------------------------------------------------- 1 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.WinUI/MainWindow.xaml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/iOS/Media.xcassets/LaunchImages.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images": [ 3 | { 4 | "orientation": "portrait", 5 | "extent": "full-screen", 6 | "minimum-system-version": "7.0", 7 | "scale": "2x", 8 | "size": "640x960", 9 | "idiom": "iphone" 10 | }, 11 | { 12 | "orientation": "portrait", 13 | "extent": "full-screen", 14 | "minimum-system-version": "7.0", 15 | "subtype": "retina4", 16 | "scale": "2x", 17 | "size": "640x1136", 18 | "idiom": "iphone" 19 | }, 20 | { 21 | "orientation": "portrait", 22 | "extent": "full-screen", 23 | "minimum-system-version": "7.0", 24 | "scale": "1x", 25 | "size": "768x1024", 26 | "idiom": "ipad" 27 | }, 28 | { 29 | "orientation": "landscape", 30 | "extent": "full-screen", 31 | "minimum-system-version": "7.0", 32 | "scale": "1x", 33 | "size": "1024x768", 34 | "idiom": "ipad" 35 | }, 36 | { 37 | "orientation": "portrait", 38 | "extent": "full-screen", 39 | "minimum-system-version": "7.0", 40 | "scale": "2x", 41 | "size": "1536x2048", 42 | "idiom": "ipad" 43 | }, 44 | { 45 | "orientation": "landscape", 46 | "extent": "full-screen", 47 | "minimum-system-version": "7.0", 48 | "scale": "2x", 49 | "size": "2048x1536", 50 | "idiom": "ipad" 51 | } 52 | ], 53 | "properties": {}, 54 | "info": { 55 | "version": 1, 56 | "author": "" 57 | } 58 | } -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms.Android/Resources/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 26 | 27 | 30 | 31 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.iOS/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("Microcharts.Samples.iOS")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("Microcharts.Samples.iOS")] 13 | [assembly: AssemblyCopyright("Copyright © 2020")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("E8626BE1-E233-4F4A-9084-673A987B9231")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Eto/MainForm.cs: -------------------------------------------------------------------------------- 1 | 2 | namespace Microcharts.Samples.Eto 3 | { 4 | using global::Eto.Forms; 5 | using global::Eto.Drawing; 6 | using Microcharts; 7 | public partial class MainForm : Form 8 | { 9 | Chart[] charts = new SampleCharts().Charts; 10 | public MainForm() 11 | { 12 | InitializeComponent(); 13 | 14 | var layout1 = new TableLayout() { Spacing = Size.Empty + 4 }; 15 | layout1.Rows.Add(new TableRow(cell(0), cell(1), cell(2)) { ScaleHeight = true }); 16 | layout1.Rows.Add(new TableRow(cell(3), cell(4), cell(5)) { ScaleHeight = true }); 17 | 18 | var entries = new ChartEntry[] 19 | { 20 | new ChartEntry(200) { Label = "January", ValueLabel = "200", Color = SkiaSharp.SKColors.CornflowerBlue }, 21 | new ChartEntry(400) { Label = "February", ValueLabel = "400", Color = SkiaSharp.SKColors.ForestGreen }, 22 | new ChartEntry(-100) { Label = "March", ValueLabel = "-100", Color = SkiaSharp.SKColors.MediumVioletRed } 23 | }; 24 | this.Content = new Microcharts.Eto.ChartView() { Chart = new RadarChart { Entries = entries, AnimationProgress = 100 } }; 25 | 26 | Content = layout1; 27 | } 28 | 29 | private TableCell cell(int idx) 30 | { 31 | var view = new Microcharts.Eto.ChartView { Chart = charts[idx] }; 32 | 33 | view.Chart.AnimationProgress = 100; 34 | 35 | return new TableCell(view, true); 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Forms/Microcharts.Samples.Forms.iOS/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | UIDeviceFamily 6 | 7 | 1 8 | 2 9 | 10 | UISupportedInterfaceOrientations 11 | 12 | UIInterfaceOrientationPortrait 13 | UIInterfaceOrientationLandscapeLeft 14 | UIInterfaceOrientationLandscapeRight 15 | 16 | UISupportedInterfaceOrientations~ipad 17 | 18 | UIInterfaceOrientationPortrait 19 | UIInterfaceOrientationPortraitUpsideDown 20 | UIInterfaceOrientationLandscapeLeft 21 | UIInterfaceOrientationLandscapeRight 22 | 23 | MinimumOSVersion 24 | 13.2 25 | CFBundleDisplayName 26 | Microcharts.Samples.Forms 27 | CFBundleIdentifier 28 | com.companyname.Microcharts.Samples.Forms 29 | CFBundleVersion 30 | 1.0 31 | UILaunchStoryboardName 32 | LaunchScreen 33 | CFBundleName 34 | Microcharts.Samples.Forms 35 | XSAppIconAssets 36 | Assets.xcassets/AppIcon.appiconset 37 | 38 | 39 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.macOS/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images": [ 3 | { 4 | "filename": "AppIcon-16.png", 5 | "size": "16x16", 6 | "scale": "1x", 7 | "idiom": "mac" 8 | }, 9 | { 10 | "filename": "AppIcon-16@2x.png", 11 | "size": "16x16", 12 | "scale": "2x", 13 | "idiom": "mac" 14 | }, 15 | { 16 | "filename": "AppIcon-32.png", 17 | "size": "32x32", 18 | "scale": "1x", 19 | "idiom": "mac" 20 | }, 21 | { 22 | "filename": "AppIcon-32@2x.png", 23 | "size": "32x32", 24 | "scale": "2x", 25 | "idiom": "mac" 26 | }, 27 | { 28 | "filename": "AppIcon-128.png", 29 | "size": "128x128", 30 | "scale": "1x", 31 | "idiom": "mac" 32 | }, 33 | { 34 | "filename": "AppIcon-128@2x.png", 35 | "size": "128x128", 36 | "scale": "2x", 37 | "idiom": "mac" 38 | }, 39 | { 40 | "filename": "AppIcon-256.png", 41 | "size": "256x256", 42 | "scale": "1x", 43 | "idiom": "mac" 44 | }, 45 | { 46 | "filename": "AppIcon-256@2x.png", 47 | "size": "256x256", 48 | "scale": "2x", 49 | "idiom": "mac" 50 | }, 51 | { 52 | "filename": "AppIcon-512.png", 53 | "size": "512x512", 54 | "scale": "1x", 55 | "idiom": "mac" 56 | }, 57 | { 58 | "filename": "AppIcon-512@2x.png", 59 | "size": "512x512", 60 | "scale": "2x", 61 | "idiom": "mac" 62 | } 63 | ], 64 | "info": { 65 | "version": 1, 66 | "author": "xcode" 67 | } 68 | } -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Mobile/MacOS/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images": [ 3 | { 4 | "filename": "AppIcon-16.png", 5 | "size": "16x16", 6 | "scale": "1x", 7 | "idiom": "mac" 8 | }, 9 | { 10 | "filename": "AppIcon-16@2x.png", 11 | "size": "16x16", 12 | "scale": "2x", 13 | "idiom": "mac" 14 | }, 15 | { 16 | "filename": "AppIcon-32.png", 17 | "size": "32x32", 18 | "scale": "1x", 19 | "idiom": "mac" 20 | }, 21 | { 22 | "filename": "AppIcon-32@2x.png", 23 | "size": "32x32", 24 | "scale": "2x", 25 | "idiom": "mac" 26 | }, 27 | { 28 | "filename": "AppIcon-128.png", 29 | "size": "128x128", 30 | "scale": "1x", 31 | "idiom": "mac" 32 | }, 33 | { 34 | "filename": "AppIcon-128@2x.png", 35 | "size": "128x128", 36 | "scale": "2x", 37 | "idiom": "mac" 38 | }, 39 | { 40 | "filename": "AppIcon-256.png", 41 | "size": "256x256", 42 | "scale": "1x", 43 | "idiom": "mac" 44 | }, 45 | { 46 | "filename": "AppIcon-256@2x.png", 47 | "size": "256x256", 48 | "scale": "2x", 49 | "idiom": "mac" 50 | }, 51 | { 52 | "filename": "AppIcon-512.png", 53 | "size": "512x512", 54 | "scale": "1x", 55 | "idiom": "mac" 56 | }, 57 | { 58 | "filename": "AppIcon-512@2x.png", 59 | "size": "512x512", 60 | "scale": "2x", 61 | "idiom": "mac" 62 | } 63 | ], 64 | "info": { 65 | "version": 1, 66 | "author": "xcode" 67 | } 68 | } -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Shared/Microcharts.Samples.Uno.Shared.projitems: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | true 6 | 6279c845-92f8-4333-ab99-3d213163593c 7 | 8 | 9 | Microcharts.Samples.Uno 10 | 11 | 12 | 13 | Designer 14 | MSBuild:Compile 15 | 16 | 17 | 18 | 19 | App.xaml 20 | 21 | 22 | MainPage.xaml 23 | 24 | 25 | 26 | 27 | Designer 28 | MSBuild:Compile 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /Sources/Microcharts.Uwp/Properties/Microcharts.Uwp.rd.xml: -------------------------------------------------------------------------------- 1 | 2 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.iOS/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDisplayName 6 | Microcharts.Samples.iOS 7 | CFBundleIdentifier 8 | com.companyname.Microcharts.Samples.iOS 9 | CFBundleShortVersionString 10 | 1.0 11 | CFBundleVersion 12 | 1.0 13 | LSRequiresIPhoneOS 14 | 15 | MinimumOSVersion 16 | 13.2 17 | UIDeviceFamily 18 | 19 | 12 20 | 21 | UILaunchStoryboardName 22 | LaunchScreen 23 | UIRequiredDeviceCapabilities 24 | 25 | armv7 26 | 27 | UISupportedInterfaceOrientations 28 | 29 | UIInterfaceOrientationPortrait 30 | UIInterfaceOrientationLandscapeLeft 31 | UIInterfaceOrientationLandscapeRight 32 | 33 | UISupportedInterfaceOrientations~ipad 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationPortraitUpsideDown 37 | UIInterfaceOrientationLandscapeLeft 38 | UIInterfaceOrientationLandscapeRight 39 | 40 | XSAppIconAssets 41 | Assets.xcassets/AppIcon.appiconset 42 | 43 | 44 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.iOS/LaunchScreen.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Eto/MainForm.eto.cs: -------------------------------------------------------------------------------- 1 | 2 | namespace Microcharts.Samples.Eto 3 | { 4 | using global::Eto.Forms; 5 | using global::Eto.Drawing; 6 | partial class MainForm : Form 7 | { 8 | void InitializeComponent() 9 | { 10 | Title = "My Eto Form"; 11 | MinimumSize = new Size(200, 150); 12 | Size = MinimumSize * 4; 13 | Padding = 10; 14 | 15 | Content = new StackLayout 16 | { 17 | Items = 18 | { 19 | "Hello World!", 20 | // add more controls here 21 | } 22 | }; 23 | 24 | var quitCommand = new Command { MenuText = "Quit", Shortcut = Application.Instance.CommonModifier | Keys.Q }; 25 | quitCommand.Executed += (sender, e) => Application.Instance.Quit(); 26 | 27 | var aboutCommand = new Command { MenuText = "About..." }; 28 | aboutCommand.Executed += (sender, e) => new AboutDialog().ShowDialog(this); 29 | 30 | // create menu 31 | Menu = new MenuBar 32 | { 33 | Items = 34 | { 35 | // File submenu0 36 | // new SubMenuItem { Text = "&File", Items = { clickMe } }, 37 | // new SubMenuItem { Text = "&Edit", Items = { /* commands/items */ } }, 38 | // new SubMenuItem { Text = "&View", Items = { /* commands/items */ } }, 39 | }, 40 | ApplicationItems = 41 | { 42 | // application (OS X) or file menu (others) 43 | new ButtonMenuItem { Text = "&Preferences..." }, 44 | }, 45 | QuitItem = quitCommand, 46 | AboutItem = aboutCommand 47 | }; 48 | } 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uno/Microcharts.Samples.Uno.Shared/Microcharts.Samples.Uno.Shared.globs.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | <_Globbled_Page Include="$(MSBuildThisFileDirectory)**/*.xaml" Exclude="@(Page);@(ApplicationDefinition)"> 10 | Designer 11 | MSBuild:Compile 12 | 13 | 14 | 15 | <_Globbed_Compile Include="$(MSBuildThisFileDirectory)**/*.xaml.cs" Exclude="@(Compile)"> 16 | %(Filename) 17 | 18 | <_Globbed_Compile Include="$(MSBuildThisFileDirectory)**/*.cs" Exclude="@(Compile);@(_Globbed_Compile)" /> 19 | 20 | 21 | <_Globbed_PRIResource Include="$(MSBuildThisFileDirectory)**/*.resw" Exclude="@(PRIResource)" /> 22 | 23 | 24 | <_Globbed_Content Include="$(MSBuildThisFileDirectory)Assets/**/*.*" Exclude="@(Content)" /> 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Resources/Splash/splash.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Maui/Resources/AppIcon/appiconfg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Uwp/Package.appxmanifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 13 | 14 | 15 | 16 | 17 | Microcharts.Samples.Uwp 18 | alois 19 | Assets\StoreLogo.png 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 34 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /Sources/Microcharts.Samples.Avalonia/MainWindow.axaml.cs: -------------------------------------------------------------------------------- 1 | using Avalonia; 2 | using Avalonia.Controls; 3 | using Avalonia.Markup.Xaml; 4 | using SkiaSharp; 5 | 6 | namespace Microcharts.Samples.Avalonia 7 | { 8 | public partial class MainWindow : Window 9 | { 10 | public MainWindow() 11 | { 12 | InitializeComponent(); 13 | DataContext = this; 14 | #if DEBUG 15 | this.AttachDevTools(); 16 | #endif 17 | } 18 | 19 | void InitializeComponent() 20 | { 21 | AvaloniaXamlLoader.Load(this); 22 | } 23 | 24 | static ChartEntry[] CreateTestEntries() => 25 | new ChartEntry[] 26 | { 27 | new(200) 28 | { 29 | Label = "January", 30 | ValueLabel = "200", 31 | Color = SKColor.Parse("#266489") 32 | }, 33 | new(400) 34 | { 35 | Label = "February", 36 | ValueLabel = "400", 37 | Color = SKColor.Parse("#68B9C0") 38 | }, 39 | new(-100) 40 | { 41 | Label = "March", 42 | ValueLabel = "-100", 43 | Color = SKColor.Parse("#90D585") 44 | } 45 | }; 46 | 47 | public Chart[] Charts { get; set; } = { 48 | new BarChart { Entries = CreateTestEntries() }, 49 | new PointChart { Entries = CreateTestEntries() }, 50 | new LineChart { Entries = CreateTestEntries() }, 51 | new DonutChart { Entries = CreateTestEntries() }, 52 | new RadialGaugeChart { Entries = CreateTestEntries() }, 53 | new RadarChart { Entries = CreateTestEntries() } 54 | }; 55 | } 56 | } 57 | --------------------------------------------------------------------------------