Syncfusion’s First Control for Uno Platform: Charts | Syncfusion Blogs
Detailed Blog page Skeleton loader
Syncfusion Charts for Uno Platform

Syncfusion is happy to reveal the availability of its very first control for the Uno Platform, the Charts control.

In this blog, we will provide a brief introduction to the Uno Platform, the key features of our Charts control, followed by the steps to integrate our Charts control in an Uno Platform application.

Let’s get started.

What is the Uno Platform and how does it work?

The Uno Platform is a Universal Windows Platform bridge that allows UWP-based code to run on iOS, macOS, Android, and WebAssembly. According to the Uno Platform website:

  • On iOS, macOS and Android, the Uno Platform relies extensively on the Xamarin Native stack.
  • On WebAssembly, the Uno Platform relies directly on the Mono-Wasm runtime.

In the end, the Uno Platform gives you the ability to run WinUI/UWP apps and a single C# and XAML codebase that enables C# on all these platforms.

Refer to the following screenshot.

Source: Uno Platform
Source: Uno Platform

Benefits of the Uno Platform

The Uno Platform is a great choice for .NET developers to develop modern application in various platforms. The following are some of the benefits of the Uno Platform:

  • Build for WebAssembly.
  • Single codebase: web, mobile, desktop.
  • XAML examples everywhere.

To learn more about the benefits of Uno Platform, please refer here.

Syncfusion Charts (beta) for Uno

Now is the time to venture into the main topic of this blog post!

As we said in an earlier blog post, we are pleased to announce our new product, Syncfusion Charts for Uno Platform. This beta version is available for free and you can download it from here.

The following is the list of features available in our Uno Platform Charts for the initial release:

  • Visualize and analyze data with an ever-expanding collection of 10+ charts and graphs, ranging from line to pie charts.
  • Interact with and explore charts with features such as zoom and pan, tooltip, and data labels.
Syncfusion Uno Charts

Charts types

The Uno Platform Charts control includes functionality for plotting more than 10 chart types. Each chart type is easily configured with built-in support for creating stunning visual effects.

  • Basic charts
    • Column chart
    • Bar chart
    • Line chart
    • Spline chart
    • Area chart
    • SplineArea chart
  • Correlation charts
    • Scatter chart
    • Bubble chart
  • Circular charts
    • Pie chart
    • Doughnut chart
    • Semi pie chart
    • Semi doughnut chart
    • Stacked doughnut chart

Chart axis

The Uno Chart control supports three different types of axes:

  • Numerical,
  • Categorical, and
  • Date-time.

The appearance of all chart axis elements can be customized with built-in properties.

Data labels

Data points can be easily annotated with the data labels feature. It helps to improve the readability of the data.

Data Labels in Syncfusion Uno Platform Chart
Data Labels in Syncfusion Uno Platform Chart

Legends

Legends provide additional information that is helpful in identifying individual series in a chart. They can be docked to the left, right, top, or bottom positions around the chart area.

Legends in Syncfusion Uno Platform Chart
Legends in Syncfusion Uno Platform Chart

Interactive features

The end-user experience is greatly enhanced by a set of user interaction features such as zooming, panning, and tooltip.

Tooltip in Syncfusion Uno Platform Charts

Adding Uno Platform Charts to your application

Before getting started to add Charts, setup the Uno development environment by following this guideline. Now, follow the below steps to add Syncfusion Uno Platform Charts to your application and use its basic features:

  1. Download the source of Syncfusion Uno Platform Charts from here.
  2. Add Syncfusion.SfChat.Uno source to your application.
  3. Reference the source in the projects of all the platforms.
  4. Import the namespace SfChart, as shown in the code example, in your pages.
    xmlns:syncfusion="using:Syncfusion.UI.Xaml.Charts"
  5. Then, initialize an empty chart with two axes, as shown in the following code example.
    <syncfusion:SfChart> 
          <syncfusion:SfChart.PrimaryAxis>
               <syncfusion:CategoryAxis /> 
          </syncfusion:SfChart.PrimaryAxis> 
          <syncfusion:SfChart.SecondaryAxis>
               <syncfusion:NumericalAxis /> 
          </syncfusion:SfChart.SecondaryAxis>
    </syncfusion:SfChart>
  6. Populate chart with data: As we are going to visualize the comparison of heights in the data model, add the ColumnSeries to the Series property.
  7. Then, bind the Data property of the ViewModel to the ColumnSeries.ItemsSource property. You need to set the value for the XBindingPath and YBindingPath properties, so that the Chart will fetch values from the right properties in the data model to plot the series. Refer to the following code example.
    <syncfusion:SfChart Header="Getting Started for Uno Chart" Height="300" Width="500">
        <syncfusion:SfChart.PrimaryAxis>
            <syncfusion:CategoryAxis Header="Name" />
        </syncfusion:SfChart.PrimaryAxis>
        <syncfusion:SfChart.SecondaryAxis>
            <syncfusion:NumericalAxis Header="Height(in cm)" />
        </syncfusion:SfChart.SecondaryAxis>
        <syncfusion:ColumnSeries  ItemsSource="{Binding Data}" XBindingPath="Name" YBindingPath="Height" >
              <syncfusion:ColumnSeries.AdornmentsInfo>
                  <syncfusion:ChartAdornmentInfo ShowLabel="True"  FontSize="16" LabelPosition="Inner" Foreground="White" />
              </syncfusion:ColumnSeries.AdornmentsInfo>
       </syncfusion:ColumnSeries>
    </syncfusion:SfChart>
    

A chart similar to the following screenshot will be created as a result of the execution of this project.

Getting Started with Uno ChartsExample applications

A Visual Studio solution with the Syncfusion SampleBrowser.SfChart application is available in this GitHub repository. It demonstrates some basic Charts features. The following image has the output of this application.

Syncfusion Uno Platform Chart Examples

Conclusion

I hope you have a clear idea of the features and benefits of Uno Platform and the Syncfusion Charts control for it. This Uno Platform and our Charts control will definitely increase your productivity by reducing a lot of workforce and development time.

So, try it and leave your feedback in the comments section below!

You can also contact us through our support forumDirect-Trac, or feedback portal. As always, we are happy to assist you!

Be the first to get updates

Karthikeyan V

Meet the Author

Karthikeyan V

Karthikeyan Viswanathan is a Product Manager for Data Visualization and Tools products at Syncfusion. He has been a .NET developer since 2012, working on the custom control development for Microsoft technologies.

Comments (14)

Great job, when do you plan on doing the datagrid ?

Karthikeyan Viswanathan
Karthikeyan Viswanathan
@ Alberto M.  

DataGrid for UNO is not planned and we’ll consider it based on demand.

Stephanus van Staden
Stephanus van Staden
@ Karthikeyan Viswanathan  

Great work, I would also like to see the DataGrid and TreeGrid

@ Karthikeyan Viswanathan  

We are currently using uwp sf DataGrid. However, we have decided to go with Uno. Since this is the most used control in our application, we are now actively looking at native grid/ alternatives.
Is Uno in your updated roadmap?

I’d also love to see DataGrid for the Uno platform!

Please! DataGrid!

Yes, SfDatagrid, SfListView, SfTabView, SfTreeView are great controls, but now need them on UNO.

I’m porting an application from UWP to Android now that uses the PdfViewer. I would love to see this control come to Uno.

I’m building a project management app for the designer/maker community and will need grid and gantt. Hopefully all your UWP controls will be supported eventually. Is there any chance of that happening?

Cheers,

Brent

Excelente trabajo… mis felicitaciones,
Estoy desarrollando una serie de proyectos con Uno Plataform y me encantaría que todos los controles de Syncfusion incorporaran al igual que hicieron con Blazor…

Los controles de Syncfusion me ayudan mucho y ya tengo práctica con ellos…

Saludos
Hernán Muñoz

Any movement on this? Or was it just hype?
It is now 3 years later, and nothing happened

No Update on UNO controls , please confirm if sync fusion is not investing on UNO platform. UNO controls are not visible in product list of Syncfusion, So can we consider UNO will not have future. Please reply over this.

SyncFusion – c’mon – I absolute LOVE your controls (WPF) developer.

Having a Data Grid is important for EVERY platform – I would have preferred a DG over a chart, which in my years of development have never used…

I’m looking for a way to (finally) move BEYOND just Windows development, and I’m currently looking at Avalonia UI and Uno Platform.

I’m leaning towards Uno, which is why I’m here today to see what is supported here at Syncfusion!

The time is NOW to break free from _just Windows_, where we can write my code base and have options for additional platforms to execute on.

Please help us by having your wonderful UI controls (ALL of them) available to assist us with achieving this fresh breath of platform freedom!

@ William Bell  

Hi William,

Thank you for your interest in our controls for the UNO platform. Unfortunately, we don’t currently have any plans to develop controls for the UNO platform.

For your immediate needs, you might consider Avalonia XPF (https://avaloniaui.net/XPF), a cross-platform framework that allows you to use existing WPF controls on multiple platforms. It bridges the gap between WPF and Avalonia’s native UI, offering a smooth transition path for existing WPF apps.

Note: For DataGrid and Charts, we have cross-platform Flutter and net MAUI that work with Windows and a variety of other platforms. Try these platforms as well.

Comments are closed.