From ca3687d5c7ee03c0ca94059d8c01a1430f8c7a00 Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Mon, 7 Jul 2025 11:23:26 +0530 Subject: [PATCH 01/15] Updated the sample. --- App.xaml | 14 + App.xaml.cs | 15 + AppShell.xaml | 12 + AppShell.xaml.cs | 10 + DualBarChartDemo.csproj | 68 +++ MainPage.xaml | 127 +++++ MainPage.xaml.cs | 98 ++++ MauiProgram.cs | 27 ++ Model.cs | 16 + Platforms/Android/AndroidManifest.xml | 6 + Platforms/Android/MainActivity.cs | 11 + Platforms/Android/MainApplication.cs | 16 + Platforms/Android/Resources/values/colors.xml | 6 + Platforms/MacCatalyst/AppDelegate.cs | 10 + Platforms/MacCatalyst/Entitlements.plist | 14 + Platforms/MacCatalyst/Info.plist | 38 ++ Platforms/MacCatalyst/Program.cs | 16 + Platforms/Tizen/Main.cs | 17 + Platforms/Tizen/tizen-manifest.xml | 15 + Platforms/Windows/App.xaml | 8 + Platforms/Windows/App.xaml.cs | 25 + Platforms/Windows/Package.appxmanifest | 46 ++ Platforms/Windows/app.manifest | 15 + Platforms/iOS/AppDelegate.cs | 10 + Platforms/iOS/Info.plist | 32 ++ Platforms/iOS/Program.cs | 16 + Platforms/iOS/Resources/PrivacyInfo.xcprivacy | 51 ++ Properties/launchSettings.json | 8 + Resources/AppIcon/appicon.svg | 4 + Resources/AppIcon/appiconfg.svg | 8 + Resources/Fonts/OpenSans-Regular.ttf | Bin 0 -> 107280 bytes Resources/Fonts/OpenSans-Semibold.ttf | Bin 0 -> 111188 bytes Resources/Images/dotnet_bot.png | Bin 0 -> 93437 bytes Resources/Raw/AboutAssets.txt | 15 + Resources/Splash/splash.svg | 8 + Resources/Styles/Colors.xaml | 45 ++ Resources/Styles/Styles.xaml | 451 ++++++++++++++++++ ViewModel.cs | 57 +++ 38 files changed, 1335 insertions(+) create mode 100644 App.xaml create mode 100644 App.xaml.cs create mode 100644 AppShell.xaml create mode 100644 AppShell.xaml.cs create mode 100644 DualBarChartDemo.csproj create mode 100644 MainPage.xaml create mode 100644 MainPage.xaml.cs create mode 100644 MauiProgram.cs create mode 100644 Model.cs create mode 100644 Platforms/Android/AndroidManifest.xml create mode 100644 Platforms/Android/MainActivity.cs create mode 100644 Platforms/Android/MainApplication.cs create mode 100644 Platforms/Android/Resources/values/colors.xml create mode 100644 Platforms/MacCatalyst/AppDelegate.cs create mode 100644 Platforms/MacCatalyst/Entitlements.plist create mode 100644 Platforms/MacCatalyst/Info.plist create mode 100644 Platforms/MacCatalyst/Program.cs create mode 100644 Platforms/Tizen/Main.cs create mode 100644 Platforms/Tizen/tizen-manifest.xml create mode 100644 Platforms/Windows/App.xaml create mode 100644 Platforms/Windows/App.xaml.cs create mode 100644 Platforms/Windows/Package.appxmanifest create mode 100644 Platforms/Windows/app.manifest create mode 100644 Platforms/iOS/AppDelegate.cs create mode 100644 Platforms/iOS/Info.plist create mode 100644 Platforms/iOS/Program.cs create mode 100644 Platforms/iOS/Resources/PrivacyInfo.xcprivacy create mode 100644 Properties/launchSettings.json create mode 100644 Resources/AppIcon/appicon.svg create mode 100644 Resources/AppIcon/appiconfg.svg create mode 100644 Resources/Fonts/OpenSans-Regular.ttf create mode 100644 Resources/Fonts/OpenSans-Semibold.ttf create mode 100644 Resources/Images/dotnet_bot.png create mode 100644 Resources/Raw/AboutAssets.txt create mode 100644 Resources/Splash/splash.svg create mode 100644 Resources/Styles/Colors.xaml create mode 100644 Resources/Styles/Styles.xaml create mode 100644 ViewModel.cs diff --git a/App.xaml b/App.xaml new file mode 100644 index 0000000..5017e21 --- /dev/null +++ b/App.xaml @@ -0,0 +1,14 @@ + + + + + + + + + + + diff --git a/App.xaml.cs b/App.xaml.cs new file mode 100644 index 0000000..3ca6490 --- /dev/null +++ b/App.xaml.cs @@ -0,0 +1,15 @@ +namespace DualBarChartDemo +{ + public partial class App : Application + { + public App() + { + InitializeComponent(); + } + + protected override Window CreateWindow(IActivationState? activationState) + { + return new Window(new AppShell()); + } + } +} \ No newline at end of file diff --git a/AppShell.xaml b/AppShell.xaml new file mode 100644 index 0000000..207f64c --- /dev/null +++ b/AppShell.xaml @@ -0,0 +1,12 @@ + + + + + diff --git a/AppShell.xaml.cs b/AppShell.xaml.cs new file mode 100644 index 0000000..d4468ae --- /dev/null +++ b/AppShell.xaml.cs @@ -0,0 +1,10 @@ +namespace DualBarChartDemo +{ + public partial class AppShell : Shell + { + public AppShell() + { + InitializeComponent(); + } + } +} diff --git a/DualBarChartDemo.csproj b/DualBarChartDemo.csproj new file mode 100644 index 0000000..24fad86 --- /dev/null +++ b/DualBarChartDemo.csproj @@ -0,0 +1,68 @@ + + + + net9.0-android;net9.0-ios;net9.0-maccatalyst + $(TargetFrameworks);net9.0-windows10.0.19041.0 + + + + + + + Exe + DualBarChartDemo + true + true + enable + enable + + + DualBarChartDemo + + + com.companyname.dualbarchartdemo + + + 1.0 + 1 + + + None + + 15.0 + 15.0 + 21.0 + 10.0.17763.0 + 10.0.17763.0 + 6.5 + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MainPage.xaml b/MainPage.xaml new file mode 100644 index 0000000..e3f63bb --- /dev/null +++ b/MainPage.xaml @@ -0,0 +1,127 @@ + + + + + + + + + M14.958001,14.880005C11.712001,15.658997 8.1829996,17.106995 7.4849997,19.033997 7.2039995,19.811005 7.4359999,20.733002 8.1600008,21.779007L10.726001,19.212997 12.006,20.494003 9.6400003,22.858994C10.162,23.057999,10.645,23.169006,11.071,23.169006L11.072,23.169006C11.734,23.169006 12.251,22.944 12.748,22.436996 14.151,21.003006 14.794,17.789993 14.958001,14.880005z M17.013,12.417999L17,13.643005C16.977001,15.863998 16.656002,21.304001 14.177001,23.835999 13.31,24.720993 12.266,25.169006 11.072,25.169006 10.174001,25.169006 9.1820002,24.891998 8.1260004,24.373001L5.2629995,27.237 3.9819994,25.957001 6.729001,23.210007C5.4420004,21.492004 5.059001,19.860992 5.604001,18.354004 6.915,14.729996 13.179,13.158005 15.811,12.651001z M2,11L2,30 20,30 20,11z M2,2L2,8 20,8 20,2z M0,0L22,0 22,8.1670074 22,11 22,24.843994 25,21.311996 25,9 29.313,3.6880035 31.710999,6.125 28,10.796997 28,23 22,28.990005 22,32 0,32 0,11 0,8.1670074z + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MainPage.xaml.cs b/MainPage.xaml.cs new file mode 100644 index 0000000..59a10b6 --- /dev/null +++ b/MainPage.xaml.cs @@ -0,0 +1,98 @@ + +using Syncfusion.Maui.Toolkit.Charts; +using Syncfusion.Maui.Toolkit.Graphics.Internals; +using System.Collections.ObjectModel; +using Font = Microsoft.Maui.Graphics.Font; + +namespace DualBarChartDemo +{ + public partial class MainPage : ContentPage + { + + public MainPage() + { + InitializeComponent(); + } + + } + + public class RangeColumnSeriesExt : RangeColumnSeries + { + protected override ChartSegment CreateSegment() + { + return new RangeColumnSegmentExt(); + } + } + + public class RangeColumnSegmentExt : RangeColumnSegment + { + protected override void Draw(ICanvas canvas) + { + base.OnLayout(); + + // Skip drawing if segment isn't properly laid out or data is missing + if (float.IsNaN(Left) || float.IsNaN(Top) || float.IsNaN(Right) || float.IsNaN(Bottom) || + Series is not RangeColumnSeriesExt || Item is not ChartDataModel dataPoint) + return; + + // Skip last segment or if there's no change + if (Index == (Series.ItemsSource as ObservableCollection)?.Count - 1 || + dataPoint.high == 0 || dataPoint.low == dataPoint.high) + return; + + // Calculate change direction and percentage + bool isIncreasing = dataPoint.low < dataPoint.high; + double changePercent = dataPoint.low != 0 ? + ((dataPoint.high - dataPoint.low) / Math.Abs(dataPoint.low)) * 100 : 0; + + // Set color based on direction + Color arrowColor = isIncreasing ? Color.FromArgb("#1CD01C") : Colors.Red; + + // Save canvas state + canvas.CanvasSaveState(); + + // Draw line with arrow + float centerX = (Left + Right) / 2; + canvas.StrokeColor = Colors.Black; + canvas.StrokeSize = 1f; + canvas.DrawLine(centerX, Top, centerX, Bottom); + + // Draw arrow + float arrowSize = 6; + PathF arrowPath = new PathF(); + + if (isIncreasing) + { + arrowPath.MoveTo(centerX, Top); + arrowPath.LineTo(centerX - arrowSize, Top + arrowSize); + arrowPath.LineTo(centerX + arrowSize, Top + arrowSize); + } + else + { + arrowPath.MoveTo(centerX, Bottom); + arrowPath.LineTo(centerX - arrowSize, Bottom - arrowSize); + arrowPath.LineTo(centerX + arrowSize, Bottom - arrowSize); + } + + arrowPath.Close(); + canvas.FillColor = Colors.Black; + canvas.FillPath(arrowPath); + + string percentText = isIncreasing ? + $"{Math.Abs(changePercent):0}%" : + $"- {Math.Abs(changePercent):0}%"; + + float textY = isIncreasing ? Top - 20 : Bottom + 20; + + canvas.FontColor = arrowColor; + canvas.FontSize = 14; + var fontFamily = "Bold"; + canvas.Font = new Font(fontFamily); + + canvas.DrawString(percentText, centerX, textY, HorizontalAlignment.Center); + + // Restore canvas state + canvas.CanvasRestoreState(); + } + } +} diff --git a/MauiProgram.cs b/MauiProgram.cs new file mode 100644 index 0000000..3d0fead --- /dev/null +++ b/MauiProgram.cs @@ -0,0 +1,27 @@ +using Microsoft.Extensions.Logging; +using Syncfusion.Maui.Toolkit.Hosting; + +namespace DualBarChartDemo +{ + public static class MauiProgram + { + public static MauiApp CreateMauiApp() + { + var builder = MauiApp.CreateBuilder(); + builder + .UseMauiApp() + .ConfigureSyncfusionToolkit() + .ConfigureFonts(fonts => + { + fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular"); + fonts.AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold"); + }); + +#if DEBUG + builder.Logging.AddDebug(); +#endif + + return builder.Build(); + } + } +} diff --git a/Model.cs b/Model.cs new file mode 100644 index 0000000..98aefc2 --- /dev/null +++ b/Model.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace DualBarChartDemo +{ + public class ChartDataModel + { + public DateTime year { get; set; } + public double yValue { get; set; } + public double high { get; set; } + public double low { get; set; } + } +} diff --git a/Platforms/Android/AndroidManifest.xml b/Platforms/Android/AndroidManifest.xml new file mode 100644 index 0000000..e9937ad --- /dev/null +++ b/Platforms/Android/AndroidManifest.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Platforms/Android/MainActivity.cs b/Platforms/Android/MainActivity.cs new file mode 100644 index 0000000..6d9c86e --- /dev/null +++ b/Platforms/Android/MainActivity.cs @@ -0,0 +1,11 @@ +using Android.App; +using Android.Content.PM; +using Android.OS; + +namespace DualBarChartDemo +{ + [Activity(Theme = "@style/Maui.SplashTheme", MainLauncher = true, LaunchMode = LaunchMode.SingleTop, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.Density)] + public class MainActivity : MauiAppCompatActivity + { + } +} diff --git a/Platforms/Android/MainApplication.cs b/Platforms/Android/MainApplication.cs new file mode 100644 index 0000000..d2e7540 --- /dev/null +++ b/Platforms/Android/MainApplication.cs @@ -0,0 +1,16 @@ +using Android.App; +using Android.Runtime; + +namespace DualBarChartDemo +{ + [Application] + public class MainApplication : MauiApplication + { + public MainApplication(IntPtr handle, JniHandleOwnership ownership) + : base(handle, ownership) + { + } + + protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); + } +} diff --git a/Platforms/Android/Resources/values/colors.xml b/Platforms/Android/Resources/values/colors.xml new file mode 100644 index 0000000..c04d749 --- /dev/null +++ b/Platforms/Android/Resources/values/colors.xml @@ -0,0 +1,6 @@ + + + #512BD4 + #2B0B98 + #2B0B98 + \ No newline at end of file diff --git a/Platforms/MacCatalyst/AppDelegate.cs b/Platforms/MacCatalyst/AppDelegate.cs new file mode 100644 index 0000000..1a31755 --- /dev/null +++ b/Platforms/MacCatalyst/AppDelegate.cs @@ -0,0 +1,10 @@ +using Foundation; + +namespace DualBarChartDemo +{ + [Register("AppDelegate")] + public class AppDelegate : MauiUIApplicationDelegate + { + protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); + } +} diff --git a/Platforms/MacCatalyst/Entitlements.plist b/Platforms/MacCatalyst/Entitlements.plist new file mode 100644 index 0000000..de4adc9 --- /dev/null +++ b/Platforms/MacCatalyst/Entitlements.plist @@ -0,0 +1,14 @@ + + + + + + + com.apple.security.app-sandbox + + + com.apple.security.network.client + + + + diff --git a/Platforms/MacCatalyst/Info.plist b/Platforms/MacCatalyst/Info.plist new file mode 100644 index 0000000..7268977 --- /dev/null +++ b/Platforms/MacCatalyst/Info.plist @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + UIDeviceFamily + + 2 + + UIRequiredDeviceCapabilities + + arm64 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + XSAppIconAssets + Assets.xcassets/appicon.appiconset + + diff --git a/Platforms/MacCatalyst/Program.cs b/Platforms/MacCatalyst/Program.cs new file mode 100644 index 0000000..3d462d1 --- /dev/null +++ b/Platforms/MacCatalyst/Program.cs @@ -0,0 +1,16 @@ +using ObjCRuntime; +using UIKit; + +namespace DualBarChartDemo +{ + public class Program + { + // This is the main entry point of the application. + static void Main(string[] args) + { + // if you want to use a different Application Delegate class from "AppDelegate" + // you can specify it here. + UIApplication.Main(args, null, typeof(AppDelegate)); + } + } +} diff --git a/Platforms/Tizen/Main.cs b/Platforms/Tizen/Main.cs new file mode 100644 index 0000000..fae22d5 --- /dev/null +++ b/Platforms/Tizen/Main.cs @@ -0,0 +1,17 @@ +using System; +using Microsoft.Maui; +using Microsoft.Maui.Hosting; + +namespace DualBarChartDemo +{ + internal class Program : MauiApplication + { + protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); + + static void Main(string[] args) + { + var app = new Program(); + app.Run(args); + } + } +} diff --git a/Platforms/Tizen/tizen-manifest.xml b/Platforms/Tizen/tizen-manifest.xml new file mode 100644 index 0000000..714c76e --- /dev/null +++ b/Platforms/Tizen/tizen-manifest.xml @@ -0,0 +1,15 @@ + + + + + + maui-appicon-placeholder + + + + + http://tizen.org/privilege/internet + + + + \ No newline at end of file diff --git a/Platforms/Windows/App.xaml b/Platforms/Windows/App.xaml new file mode 100644 index 0000000..9153b9d --- /dev/null +++ b/Platforms/Windows/App.xaml @@ -0,0 +1,8 @@ + + + diff --git a/Platforms/Windows/App.xaml.cs b/Platforms/Windows/App.xaml.cs new file mode 100644 index 0000000..454960a --- /dev/null +++ b/Platforms/Windows/App.xaml.cs @@ -0,0 +1,25 @@ +using Microsoft.UI.Xaml; + +// To learn more about WinUI, the WinUI project structure, +// and more about our project templates, see: http://aka.ms/winui-project-info. + +namespace DualBarChartDemo.WinUI +{ + /// + /// Provides application-specific behavior to supplement the default Application class. + /// + public partial class App : MauiWinUIApplication + { + /// + /// Initializes the singleton application object. This is the first line of authored code + /// executed, and as such is the logical equivalent of main() or WinMain(). + /// + public App() + { + this.InitializeComponent(); + } + + protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); + } + +} diff --git a/Platforms/Windows/Package.appxmanifest b/Platforms/Windows/Package.appxmanifest new file mode 100644 index 0000000..c29b915 --- /dev/null +++ b/Platforms/Windows/Package.appxmanifest @@ -0,0 +1,46 @@ + + + + + + + + + $placeholder$ + User Name + $placeholder$.png + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Platforms/Windows/app.manifest b/Platforms/Windows/app.manifest new file mode 100644 index 0000000..8279be2 --- /dev/null +++ b/Platforms/Windows/app.manifest @@ -0,0 +1,15 @@ + + + + + + + + true/PM + PerMonitorV2, PerMonitor + + + diff --git a/Platforms/iOS/AppDelegate.cs b/Platforms/iOS/AppDelegate.cs new file mode 100644 index 0000000..1a31755 --- /dev/null +++ b/Platforms/iOS/AppDelegate.cs @@ -0,0 +1,10 @@ +using Foundation; + +namespace DualBarChartDemo +{ + [Register("AppDelegate")] + public class AppDelegate : MauiUIApplicationDelegate + { + protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); + } +} diff --git a/Platforms/iOS/Info.plist b/Platforms/iOS/Info.plist new file mode 100644 index 0000000..0004a4f --- /dev/null +++ b/Platforms/iOS/Info.plist @@ -0,0 +1,32 @@ + + + + + LSRequiresIPhoneOS + + UIDeviceFamily + + 1 + 2 + + UIRequiredDeviceCapabilities + + arm64 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + XSAppIconAssets + Assets.xcassets/appicon.appiconset + + diff --git a/Platforms/iOS/Program.cs b/Platforms/iOS/Program.cs new file mode 100644 index 0000000..3d462d1 --- /dev/null +++ b/Platforms/iOS/Program.cs @@ -0,0 +1,16 @@ +using ObjCRuntime; +using UIKit; + +namespace DualBarChartDemo +{ + public class Program + { + // This is the main entry point of the application. + static void Main(string[] args) + { + // if you want to use a different Application Delegate class from "AppDelegate" + // you can specify it here. + UIApplication.Main(args, null, typeof(AppDelegate)); + } + } +} diff --git a/Platforms/iOS/Resources/PrivacyInfo.xcprivacy b/Platforms/iOS/Resources/PrivacyInfo.xcprivacy new file mode 100644 index 0000000..24ab3b4 --- /dev/null +++ b/Platforms/iOS/Resources/PrivacyInfo.xcprivacy @@ -0,0 +1,51 @@ + + + + + + NSPrivacyAccessedAPITypes + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryFileTimestamp + NSPrivacyAccessedAPITypeReasons + + C617.1 + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategorySystemBootTime + NSPrivacyAccessedAPITypeReasons + + 35F9.1 + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryDiskSpace + NSPrivacyAccessedAPITypeReasons + + E174.1 + + + + + + diff --git a/Properties/launchSettings.json b/Properties/launchSettings.json new file mode 100644 index 0000000..4f85793 --- /dev/null +++ b/Properties/launchSettings.json @@ -0,0 +1,8 @@ +{ + "profiles": { + "Windows Machine": { + "commandName": "Project", + "nativeDebugging": false + } + } +} \ No newline at end of file diff --git a/Resources/AppIcon/appicon.svg b/Resources/AppIcon/appicon.svg new file mode 100644 index 0000000..9d63b65 --- /dev/null +++ b/Resources/AppIcon/appicon.svg @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Resources/AppIcon/appiconfg.svg b/Resources/AppIcon/appiconfg.svg new file mode 100644 index 0000000..21dfb25 --- /dev/null +++ b/Resources/AppIcon/appiconfg.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/Resources/Fonts/OpenSans-Regular.ttf b/Resources/Fonts/OpenSans-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..33b3e0d978368d74bf4b371256cf98347c22b1d8 GIT binary patch literal 107280 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 literal 0 HcmV?d00001 diff --git a/Resources/Images/dotnet_bot.png b/Resources/Images/dotnet_bot.png new file mode 100644 index 0000000000000000000000000000000000000000..1d1b981ee1ab520412db1299de0df05882d23d3e GIT binary patch literal 93437 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 literal 0 HcmV?d00001 diff --git a/Resources/Raw/AboutAssets.txt b/Resources/Raw/AboutAssets.txt new file mode 100644 index 0000000..89dc758 --- /dev/null +++ b/Resources/Raw/AboutAssets.txt @@ -0,0 +1,15 @@ +Any raw assets you want to be deployed with your application can be placed in +this directory (and child directories). Deployment of the asset to your application +is automatically handled by the following `MauiAsset` Build Action within your `.csproj`. + + + +These files will be deployed with your package and will be accessible using Essentials: + + async Task LoadMauiAsset() + { + using var stream = await FileSystem.OpenAppPackageFileAsync("AboutAssets.txt"); + using var reader = new StreamReader(stream); + + var contents = reader.ReadToEnd(); + } diff --git a/Resources/Splash/splash.svg b/Resources/Splash/splash.svg new file mode 100644 index 0000000..21dfb25 --- /dev/null +++ b/Resources/Splash/splash.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/Resources/Styles/Colors.xaml b/Resources/Styles/Colors.xaml new file mode 100644 index 0000000..30307a5 --- /dev/null +++ b/Resources/Styles/Colors.xaml @@ -0,0 +1,45 @@ + + + + + + + #512BD4 + #ac99ea + #242424 + #DFD8F7 + #9880e5 + #2B0B98 + + White + Black + #D600AA + #190649 + #1f1f1f + + #E1E1E1 + #C8C8C8 + #ACACAC + #919191 + #6E6E6E + #404040 + #212121 + #141414 + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Resources/Styles/Styles.xaml b/Resources/Styles/Styles.xaml new file mode 100644 index 0000000..86f574d --- /dev/null +++ b/Resources/Styles/Styles.xaml @@ -0,0 +1,451 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ViewModel.cs b/ViewModel.cs new file mode 100644 index 0000000..4826765 --- /dev/null +++ b/ViewModel.cs @@ -0,0 +1,57 @@ + +using System.Collections.ObjectModel; +using System.ComponentModel; + +namespace DualBarChartDemo +{ + public class ChartViewModel + { + public ObservableCollection Data { get; set; } + + public ChartViewModel() + { + // Create the data collection + Data = new ObservableCollection(); + + AddDataPoint(new DateTime(2014, 1, 1), 4.71); + AddDataPoint(new DateTime(2016, 1, 1), 2.28); + AddDataPoint(new DateTime(2018, 1, 1), 3.87); + AddDataPoint(new DateTime(2020, 1, 1), 2.09); + AddDataPoint(new DateTime(2022, 1, 1), 4.38); + AddDataPoint(new DateTime(2024, 1, 1), 2.11); + + + + // Process data to calculate variance between points + ProcessData(); + } + + private void AddDataPoint(DateTime year, double value) + { + Data.Add(new ChartDataModel + { + year = year, + yValue = value, + // Initialize to same value - will be updated later + low = value, + high = value + }); + } + + private void ProcessData() + { + // Skip processing if we have 0 or 1 data points + if (Data.Count <= 1) return; + + // For each point (except last), set high value to next point's value + for (int i = 0; i < Data.Count - 1; i++) + { + Data[i].low = Data[i].yValue; + Data[i].high = Data[i + 1].yValue; + } + } + } + +} + + From d6be353364d93ecf936babddd61363811b3fb916 Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Mon, 14 Jul 2025 23:44:24 +0530 Subject: [PATCH 02/15] Updated the sample --- DualBarChartDemo.csproj | 3 +- MainPage.xaml | 42 +++++++++--------------- MainPage.xaml.cs | 73 ++++++++++++++++++++++++++++------------- Model.cs | 8 ++--- ViewModel.cs | 18 +++++----- 5 files changed, 80 insertions(+), 64 deletions(-) diff --git a/DualBarChartDemo.csproj b/DualBarChartDemo.csproj index 24fad86..cb63f8d 100644 --- a/DualBarChartDemo.csproj +++ b/DualBarChartDemo.csproj @@ -62,7 +62,8 @@ - + + diff --git a/MainPage.xaml b/MainPage.xaml index e3f63bb..e2141d7 100644 --- a/MainPage.xaml +++ b/MainPage.xaml @@ -10,10 +10,11 @@ - M14.958001,14.880005C11.712001,15.658997 8.1829996,17.106995 7.4849997,19.033997 7.2039995,19.811005 7.4359999,20.733002 8.1600008,21.779007L10.726001,19.212997 12.006,20.494003 9.6400003,22.858994C10.162,23.057999,10.645,23.169006,11.071,23.169006L11.072,23.169006C11.734,23.169006 12.251,22.944 12.748,22.436996 14.151,21.003006 14.794,17.789993 14.958001,14.880005z M17.013,12.417999L17,13.643005C16.977001,15.863998 16.656002,21.304001 14.177001,23.835999 13.31,24.720993 12.266,25.169006 11.072,25.169006 10.174001,25.169006 9.1820002,24.891998 8.1260004,24.373001L5.2629995,27.237 3.9819994,25.957001 6.729001,23.210007C5.4420004,21.492004 5.059001,19.860992 5.604001,18.354004 6.915,14.729996 13.179,13.158005 15.811,12.651001z M2,11L2,30 20,30 20,11z M2,2L2,8 20,8 20,2z M0,0L22,0 22,8.1670074 22,11 22,24.843994 25,21.311996 25,9 29.313,3.6880035 31.710999,6.125 28,10.796997 28,23 22,28.990005 22,32 0,32 0,11 0,8.1670074z + M24,17.000001L24,26.000002 27,26.000002 27,17.000001z M22,15.000001L29,15.000001 29,28.000002 22,28.000002z M6,14.000001L6,26.000002 9,26.000002 9,14.000001z M4,12.000001L11,12.000001 11,28.000002 4,28.000002z M15,4.0000005L15,26 18,26 18,4.0000005z M13,2.0000005L20,2.0000005 20,28 13,28z M0,0L2,0 2,30 32,30 32,32 0,32z - @@ -26,7 +27,7 @@ Padding="8, 3, 8, 3" Stroke="Transparent"> - @@ -78,48 +79,37 @@ - + - - - - + - + - - - - - - - + TooltipTemplate="{StaticResource tooltipTemplate}"> diff --git a/MainPage.xaml.cs b/MainPage.xaml.cs index 59a10b6..c796e92 100644 --- a/MainPage.xaml.cs +++ b/MainPage.xaml.cs @@ -1,8 +1,8 @@ - using Syncfusion.Maui.Toolkit.Charts; -using Syncfusion.Maui.Toolkit.Graphics.Internals; using System.Collections.ObjectModel; +using Microsoft.Maui.Graphics; using Font = Microsoft.Maui.Graphics.Font; +using Microsoft.Maui.Graphics.Text; namespace DualBarChartDemo { @@ -16,7 +16,7 @@ public MainPage() } - public class RangeColumnSeriesExt : RangeColumnSeries + public partial class RangeColumnSeriesExt : RangeColumnSeries { protected override ChartSegment CreateSegment() { @@ -24,10 +24,11 @@ protected override ChartSegment CreateSegment() } } - public class RangeColumnSegmentExt : RangeColumnSegment + public partial class RangeColumnSegmentExt : RangeColumnSegment { protected override void Draw(ICanvas canvas) { + // Call base layout first base.OnLayout(); // Skip drawing if segment isn't properly laid out or data is missing @@ -36,31 +37,36 @@ protected override void Draw(ICanvas canvas) return; // Skip last segment or if there's no change - if (Index == (Series.ItemsSource as ObservableCollection)?.Count - 1 || - dataPoint.high == 0 || dataPoint.low == dataPoint.high) + var itemsSource = Series.ItemsSource as ObservableCollection; + if (Index == itemsSource?.Count - 1 || dataPoint.Low == dataPoint.High) return; // Calculate change direction and percentage - bool isIncreasing = dataPoint.low < dataPoint.high; - double changePercent = dataPoint.low != 0 ? - ((dataPoint.high - dataPoint.low) / Math.Abs(dataPoint.low)) * 100 : 0; + bool isIncreasing = dataPoint.Low < dataPoint.High; + double changePercent = Math.Abs((dataPoint.High - dataPoint.Low) / dataPoint.Low) * 100; // Set color based on direction - Color arrowColor = isIncreasing ? Color.FromArgb("#1CD01C") : Colors.Red; + Color arrowColor = isIncreasing ? Colors.Green : Colors.Red; - // Save canvas state - canvas.CanvasSaveState(); + // Ensure we have a valid drawing canvas + if (canvas == null) return; - // Draw line with arrow + // Save canvas state before drawing + canvas.SaveState(); + + // Calculate center of column float centerX = (Left + Right) / 2; + + // Draw line first canvas.StrokeColor = Colors.Black; canvas.StrokeSize = 1f; canvas.DrawLine(centerX, Top, centerX, Bottom); // Draw arrow float arrowSize = 6; - PathF arrowPath = new PathF(); + var arrowPath = new PathF(); + // Draw arrow based on direction if (isIncreasing) { arrowPath.MoveTo(centerX, Top); @@ -78,21 +84,42 @@ protected override void Draw(ICanvas canvas) canvas.FillColor = Colors.Black; canvas.FillPath(arrowPath); + // Draw percentage text with clear formatting string percentText = isIncreasing ? - $"{Math.Abs(changePercent):0}%" : - $"- {Math.Abs(changePercent):0}%"; + $"+{changePercent:0}%" : + $"-{changePercent:0}%"; + + // Position text safely within visible area + float textY = isIncreasing ? + Math.Max(Top - 20, 15) : + Math.Min(Bottom + 20, Bottom + 40); + + canvas.FontColor = arrowColor; + canvas.FontSize = 12; + canvas.Font = new Font("Arial", (int)FontWeight.Bold); +#if MACCATALYST + String boldPercentText = $"**{percentText}**"; + + // Use MarkdownAttributedTextReader to create styled text + IAttributedText attributedText = MarkdownAttributedTextReader.Read(boldPercentText); - float textY = isIncreasing ? Top - 20 : Bottom + 20; + // Draw text with proper positioning - works on all platforms + float textWidth = percentText.Length * 8; // approximate width + float textHeight = 16; // approximate height + // Setup color before drawing text canvas.FontColor = arrowColor; - canvas.FontSize = 14; - var fontFamily = "Bold"; - canvas.Font = new Font(fontFamily); - canvas.DrawString(percentText, centerX, textY, HorizontalAlignment.Center); + // Draw the text using common API that works on all platforms + canvas.DrawText(attributedText, + centerX - (textWidth / 2), + textY - (textHeight / 2), + textWidth, textHeight); +#else + canvas.DrawString(percentText,centerX,textY,HorizontalAlignment.Center); +#endif + canvas.RestoreState(); - // Restore canvas state - canvas.CanvasRestoreState(); } } } diff --git a/Model.cs b/Model.cs index 98aefc2..b9069ee 100644 --- a/Model.cs +++ b/Model.cs @@ -8,9 +8,9 @@ namespace DualBarChartDemo { public class ChartDataModel { - public DateTime year { get; set; } - public double yValue { get; set; } - public double high { get; set; } - public double low { get; set; } + public DateTime Year { get; set; } + public double YValue { get; set; } + public double High { get; set; } + public double Low { get; set; } } } diff --git a/ViewModel.cs b/ViewModel.cs index 4826765..4ea3c92 100644 --- a/ViewModel.cs +++ b/ViewModel.cs @@ -16,11 +16,9 @@ public ChartViewModel() AddDataPoint(new DateTime(2014, 1, 1), 4.71); AddDataPoint(new DateTime(2016, 1, 1), 2.28); AddDataPoint(new DateTime(2018, 1, 1), 3.87); - AddDataPoint(new DateTime(2020, 1, 1), 2.09); + AddDataPoint(new DateTime(2020, 1, 1), 2.02); AddDataPoint(new DateTime(2022, 1, 1), 4.38); - AddDataPoint(new DateTime(2024, 1, 1), 2.11); - - + AddDataPoint(new DateTime(2024, 1, 1), 3.18); // Process data to calculate variance between points ProcessData(); @@ -30,11 +28,11 @@ private void AddDataPoint(DateTime year, double value) { Data.Add(new ChartDataModel { - year = year, - yValue = value, + Year = year, + YValue = value, // Initialize to same value - will be updated later - low = value, - high = value + Low = value, + High = value }); } @@ -46,8 +44,8 @@ private void ProcessData() // For each point (except last), set high value to next point's value for (int i = 0; i < Data.Count - 1; i++) { - Data[i].low = Data[i].yValue; - Data[i].high = Data[i + 1].yValue; + Data[i].Low = Data[i].YValue; + Data[i].High = Data[i + 1].YValue; } } } From be226946d46b1163ff27ec731d231a7ebc75573f Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Tue, 15 Jul 2025 11:29:14 +0530 Subject: [PATCH 03/15] Updated the sample --- MainPage.xaml | 3 +-- MainPage.xaml.cs | 8 +++---- README.md | 55 ++++++++++++++++++++++++++++++++++++++++++++++-- 3 files changed, 57 insertions(+), 9 deletions(-) diff --git a/MainPage.xaml b/MainPage.xaml index e2141d7..22533ac 100644 --- a/MainPage.xaml +++ b/MainPage.xaml @@ -109,8 +109,7 @@ + Low="Low" /> diff --git a/MainPage.xaml.cs b/MainPage.xaml.cs index c796e92..ad63d52 100644 --- a/MainPage.xaml.cs +++ b/MainPage.xaml.cs @@ -86,8 +86,8 @@ protected override void Draw(ICanvas canvas) // Draw percentage text with clear formatting string percentText = isIncreasing ? - $"+{changePercent:0}%" : - $"-{changePercent:0}%"; + $"{changePercent:0}%" : + $"- {changePercent:0}%"; // Position text safely within visible area float textY = isIncreasing ? @@ -96,12 +96,10 @@ protected override void Draw(ICanvas canvas) canvas.FontColor = arrowColor; canvas.FontSize = 12; - canvas.Font = new Font("Arial", (int)FontWeight.Bold); #if MACCATALYST - String boldPercentText = $"**{percentText}**"; // Use MarkdownAttributedTextReader to create styled text - IAttributedText attributedText = MarkdownAttributedTextReader.Read(boldPercentText); + IAttributedText attributedText = MarkdownAttributedTextReader.Read(percentText); // Draw text with proper positioning - works on all platforms float textWidth = percentText.Length * 8; // approximate width diff --git a/README.md b/README.md index e3b05e4..ae52de5 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,53 @@ -# Building-Variance-Indicators-in-.NET-MAUI-Toolkit-Charts-to-Visualize-Natural-Gas-Price-Volatility - Discover techniques to visualize natural gas price volatility with dynamic variance indicators using .NET MAUI Toolkit Charts from Syncfusion. Learn how to implement custom arrow indicators with percentage labels by extending range column series to deliver comprehensive energy market trend visualization for better insights +# Visualizing Natural Gas Price Volatility with Custom Variance Indicators in .NET MAUI + +Discover how to build sophisticated price volatility visualizations using variance indicators with [Syncfusion®'s .NET MAUI Toolkit Charts](https://www.syncfusion.com/maui-controls/maui-cartesian-charts). + +## Overview + +Energy market analysis demands clear visualization of both absolute price levels and price volatility. This project demonstrates how to create custom variance indicators that show percentage changes between time periods with directional arrows and color-coding, enhancing standard column charts for more insightful analysis. + +The implementation leverages custom renderers in .NET MAUI Toolkit to create specialized variance indicators that visually represent price movement direction and magnitude. This approach is valuable for energy traders, market analysts, and financial professionals tracking commodity volatility. + +## Key Features + +### Advanced Variance Visualization + +- Display both price levels and percentage changes in a single view +- Highlight price increases and decreases with color-coded indicators +- Show precise percentage changes between consecutive time periods +- Indicate direction with custom arrow elements + +### Custom Chart Extensions + +- Extend [RangeColumnSeries](https://help.syncfusion.com/cr/maui-toolkit/Syncfusion.Maui.Toolkit.Charts.RangeColumnSeries.html) for specialized variance indicators +- Implement custom `RangeColumnSegmentExt` for dynamic rendering +- Calculate volatility metrics on the fly +- Position visual elements based on data characteristics + +### Interactive Data Analysis + +- Access detailed data through custom tooltips +- Compare price levels across multiple time periods +- Identify volatility patterns with intuitive visual cues +- Assess market stability through visual trend analysis + +## Technologies Used + +- **.NET MAUI** – Cross-platform UI framework +- **Syncfusion® .NET MAUI Toolkit** – Advanced charting capabilities +- **Custom Renderers** – Enhanced visualization components +- **C# & XAML** – Implementation languages + +## Syncfusion® Controls Used + +This project showcases the powerful customization of two key Syncfusion controls: + +- **[SfCartesianChart](https://help.syncfusion.com/cr/maui-toolkit/Syncfusion.Maui.Toolkit.Charts.SfCartesianChart.html)** – Foundation for price visualization + +![VarianceIndicatorsDemo](https://github.com/user-attachments/assets/a637731a-a5c0-4a8d-a228-de600527f4f5) + +## Troubleshooting + +### Path Too Long Exception + +If you are facing a "Path too long" exception when building this example project, close Visual Studio and rename the repository to a shorter name before building the project. \ No newline at end of file From a85179c75843e3b477999ad8152a0edb4fc88532 Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Tue, 15 Jul 2025 13:20:42 +0530 Subject: [PATCH 04/15] Updated the sample --- App.xaml => VarianceIndicators/App.xaml | 4 +-- App.xaml.cs => VarianceIndicators/App.xaml.cs | 2 +- .../AppShell.xaml | 7 ++--- .../AppShell.xaml.cs | 2 +- .../MainPage.xaml | 10 +++---- .../MainPage.xaml.cs | 9 +++---- .../MauiProgram.cs | 2 +- Model.cs => VarianceIndicators/Model.cs | 2 +- .../Platforms}/Android/AndroidManifest.xml | 0 .../Platforms}/Android/MainActivity.cs | 2 +- .../Platforms}/Android/MainApplication.cs | 2 +- .../Android/Resources/values/colors.xml | 0 .../Platforms}/MacCatalyst/AppDelegate.cs | 2 +- .../Platforms}/MacCatalyst/Entitlements.plist | 0 .../Platforms}/MacCatalyst/Info.plist | 0 .../Platforms/MacCatalyst}/Program.cs | 2 +- .../Platforms}/Tizen/Main.cs | 2 +- .../Platforms}/Tizen/tizen-manifest.xml | 2 +- .../Platforms}/Windows/App.xaml | 4 +-- .../Platforms}/Windows/App.xaml.cs | 2 +- .../Platforms}/Windows/Package.appxmanifest | 2 +- .../Platforms}/Windows/app.manifest | 2 +- .../Platforms}/iOS/AppDelegate.cs | 2 +- .../Platforms}/iOS/Info.plist | 0 .../Platforms/iOS}/Program.cs | 2 +- .../iOS/Resources/PrivacyInfo.xcprivacy | 0 .../Properties}/launchSettings.json | 0 .../Resources}/AppIcon/appicon.svg | 0 .../Resources}/AppIcon/appiconfg.svg | 0 .../Resources}/Fonts/OpenSans-Regular.ttf | Bin .../Resources}/Fonts/OpenSans-Semibold.ttf | Bin .../Resources}/Images/dotnet_bot.png | Bin .../Resources}/Raw/AboutAssets.txt | 0 .../Resources}/Splash/splash.svg | 0 .../Resources}/Styles/Colors.xaml | 0 .../Resources}/Styles/Styles.xaml | 0 .../VarianceIndicators.csproj | 9 +++---- VarianceIndicators/VarianceIndicators.sln | 25 ++++++++++++++++++ .../ViewModel.cs | 2 +- 39 files changed, 62 insertions(+), 38 deletions(-) rename App.xaml => VarianceIndicators/App.xaml (84%) rename App.xaml.cs => VarianceIndicators/App.xaml.cs (89%) rename AppShell.xaml => VarianceIndicators/AppShell.xaml (68%) rename AppShell.xaml.cs => VarianceIndicators/AppShell.xaml.cs (81%) rename MainPage.xaml => VarianceIndicators/MainPage.xaml (97%) rename MainPage.xaml.cs => VarianceIndicators/MainPage.xaml.cs (94%) rename MauiProgram.cs => VarianceIndicators/MauiProgram.cs (95%) rename Model.cs => VarianceIndicators/Model.cs (92%) rename {Platforms => VarianceIndicators/Platforms}/Android/AndroidManifest.xml (100%) rename {Platforms => VarianceIndicators/Platforms}/Android/MainActivity.cs (93%) rename {Platforms => VarianceIndicators/Platforms}/Android/MainApplication.cs (92%) rename {Platforms => VarianceIndicators/Platforms}/Android/Resources/values/colors.xml (100%) rename {Platforms => VarianceIndicators/Platforms}/MacCatalyst/AppDelegate.cs (87%) rename {Platforms => VarianceIndicators/Platforms}/MacCatalyst/Entitlements.plist (100%) rename {Platforms => VarianceIndicators/Platforms}/MacCatalyst/Info.plist (100%) rename {Platforms/iOS => VarianceIndicators/Platforms/MacCatalyst}/Program.cs (93%) rename {Platforms => VarianceIndicators/Platforms}/Tizen/Main.cs (92%) rename {Platforms => VarianceIndicators/Platforms}/Tizen/tizen-manifest.xml (84%) rename {Platforms => VarianceIndicators/Platforms}/Windows/App.xaml (70%) rename {Platforms => VarianceIndicators/Platforms}/Windows/App.xaml.cs (95%) rename {Platforms => VarianceIndicators/Platforms}/Windows/Package.appxmanifest (92%) rename {Platforms => VarianceIndicators/Platforms}/Windows/app.manifest (89%) rename {Platforms => VarianceIndicators/Platforms}/iOS/AppDelegate.cs (87%) rename {Platforms => VarianceIndicators/Platforms}/iOS/Info.plist (100%) rename {Platforms/MacCatalyst => VarianceIndicators/Platforms/iOS}/Program.cs (93%) rename {Platforms => VarianceIndicators/Platforms}/iOS/Resources/PrivacyInfo.xcprivacy (100%) rename {Properties => VarianceIndicators/Properties}/launchSettings.json (100%) rename {Resources => VarianceIndicators/Resources}/AppIcon/appicon.svg (100%) rename {Resources => VarianceIndicators/Resources}/AppIcon/appiconfg.svg (100%) rename {Resources => VarianceIndicators/Resources}/Fonts/OpenSans-Regular.ttf (100%) rename {Resources => VarianceIndicators/Resources}/Fonts/OpenSans-Semibold.ttf (100%) rename {Resources => VarianceIndicators/Resources}/Images/dotnet_bot.png (100%) rename {Resources => VarianceIndicators/Resources}/Raw/AboutAssets.txt (100%) rename {Resources => VarianceIndicators/Resources}/Splash/splash.svg (100%) rename {Resources => VarianceIndicators/Resources}/Styles/Colors.xaml (100%) rename {Resources => VarianceIndicators/Resources}/Styles/Styles.xaml (100%) rename DualBarChartDemo.csproj => VarianceIndicators/VarianceIndicators.csproj (91%) create mode 100644 VarianceIndicators/VarianceIndicators.sln rename ViewModel.cs => VarianceIndicators/ViewModel.cs (98%) diff --git a/App.xaml b/VarianceIndicators/App.xaml similarity index 84% rename from App.xaml rename to VarianceIndicators/App.xaml index 5017e21..1e4b1a6 100644 --- a/App.xaml +++ b/VarianceIndicators/App.xaml @@ -1,8 +1,8 @@  + xmlns:local="clr-namespace:VarianceIndicators" + x:Class="VarianceIndicators.App"> diff --git a/App.xaml.cs b/VarianceIndicators/App.xaml.cs similarity index 89% rename from App.xaml.cs rename to VarianceIndicators/App.xaml.cs index 3ca6490..21a36a8 100644 --- a/App.xaml.cs +++ b/VarianceIndicators/App.xaml.cs @@ -1,4 +1,4 @@ -namespace DualBarChartDemo +namespace VarianceIndicators { public partial class App : Application { diff --git a/AppShell.xaml b/VarianceIndicators/AppShell.xaml similarity index 68% rename from AppShell.xaml rename to VarianceIndicators/AppShell.xaml index 207f64c..2562959 100644 --- a/AppShell.xaml +++ b/VarianceIndicators/AppShell.xaml @@ -1,12 +1,13 @@ + xmlns:local="clr-namespace:VarianceIndicators" + Title="VarianceIndicators"> + diff --git a/AppShell.xaml.cs b/VarianceIndicators/AppShell.xaml.cs similarity index 81% rename from AppShell.xaml.cs rename to VarianceIndicators/AppShell.xaml.cs index d4468ae..0d83599 100644 --- a/AppShell.xaml.cs +++ b/VarianceIndicators/AppShell.xaml.cs @@ -1,4 +1,4 @@ -namespace DualBarChartDemo +namespace VarianceIndicators { public partial class AppShell : Shell { diff --git a/MainPage.xaml b/VarianceIndicators/MainPage.xaml similarity index 97% rename from MainPage.xaml rename to VarianceIndicators/MainPage.xaml index 22533ac..cee03e0 100644 --- a/MainPage.xaml +++ b/VarianceIndicators/MainPage.xaml @@ -1,9 +1,9 @@  + xmlns:local="clr-namespace:VarianceIndicators"> @@ -14,7 +14,7 @@ - @@ -37,14 +37,14 @@ FontAttributes="Bold" FontSize="14" HorizontalOptions="Center" - VerticalOptions="Center"/> + VerticalOptions="Center"/> diff --git a/MainPage.xaml.cs b/VarianceIndicators/MainPage.xaml.cs similarity index 94% rename from MainPage.xaml.cs rename to VarianceIndicators/MainPage.xaml.cs index ad63d52..9711f48 100644 --- a/MainPage.xaml.cs +++ b/VarianceIndicators/MainPage.xaml.cs @@ -1,10 +1,9 @@ -using Syncfusion.Maui.Toolkit.Charts; +using Syncfusion.Maui.Toolkit.Charts; using System.Collections.ObjectModel; -using Microsoft.Maui.Graphics; +using VarianceIndicators; using Font = Microsoft.Maui.Graphics.Font; -using Microsoft.Maui.Graphics.Text; -namespace DualBarChartDemo +namespace VarianceIndicators { public partial class MainPage : ContentPage { @@ -114,7 +113,7 @@ protected override void Draw(ICanvas canvas) textY - (textHeight / 2), textWidth, textHeight); #else - canvas.DrawString(percentText,centerX,textY,HorizontalAlignment.Center); + canvas.DrawString(percentText, centerX, textY, HorizontalAlignment.Center); #endif canvas.RestoreState(); diff --git a/MauiProgram.cs b/VarianceIndicators/MauiProgram.cs similarity index 95% rename from MauiProgram.cs rename to VarianceIndicators/MauiProgram.cs index 3d0fead..e84cced 100644 --- a/MauiProgram.cs +++ b/VarianceIndicators/MauiProgram.cs @@ -1,7 +1,7 @@ using Microsoft.Extensions.Logging; using Syncfusion.Maui.Toolkit.Hosting; -namespace DualBarChartDemo +namespace VarianceIndicators { public static class MauiProgram { diff --git a/Model.cs b/VarianceIndicators/Model.cs similarity index 92% rename from Model.cs rename to VarianceIndicators/Model.cs index b9069ee..6127df9 100644 --- a/Model.cs +++ b/VarianceIndicators/Model.cs @@ -4,7 +4,7 @@ using System.Text; using System.Threading.Tasks; -namespace DualBarChartDemo +namespace VarianceIndicators { public class ChartDataModel { diff --git a/Platforms/Android/AndroidManifest.xml b/VarianceIndicators/Platforms/Android/AndroidManifest.xml similarity index 100% rename from Platforms/Android/AndroidManifest.xml rename to VarianceIndicators/Platforms/Android/AndroidManifest.xml diff --git a/Platforms/Android/MainActivity.cs b/VarianceIndicators/Platforms/Android/MainActivity.cs similarity index 93% rename from Platforms/Android/MainActivity.cs rename to VarianceIndicators/Platforms/Android/MainActivity.cs index 6d9c86e..a05fc1b 100644 --- a/Platforms/Android/MainActivity.cs +++ b/VarianceIndicators/Platforms/Android/MainActivity.cs @@ -2,7 +2,7 @@ using Android.Content.PM; using Android.OS; -namespace DualBarChartDemo +namespace VarianceIndicators { [Activity(Theme = "@style/Maui.SplashTheme", MainLauncher = true, LaunchMode = LaunchMode.SingleTop, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.Density)] public class MainActivity : MauiAppCompatActivity diff --git a/Platforms/Android/MainApplication.cs b/VarianceIndicators/Platforms/Android/MainApplication.cs similarity index 92% rename from Platforms/Android/MainApplication.cs rename to VarianceIndicators/Platforms/Android/MainApplication.cs index d2e7540..1f4ba89 100644 --- a/Platforms/Android/MainApplication.cs +++ b/VarianceIndicators/Platforms/Android/MainApplication.cs @@ -1,7 +1,7 @@ using Android.App; using Android.Runtime; -namespace DualBarChartDemo +namespace VarianceIndicators { [Application] public class MainApplication : MauiApplication diff --git a/Platforms/Android/Resources/values/colors.xml b/VarianceIndicators/Platforms/Android/Resources/values/colors.xml similarity index 100% rename from Platforms/Android/Resources/values/colors.xml rename to VarianceIndicators/Platforms/Android/Resources/values/colors.xml diff --git a/Platforms/MacCatalyst/AppDelegate.cs b/VarianceIndicators/Platforms/MacCatalyst/AppDelegate.cs similarity index 87% rename from Platforms/MacCatalyst/AppDelegate.cs rename to VarianceIndicators/Platforms/MacCatalyst/AppDelegate.cs index 1a31755..1584c9d 100644 --- a/Platforms/MacCatalyst/AppDelegate.cs +++ b/VarianceIndicators/Platforms/MacCatalyst/AppDelegate.cs @@ -1,6 +1,6 @@ using Foundation; -namespace DualBarChartDemo +namespace VarianceIndicators { [Register("AppDelegate")] public class AppDelegate : MauiUIApplicationDelegate diff --git a/Platforms/MacCatalyst/Entitlements.plist b/VarianceIndicators/Platforms/MacCatalyst/Entitlements.plist similarity index 100% rename from Platforms/MacCatalyst/Entitlements.plist rename to VarianceIndicators/Platforms/MacCatalyst/Entitlements.plist diff --git a/Platforms/MacCatalyst/Info.plist b/VarianceIndicators/Platforms/MacCatalyst/Info.plist similarity index 100% rename from Platforms/MacCatalyst/Info.plist rename to VarianceIndicators/Platforms/MacCatalyst/Info.plist diff --git a/Platforms/iOS/Program.cs b/VarianceIndicators/Platforms/MacCatalyst/Program.cs similarity index 93% rename from Platforms/iOS/Program.cs rename to VarianceIndicators/Platforms/MacCatalyst/Program.cs index 3d462d1..1f78dc9 100644 --- a/Platforms/iOS/Program.cs +++ b/VarianceIndicators/Platforms/MacCatalyst/Program.cs @@ -1,7 +1,7 @@ using ObjCRuntime; using UIKit; -namespace DualBarChartDemo +namespace VarianceIndicators { public class Program { diff --git a/Platforms/Tizen/Main.cs b/VarianceIndicators/Platforms/Tizen/Main.cs similarity index 92% rename from Platforms/Tizen/Main.cs rename to VarianceIndicators/Platforms/Tizen/Main.cs index fae22d5..c437b9b 100644 --- a/Platforms/Tizen/Main.cs +++ b/VarianceIndicators/Platforms/Tizen/Main.cs @@ -2,7 +2,7 @@ using Microsoft.Maui; using Microsoft.Maui.Hosting; -namespace DualBarChartDemo +namespace VarianceIndicators { internal class Program : MauiApplication { diff --git a/Platforms/Tizen/tizen-manifest.xml b/VarianceIndicators/Platforms/Tizen/tizen-manifest.xml similarity index 84% rename from Platforms/Tizen/tizen-manifest.xml rename to VarianceIndicators/Platforms/Tizen/tizen-manifest.xml index 714c76e..cadcbe9 100644 --- a/Platforms/Tizen/tizen-manifest.xml +++ b/VarianceIndicators/Platforms/Tizen/tizen-manifest.xml @@ -1,7 +1,7 @@  - + maui-appicon-placeholder diff --git a/Platforms/Windows/App.xaml b/VarianceIndicators/Platforms/Windows/App.xaml similarity index 70% rename from Platforms/Windows/App.xaml rename to VarianceIndicators/Platforms/Windows/App.xaml index 9153b9d..dca3a01 100644 --- a/Platforms/Windows/App.xaml +++ b/VarianceIndicators/Platforms/Windows/App.xaml @@ -1,8 +1,8 @@  + xmlns:local="using:VarianceIndicators.WinUI"> diff --git a/Platforms/Windows/App.xaml.cs b/VarianceIndicators/Platforms/Windows/App.xaml.cs similarity index 95% rename from Platforms/Windows/App.xaml.cs rename to VarianceIndicators/Platforms/Windows/App.xaml.cs index 454960a..89c6ab9 100644 --- a/Platforms/Windows/App.xaml.cs +++ b/VarianceIndicators/Platforms/Windows/App.xaml.cs @@ -3,7 +3,7 @@ // To learn more about WinUI, the WinUI project structure, // and more about our project templates, see: http://aka.ms/winui-project-info. -namespace DualBarChartDemo.WinUI +namespace VarianceIndicators.WinUI { ///

/// Provides application-specific behavior to supplement the default Application class. diff --git a/Platforms/Windows/Package.appxmanifest b/VarianceIndicators/Platforms/Windows/Package.appxmanifest similarity index 92% rename from Platforms/Windows/Package.appxmanifest rename to VarianceIndicators/Platforms/Windows/Package.appxmanifest index c29b915..905b059 100644 --- a/Platforms/Windows/Package.appxmanifest +++ b/VarianceIndicators/Platforms/Windows/Package.appxmanifest @@ -8,7 +8,7 @@ - + $placeholder$ diff --git a/Platforms/Windows/app.manifest b/VarianceIndicators/Platforms/Windows/app.manifest similarity index 89% rename from Platforms/Windows/app.manifest rename to VarianceIndicators/Platforms/Windows/app.manifest index 8279be2..5db589e 100644 --- a/Platforms/Windows/app.manifest +++ b/VarianceIndicators/Platforms/Windows/app.manifest @@ -1,6 +1,6 @@ - + diff --git a/Platforms/iOS/AppDelegate.cs b/VarianceIndicators/Platforms/iOS/AppDelegate.cs similarity index 87% rename from Platforms/iOS/AppDelegate.cs rename to VarianceIndicators/Platforms/iOS/AppDelegate.cs index 1a31755..1584c9d 100644 --- a/Platforms/iOS/AppDelegate.cs +++ b/VarianceIndicators/Platforms/iOS/AppDelegate.cs @@ -1,6 +1,6 @@ using Foundation; -namespace DualBarChartDemo +namespace VarianceIndicators { [Register("AppDelegate")] public class AppDelegate : MauiUIApplicationDelegate diff --git a/Platforms/iOS/Info.plist b/VarianceIndicators/Platforms/iOS/Info.plist similarity index 100% rename from Platforms/iOS/Info.plist rename to VarianceIndicators/Platforms/iOS/Info.plist diff --git a/Platforms/MacCatalyst/Program.cs b/VarianceIndicators/Platforms/iOS/Program.cs similarity index 93% rename from Platforms/MacCatalyst/Program.cs rename to VarianceIndicators/Platforms/iOS/Program.cs index 3d462d1..1f78dc9 100644 --- a/Platforms/MacCatalyst/Program.cs +++ b/VarianceIndicators/Platforms/iOS/Program.cs @@ -1,7 +1,7 @@ using ObjCRuntime; using UIKit; -namespace DualBarChartDemo +namespace VarianceIndicators { public class Program { diff --git a/Platforms/iOS/Resources/PrivacyInfo.xcprivacy b/VarianceIndicators/Platforms/iOS/Resources/PrivacyInfo.xcprivacy similarity index 100% rename from Platforms/iOS/Resources/PrivacyInfo.xcprivacy rename to VarianceIndicators/Platforms/iOS/Resources/PrivacyInfo.xcprivacy diff --git a/Properties/launchSettings.json b/VarianceIndicators/Properties/launchSettings.json similarity index 100% rename from Properties/launchSettings.json rename to VarianceIndicators/Properties/launchSettings.json diff --git a/Resources/AppIcon/appicon.svg b/VarianceIndicators/Resources/AppIcon/appicon.svg similarity index 100% rename from Resources/AppIcon/appicon.svg rename to VarianceIndicators/Resources/AppIcon/appicon.svg diff --git a/Resources/AppIcon/appiconfg.svg b/VarianceIndicators/Resources/AppIcon/appiconfg.svg similarity index 100% rename from Resources/AppIcon/appiconfg.svg rename to VarianceIndicators/Resources/AppIcon/appiconfg.svg diff --git a/Resources/Fonts/OpenSans-Regular.ttf b/VarianceIndicators/Resources/Fonts/OpenSans-Regular.ttf similarity index 100% rename from Resources/Fonts/OpenSans-Regular.ttf rename to VarianceIndicators/Resources/Fonts/OpenSans-Regular.ttf diff --git a/Resources/Fonts/OpenSans-Semibold.ttf b/VarianceIndicators/Resources/Fonts/OpenSans-Semibold.ttf similarity index 100% rename from Resources/Fonts/OpenSans-Semibold.ttf rename to VarianceIndicators/Resources/Fonts/OpenSans-Semibold.ttf diff --git a/Resources/Images/dotnet_bot.png b/VarianceIndicators/Resources/Images/dotnet_bot.png similarity index 100% rename from Resources/Images/dotnet_bot.png rename to VarianceIndicators/Resources/Images/dotnet_bot.png diff --git a/Resources/Raw/AboutAssets.txt b/VarianceIndicators/Resources/Raw/AboutAssets.txt similarity index 100% rename from Resources/Raw/AboutAssets.txt rename to VarianceIndicators/Resources/Raw/AboutAssets.txt diff --git a/Resources/Splash/splash.svg b/VarianceIndicators/Resources/Splash/splash.svg similarity index 100% rename from Resources/Splash/splash.svg rename to VarianceIndicators/Resources/Splash/splash.svg diff --git a/Resources/Styles/Colors.xaml b/VarianceIndicators/Resources/Styles/Colors.xaml similarity index 100% rename from Resources/Styles/Colors.xaml rename to VarianceIndicators/Resources/Styles/Colors.xaml diff --git a/Resources/Styles/Styles.xaml b/VarianceIndicators/Resources/Styles/Styles.xaml similarity index 100% rename from Resources/Styles/Styles.xaml rename to VarianceIndicators/Resources/Styles/Styles.xaml diff --git a/DualBarChartDemo.csproj b/VarianceIndicators/VarianceIndicators.csproj similarity index 91% rename from DualBarChartDemo.csproj rename to VarianceIndicators/VarianceIndicators.csproj index cb63f8d..70743c7 100644 --- a/DualBarChartDemo.csproj +++ b/VarianceIndicators/VarianceIndicators.csproj @@ -14,17 +14,17 @@ Exe - DualBarChartDemo + VarianceIndicators true true enable enable - DualBarChartDemo + VarianceIndicators - com.companyname.dualbarchartdemo + com.companyname.varianceindicators 1.0 @@ -62,8 +62,7 @@ - - + diff --git a/VarianceIndicators/VarianceIndicators.sln b/VarianceIndicators/VarianceIndicators.sln new file mode 100644 index 0000000..455674b --- /dev/null +++ b/VarianceIndicators/VarianceIndicators.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.14.36221.1 d17.14 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VarianceIndicators", "VarianceIndicators.csproj", "{1CFB3319-66D3-4CFE-921E-A003331A8866}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {1CFB3319-66D3-4CFE-921E-A003331A8866}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1CFB3319-66D3-4CFE-921E-A003331A8866}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1CFB3319-66D3-4CFE-921E-A003331A8866}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1CFB3319-66D3-4CFE-921E-A003331A8866}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {2F1D96E3-F7A4-44EC-9973-A0CADA6FFF89} + EndGlobalSection +EndGlobal diff --git a/ViewModel.cs b/VarianceIndicators/ViewModel.cs similarity index 98% rename from ViewModel.cs rename to VarianceIndicators/ViewModel.cs index 4ea3c92..e3013e4 100644 --- a/ViewModel.cs +++ b/VarianceIndicators/ViewModel.cs @@ -2,7 +2,7 @@ using System.Collections.ObjectModel; using System.ComponentModel; -namespace DualBarChartDemo +namespace VarianceIndicators { public class ChartViewModel { From 71c2b4f1ee51555ea31f0775f140a7a4a69c8441 Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Tue, 15 Jul 2025 13:31:09 +0530 Subject: [PATCH 05/15] Updated the sample --- VarianceIndicators/MainPage.xaml.cs | 1 + VarianceIndicators/VarianceIndicators.csproj | 1 + 2 files changed, 2 insertions(+) diff --git a/VarianceIndicators/MainPage.xaml.cs b/VarianceIndicators/MainPage.xaml.cs index 9711f48..dd50280 100644 --- a/VarianceIndicators/MainPage.xaml.cs +++ b/VarianceIndicators/MainPage.xaml.cs @@ -2,6 +2,7 @@ using System.Collections.ObjectModel; using VarianceIndicators; using Font = Microsoft.Maui.Graphics.Font; +using Microsoft.Maui.Graphics.Text; namespace VarianceIndicators { diff --git a/VarianceIndicators/VarianceIndicators.csproj b/VarianceIndicators/VarianceIndicators.csproj index 70743c7..6de6495 100644 --- a/VarianceIndicators/VarianceIndicators.csproj +++ b/VarianceIndicators/VarianceIndicators.csproj @@ -62,6 +62,7 @@ + From 17ae7589b5d120a8bd89a2867b539d16e47875d0 Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Tue, 15 Jul 2025 16:17:42 +0530 Subject: [PATCH 06/15] Updated label distance --- VarianceIndicators/MainPage.xaml.cs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/VarianceIndicators/MainPage.xaml.cs b/VarianceIndicators/MainPage.xaml.cs index dd50280..fa06081 100644 --- a/VarianceIndicators/MainPage.xaml.cs +++ b/VarianceIndicators/MainPage.xaml.cs @@ -90,12 +90,16 @@ protected override void Draw(ICanvas canvas) $"- {changePercent:0}%"; // Position text safely within visible area - float textY = isIncreasing ? - Math.Max(Top - 20, 15) : - Math.Min(Bottom + 20, Bottom + 40); + float labelDistance = 9; + + // Position text safely within visible area + float textY = isIncreasing ? + Math.Max(Top - labelDistance, 15) : + Math.Min(Bottom + labelDistance + 10, Bottom + 40); canvas.FontColor = arrowColor; canvas.FontSize = 12; + #if MACCATALYST // Use MarkdownAttributedTextReader to create styled text From 2e590a348132f729311f5540ec4cf3056d6f457a Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Tue, 15 Jul 2025 20:08:02 +0530 Subject: [PATCH 07/15] Updated the sample --- VarianceIndicators/MainPage.xaml | 1 + VarianceIndicators/MainPage.xaml.cs | 53 ++++++++------------ VarianceIndicators/VarianceIndicators.csproj | 1 - 3 files changed, 21 insertions(+), 34 deletions(-) diff --git a/VarianceIndicators/MainPage.xaml b/VarianceIndicators/MainPage.xaml index cee03e0..46cd633 100644 --- a/VarianceIndicators/MainPage.xaml +++ b/VarianceIndicators/MainPage.xaml @@ -99,6 +99,7 @@ - From 7ebdbca9c247c3188dac9a8bd5fb1df189259c59 Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Tue, 15 Jul 2025 20:18:15 +0530 Subject: [PATCH 08/15] Updated the sample --- README.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index ae52de5..6e76b17 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Visualizing Natural Gas Price Volatility with Custom Variance Indicators in .NET MAUI -Discover how to build sophisticated price volatility visualizations using variance indicators with [Syncfusion®'s .NET MAUI Toolkit Charts](https://www.syncfusion.com/maui-controls/maui-cartesian-charts). +Discover how to build sophisticated price volatility visualizations using variance indicators with [Syncfusion�'s .NET MAUI Toolkit Charts](https://www.syncfusion.com/maui-controls/maui-cartesian-charts). ## Overview @@ -33,18 +33,18 @@ The implementation leverages custom renderers in .NET MAUI Toolkit to create spe ## Technologies Used -- **.NET MAUI** – Cross-platform UI framework -- **Syncfusion® .NET MAUI Toolkit** – Advanced charting capabilities -- **Custom Renderers** – Enhanced visualization components -- **C# & XAML** – Implementation languages +- **.NET MAUI** � Cross-platform UI framework +- **Syncfusion� .NET MAUI Toolkit** � Advanced charting capabilities +- **Custom Renderers** � Enhanced visualization components +- **C# & XAML** � Implementation languages -## Syncfusion® Controls Used +## Syncfusion� Controls Used This project showcases the powerful customization of two key Syncfusion controls: -- **[SfCartesianChart](https://help.syncfusion.com/cr/maui-toolkit/Syncfusion.Maui.Toolkit.Charts.SfCartesianChart.html)** – Foundation for price visualization +- **[SfCartesianChart](https://help.syncfusion.com/cr/maui-toolkit/Syncfusion.Maui.Toolkit.Charts.SfCartesianChart.html)** � Foundation for price visualization -![VarianceIndicatorsDemo](https://github.com/user-attachments/assets/a637731a-a5c0-4a8d-a228-de600527f4f5) +![VarianceIndicators](https://github.com/user-attachments/assets/4930c677-6b33-4830-bc96-555def1157db) ## Troubleshooting From ceb8fb7ca42b4b076362ffa29d5c5cc744e6e22a Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Wed, 16 Jul 2025 10:38:22 +0530 Subject: [PATCH 09/15] Updated the sample --- .../CustomCharts/CustomCharts.cs | 112 ++++++++++++++++++ VarianceIndicators/MainPage.xaml | 12 +- VarianceIndicators/MainPage.xaml.cs | 105 +--------------- VarianceIndicators/{ => Model}/Model.cs | 0 VarianceIndicators/VarianceIndicators.csproj | 2 +- .../{ => ViewModel}/ViewModel.cs | 0 6 files changed, 120 insertions(+), 111 deletions(-) create mode 100644 VarianceIndicators/CustomCharts/CustomCharts.cs rename VarianceIndicators/{ => Model}/Model.cs (100%) rename VarianceIndicators/{ => ViewModel}/ViewModel.cs (100%) diff --git a/VarianceIndicators/CustomCharts/CustomCharts.cs b/VarianceIndicators/CustomCharts/CustomCharts.cs new file mode 100644 index 0000000..c2adea8 --- /dev/null +++ b/VarianceIndicators/CustomCharts/CustomCharts.cs @@ -0,0 +1,112 @@ +using Syncfusion.Maui.Toolkit.Charts; +using Syncfusion.Maui.Toolkit.Graphics.Internals; +using System.Collections.ObjectModel; +using Font = Microsoft.Maui.Graphics.Font; + +namespace VarianceIndicators +{ + public partial class RangeColumnSeriesExt : RangeColumnSeries + { + protected override ChartSegment CreateSegment() + { + return new RangeColumnSegmentExt(); + } + } + + public partial class RangeColumnSegmentExt : RangeColumnSegment + { + float offsetPercentage; + float topArrowTextGap; + float bottomArrowTextGap; + + protected override void Draw(ICanvas canvas) + { + // Call base layout first + base.OnLayout(); + + // Skip drawing if segment isn't properly laid out or data is missing + if (float.IsNaN(Left) || float.IsNaN(Top) || float.IsNaN(Right) || float.IsNaN(Bottom) || + Series is not RangeColumnSeriesExt || Item is not ChartDataModel dataPoint) + return; + + // Skip last segment or if there's no change + var itemsSource = Series.ItemsSource as ObservableCollection; + if (Index == itemsSource?.Count - 1 || dataPoint.Low == dataPoint.High) + return; + + // Calculate change direction and percentage + bool isIncreasing = dataPoint.Low < dataPoint.High; + double changePercent = Math.Abs((dataPoint.High - dataPoint.Low) / dataPoint.Low) * 100; + + // Set color based on direction + Color arrowColor = isIncreasing ? Colors.Green : Colors.Red; + + // Ensure we have a valid drawing canvas + if (canvas == null) return; + + // Save canvas state before drawing + canvas.SaveState(); + +#if IOS + offsetPercentage = 0.1f; + topArrowTextGap = 1f; + bottomArrowTextGap = 1.5f; +#elif ANDROID + offsetPercentage = 0.2f; + topArrowTextGap = 1f; + bottomArrowTextGap = 1.5f; +#else + offsetPercentage = 0.2f; + topArrowTextGap = 3f; + bottomArrowTextGap = 1f; +#endif + + + float columnWidth = Right - Left; + float offsetX = columnWidth * offsetPercentage; + float centerX = (Left + Right) / 2 + offsetX; + + // Draw line first + canvas.StrokeColor = Colors.Black; + canvas.StrokeSize = 1f; + canvas.DrawLine(centerX, Top, centerX, Bottom); + + // Draw arrow + float arrowSize = 6; + var arrowPath = new PathF(); + + // Draw arrow based on direction + if (isIncreasing) + { + arrowPath.MoveTo(centerX, Top); + arrowPath.LineTo(centerX - arrowSize, Top + arrowSize); + arrowPath.LineTo(centerX + arrowSize, Top + arrowSize); + } + else + { + arrowPath.MoveTo(centerX, Bottom); + arrowPath.LineTo(centerX - arrowSize, Bottom - arrowSize); + arrowPath.LineTo(centerX + arrowSize, Bottom - arrowSize); + } + + arrowPath.Close(); + canvas.FillColor = Colors.Black; + canvas.FillPath(arrowPath); + + // Draw percentage text with clear formatting. + string percentText = isIncreasing ? + $"{changePercent:0}%" : + $"- {changePercent:0}%"; + + var labelStyle = new ChartAxisLabelStyle() { FontSize = 12, TextColor = arrowColor }; + var font = Font.Default; + + // Measure text size using canvas. + SizeF textSize = canvas.GetStringSize(percentText, font, (float)labelStyle.FontSize); + float textY = isIncreasing ? Top - (textSize.Height * topArrowTextGap) : Bottom + (textSize.Height * bottomArrowTextGap); + + canvas.DrawText(percentText, centerX - (textSize.Width / 2), textY, labelStyle); + canvas.RestoreState(); + } + } +} diff --git a/VarianceIndicators/MainPage.xaml b/VarianceIndicators/MainPage.xaml index 46cd633..9f84739 100644 --- a/VarianceIndicators/MainPage.xaml +++ b/VarianceIndicators/MainPage.xaml @@ -100,12 +100,12 @@ + XBindingPath="Year" + YBindingPath="YValue" + EnableTooltip="True" + Fill="#7bb4eb" + ShowDataLabels="False" + TooltipTemplate="{StaticResource tooltipTemplate}"> ; - if (Index == itemsSource?.Count - 1 || dataPoint.Low == dataPoint.High) - return; - - // Calculate change direction and percentage - bool isIncreasing = dataPoint.Low < dataPoint.High; - double changePercent = Math.Abs((dataPoint.High - dataPoint.Low) / dataPoint.Low) * 100; - - // Set color based on direction - Color arrowColor = isIncreasing ? Colors.Green : Colors.Red; - - // Ensure we have a valid drawing canvas - if (canvas == null) return; - - // Save canvas state before drawing - canvas.SaveState(); - -#if IOS - float offsetPercentage = 0.1f; -#else - float offsetPercentage = 0.2f; -#endif - - float columnWidth = Right - Left; - float offsetX = columnWidth * offsetPercentage; - float centerX = (Left + Right) / 2 + offsetX; - - // Draw line first - canvas.StrokeColor = Colors.Black; - canvas.StrokeSize = 1f; - canvas.DrawLine(centerX, Top, centerX, Bottom); - - // Draw arrow - float arrowSize = 6; - var arrowPath = new PathF(); - - // Draw arrow based on direction - if (isIncreasing) - { - arrowPath.MoveTo(centerX, Top); - arrowPath.LineTo(centerX - arrowSize, Top + arrowSize); - arrowPath.LineTo(centerX + arrowSize, Top + arrowSize); - } - else - { - arrowPath.MoveTo(centerX, Bottom); - arrowPath.LineTo(centerX - arrowSize, Bottom - arrowSize); - arrowPath.LineTo(centerX + arrowSize, Bottom - arrowSize); - } - - arrowPath.Close(); - canvas.FillColor = Colors.Black; - canvas.FillPath(arrowPath); - - // Draw percentage text with clear formatting - string percentText = isIncreasing ? - $"{changePercent:0}%" : - $"- {changePercent:0}%"; - - var labelStyle = new ChartAxisLabelStyle() { FontSize = 12, TextColor = arrowColor}; - - var font = Font.Default; - - // Measure text size using canvas directly - SizeF textSize = canvas.GetStringSize(percentText, font, (float)labelStyle.FontSize); - -#if ANDROID || IOS - float textY = (float)(isIncreasing ? Top - (textSize.Height) : Bottom + (textSize.Height * 1.5)); -#else - float textY = isIncreasing ? Top - (textSize.Height * 3) : Bottom + (textSize.Height); -#endif - canvas.DrawText(percentText, centerX - (textSize.Width / 2), textY, labelStyle); - canvas.RestoreState(); - } } } diff --git a/VarianceIndicators/Model.cs b/VarianceIndicators/Model/Model.cs similarity index 100% rename from VarianceIndicators/Model.cs rename to VarianceIndicators/Model/Model.cs diff --git a/VarianceIndicators/VarianceIndicators.csproj b/VarianceIndicators/VarianceIndicators.csproj index 70743c7..e630f37 100644 --- a/VarianceIndicators/VarianceIndicators.csproj +++ b/VarianceIndicators/VarianceIndicators.csproj @@ -62,7 +62,7 @@ - + diff --git a/VarianceIndicators/ViewModel.cs b/VarianceIndicators/ViewModel/ViewModel.cs similarity index 100% rename from VarianceIndicators/ViewModel.cs rename to VarianceIndicators/ViewModel/ViewModel.cs From ce77955941b9cb050eead33cb5b9eb78c1bd1dc2 Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Wed, 16 Jul 2025 10:48:26 +0530 Subject: [PATCH 10/15] Updated the sample --- VarianceIndicators/Model/{Model.cs => ChartDataModel.cs} | 0 VarianceIndicators/ViewModel/{ViewModel.cs => ChartViewModel.cs} | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename VarianceIndicators/Model/{Model.cs => ChartDataModel.cs} (100%) rename VarianceIndicators/ViewModel/{ViewModel.cs => ChartViewModel.cs} (100%) diff --git a/VarianceIndicators/Model/Model.cs b/VarianceIndicators/Model/ChartDataModel.cs similarity index 100% rename from VarianceIndicators/Model/Model.cs rename to VarianceIndicators/Model/ChartDataModel.cs diff --git a/VarianceIndicators/ViewModel/ViewModel.cs b/VarianceIndicators/ViewModel/ChartViewModel.cs similarity index 100% rename from VarianceIndicators/ViewModel/ViewModel.cs rename to VarianceIndicators/ViewModel/ChartViewModel.cs From 36a900b736976dc64ce9e648e1d165bd1c8c87ec Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Wed, 16 Jul 2025 15:46:35 +0530 Subject: [PATCH 11/15] Updated the sample --- README.md | 18 +++++---- .../CustomCharts/CustomCharts.cs | 37 ++++++++++--------- VarianceIndicators/MainPage.xaml | 5 +++ VarianceIndicators/Model/ChartDataModel.cs | 8 +--- .../ViewModel/ChartViewModel.cs | 1 - 5 files changed, 35 insertions(+), 34 deletions(-) diff --git a/README.md b/README.md index 6e76b17..bae0d43 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Visualizing Natural Gas Price Volatility with Custom Variance Indicators in .NET MAUI -Discover how to build sophisticated price volatility visualizations using variance indicators with [Syncfusion�'s .NET MAUI Toolkit Charts](https://www.syncfusion.com/maui-controls/maui-cartesian-charts). +Discover how to build sophisticated price volatility visualizations using variance indicators with [Syncfusion's .NET MAUI Toolkit Charts](https://www.syncfusion.com/maui-controls/maui-cartesian-charts). ## Overview @@ -33,16 +33,16 @@ The implementation leverages custom renderers in .NET MAUI Toolkit to create spe ## Technologies Used -- **.NET MAUI** � Cross-platform UI framework -- **Syncfusion� .NET MAUI Toolkit** � Advanced charting capabilities -- **Custom Renderers** � Enhanced visualization components -- **C# & XAML** � Implementation languages +- **.NET MAUI:** Cross-platform UI framework +- **Syncfusion .NET MAUI Toolkit:** Advanced charting capabilities +- **Custom Renderers:** Enhanced visualization components +- **C# & XAML:** Implementation languages -## Syncfusion� Controls Used +## Syncfusion Controls Used This project showcases the powerful customization of two key Syncfusion controls: -- **[SfCartesianChart](https://help.syncfusion.com/cr/maui-toolkit/Syncfusion.Maui.Toolkit.Charts.SfCartesianChart.html)** � Foundation for price visualization +- **[SfCartesianChart](https://help.syncfusion.com/cr/maui-toolkit/Syncfusion.Maui.Toolkit.Charts.SfCartesianChart.html):** Foundation for price visualization ![VarianceIndicators](https://github.com/user-attachments/assets/4930c677-6b33-4830-bc96-555def1157db) @@ -50,4 +50,6 @@ This project showcases the powerful customization of two key Syncfusion controls ### Path Too Long Exception -If you are facing a "Path too long" exception when building this example project, close Visual Studio and rename the repository to a shorter name before building the project. \ No newline at end of file +If you are facing a "Path too long" exception when building this example project, close Visual Studio and rename the repository to a shorter name before building the project. + +For a step-by-step procedure, refer to the blog: \ No newline at end of file diff --git a/VarianceIndicators/CustomCharts/CustomCharts.cs b/VarianceIndicators/CustomCharts/CustomCharts.cs index c2adea8..6daa4b9 100644 --- a/VarianceIndicators/CustomCharts/CustomCharts.cs +++ b/VarianceIndicators/CustomCharts/CustomCharts.cs @@ -15,11 +15,12 @@ protected override ChartSegment CreateSegment() public partial class RangeColumnSegmentExt : RangeColumnSegment { - float offsetPercentage; - float topArrowTextGap; - float bottomArrowTextGap; + float offsetPercentage = 0.2f; + float topArrowTextGap = 1.0f; + float bottomArrowTextGap = 1.0f; protected override void Draw(ICanvas canvas) + { // Call base layout first base.OnLayout(); @@ -31,6 +32,7 @@ protected override void Draw(ICanvas canvas) // Skip last segment or if there's no change var itemsSource = Series.ItemsSource as ObservableCollection; + if (Index == itemsSource?.Count - 1 || dataPoint.Low == dataPoint.High) return; @@ -47,21 +49,19 @@ protected override void Draw(ICanvas canvas) // Save canvas state before drawing canvas.SaveState(); + float arrowSize = 6; + #if IOS - offsetPercentage = 0.1f; - topArrowTextGap = 1f; - bottomArrowTextGap = 1.5f; + offsetPercentage = 0.1f; + topArrowTextGap = 2.0f; +#elif MACCATALYST + topArrowTextGap = 2.0f; +#elif WINDOWS + topArrowTextGap = 3.0f; #elif ANDROID - offsetPercentage = 0.2f; - topArrowTextGap = 1f; - bottomArrowTextGap = 1.5f; -#else - offsetPercentage = 0.2f; - topArrowTextGap = 3f; - bottomArrowTextGap = 1f; + bottomArrowTextGap = 1.5f; #endif - float columnWidth = Right - Left; float offsetX = columnWidth * offsetPercentage; float centerX = (Left + Right) / 2 + offsetX; @@ -72,7 +72,6 @@ protected override void Draw(ICanvas canvas) canvas.DrawLine(centerX, Top, centerX, Bottom); // Draw arrow - float arrowSize = 6; var arrowPath = new PathF(); // Draw arrow based on direction @@ -93,7 +92,8 @@ protected override void Draw(ICanvas canvas) canvas.FillColor = Colors.Black; canvas.FillPath(arrowPath); - // Draw percentage text with clear formatting. + // Draw percentage text with clear formatting + string percentText = isIncreasing ? $"{changePercent:0}%" : $"- {changePercent:0}%"; @@ -101,10 +101,11 @@ protected override void Draw(ICanvas canvas) var labelStyle = new ChartAxisLabelStyle() { FontSize = 12, TextColor = arrowColor }; var font = Font.Default; - // Measure text size using canvas. + // Measure text size using canvas directly + SizeF textSize = canvas.GetStringSize(percentText, font, (float)labelStyle.FontSize); - float textY = isIncreasing ? Top - (textSize.Height * topArrowTextGap) : Bottom + (textSize.Height * bottomArrowTextGap); + float textY = (float)(isIncreasing ? Top - (textSize.Height * topArrowTextGap) : Bottom + (textSize.Height * bottomArrowTextGap)); canvas.DrawText(percentText, centerX - (textSize.Width / 2), textY, labelStyle); canvas.RestoreState(); } diff --git a/VarianceIndicators/MainPage.xaml b/VarianceIndicators/MainPage.xaml index 9f84739..3bcc009 100644 --- a/VarianceIndicators/MainPage.xaml +++ b/VarianceIndicators/MainPage.xaml @@ -94,6 +94,11 @@ + + + + + diff --git a/VarianceIndicators/Model/ChartDataModel.cs b/VarianceIndicators/Model/ChartDataModel.cs index 6127df9..755d4f9 100644 --- a/VarianceIndicators/Model/ChartDataModel.cs +++ b/VarianceIndicators/Model/ChartDataModel.cs @@ -1,10 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace VarianceIndicators +namespace VarianceIndicators { public class ChartDataModel { diff --git a/VarianceIndicators/ViewModel/ChartViewModel.cs b/VarianceIndicators/ViewModel/ChartViewModel.cs index e3013e4..aa1a562 100644 --- a/VarianceIndicators/ViewModel/ChartViewModel.cs +++ b/VarianceIndicators/ViewModel/ChartViewModel.cs @@ -1,6 +1,5 @@  using System.Collections.ObjectModel; -using System.ComponentModel; namespace VarianceIndicators { From 1d372b9bb69ec10d8e2f6ae22674d06ede584fe4 Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Wed, 16 Jul 2025 16:02:30 +0530 Subject: [PATCH 12/15] Updated the sample --- VarianceIndicators/Platforms/Android/MainActivity.cs | 2 +- VarianceIndicators/Platforms/iOS/Info.plist | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/VarianceIndicators/Platforms/Android/MainActivity.cs b/VarianceIndicators/Platforms/Android/MainActivity.cs index a05fc1b..8280af3 100644 --- a/VarianceIndicators/Platforms/Android/MainActivity.cs +++ b/VarianceIndicators/Platforms/Android/MainActivity.cs @@ -4,7 +4,7 @@ namespace VarianceIndicators { - [Activity(Theme = "@style/Maui.SplashTheme", MainLauncher = true, LaunchMode = LaunchMode.SingleTop, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.Density)] + [Activity(Theme = "@style/Maui.SplashTheme", MainLauncher = true,ScreenOrientation = ScreenOrientation.Landscape, LaunchMode = LaunchMode.SingleTop, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.Density)] public class MainActivity : MauiAppCompatActivity { } diff --git a/VarianceIndicators/Platforms/iOS/Info.plist b/VarianceIndicators/Platforms/iOS/Info.plist index 0004a4f..0e89139 100644 --- a/VarianceIndicators/Platforms/iOS/Info.plist +++ b/VarianceIndicators/Platforms/iOS/Info.plist @@ -15,7 +15,6 @@ UISupportedInterfaceOrientations - UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight From 07a034726c5ead8679bf0cae65b4d430dea9ada5 Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Wed, 16 Jul 2025 16:03:57 +0530 Subject: [PATCH 13/15] Updated the sample --- VarianceIndicators/MainPage.xaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/VarianceIndicators/MainPage.xaml b/VarianceIndicators/MainPage.xaml index 3bcc009..49c119a 100644 --- a/VarianceIndicators/MainPage.xaml +++ b/VarianceIndicators/MainPage.xaml @@ -97,8 +97,6 @@ - - From 4b553370f720752e015c583847239bbec019250e Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Wed, 16 Jul 2025 16:07:53 +0530 Subject: [PATCH 14/15] Updated the sample --- VarianceIndicators/CustomCharts/CustomCharts.cs | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/VarianceIndicators/CustomCharts/CustomCharts.cs b/VarianceIndicators/CustomCharts/CustomCharts.cs index 6daa4b9..174a4b4 100644 --- a/VarianceIndicators/CustomCharts/CustomCharts.cs +++ b/VarianceIndicators/CustomCharts/CustomCharts.cs @@ -20,7 +20,6 @@ public partial class RangeColumnSegmentExt : RangeColumnSegment float bottomArrowTextGap = 1.0f; protected override void Draw(ICanvas canvas) - { // Call base layout first base.OnLayout(); @@ -52,12 +51,12 @@ protected override void Draw(ICanvas canvas) float arrowSize = 6; #if IOS - offsetPercentage = 0.1f; - topArrowTextGap = 2.0f; + offsetPercentage = 0.1f; + topArrowTextGap = 2.0f; #elif MACCATALYST - topArrowTextGap = 2.0f; + topArrowTextGap = 2.0f; #elif WINDOWS - topArrowTextGap = 3.0f; + topArrowTextGap = 3.0f; #elif ANDROID bottomArrowTextGap = 1.5f; #endif From 2d0b0b77456f859d9b5bd21098f407afe4581a3d Mon Sep 17 00:00:00 2001 From: KompelliSravanSyncfusion Date: Wed, 16 Jul 2025 16:19:09 +0530 Subject: [PATCH 15/15] Updated the sample --- README.md | 2 +- VarianceIndicators/CustomCharts/CustomCharts.cs | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index bae0d43..b847dd3 100644 --- a/README.md +++ b/README.md @@ -40,7 +40,7 @@ The implementation leverages custom renderers in .NET MAUI Toolkit to create spe ## Syncfusion Controls Used -This project showcases the powerful customization of two key Syncfusion controls: +This project showcases the powerful customization of Syncfusion control: - **[SfCartesianChart](https://help.syncfusion.com/cr/maui-toolkit/Syncfusion.Maui.Toolkit.Charts.SfCartesianChart.html):** Foundation for price visualization diff --git a/VarianceIndicators/CustomCharts/CustomCharts.cs b/VarianceIndicators/CustomCharts/CustomCharts.cs index 174a4b4..6a6268d 100644 --- a/VarianceIndicators/CustomCharts/CustomCharts.cs +++ b/VarianceIndicators/CustomCharts/CustomCharts.cs @@ -92,7 +92,6 @@ protected override void Draw(ICanvas canvas) canvas.FillPath(arrowPath); // Draw percentage text with clear formatting - string percentText = isIncreasing ? $"{changePercent:0}%" : $"- {changePercent:0}%"; @@ -101,10 +100,9 @@ protected override void Draw(ICanvas canvas) var font = Font.Default; // Measure text size using canvas directly - SizeF textSize = canvas.GetStringSize(percentText, font, (float)labelStyle.FontSize); - float textY = (float)(isIncreasing ? Top - (textSize.Height * topArrowTextGap) : Bottom + (textSize.Height * bottomArrowTextGap)); + canvas.DrawText(percentText, centerX - (textSize.Width / 2), textY, labelStyle); canvas.RestoreState(); }