{"id":510,"date":"2020-08-05T19:32:12","date_gmt":"2020-08-05T19:32:12","guid":{"rendered":"https:\/\/serkanseker.com\/?p=510"},"modified":"2021-01-18T06:44:45","modified_gmt":"2021-01-18T06:44:45","slug":"xamarin-forms-visualize-data-sfchart-plugin","status":"publish","type":"post","link":"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/","title":{"rendered":"Xamarin.Forms Visualize Data SfChart Plugin"},"content":{"rendered":"\n<p>With Syncfusion&#8217;s <strong>SfChart <\/strong>plugin, you can add many different types of graphics to your applications. Line Chart, Fast Line Chart, Stacked Line Chart are just a few of them. You can also customize the appearance of these graphics as you wish. <strong>SfChart <\/strong>plugin is what every developer needs with its useful controls.<\/p>\n\n\n\n<p>Presenting data on graphs is a good solution to increase the user experience in the applications you develop. So you get more readable and visually beautiful views. Make sure that the end user is more satisfied with using the application. This satisfaction brings more users. Isn&#8217;t that the point of a developer anyway?<\/p>\n\n\n\n<p>At the end of this article, you will learn how to visualize data with graphs in Xamarin.Forms apps. I will use one of the <a href=\"https:\/\/serkanseker.com\/best-nuget-packages\/\" target=\"_blank\" rel=\"noreferrer noopener\">best plugins<\/a>, Syncfusion.Xamarin.SfChart, instead of the existing Xamarin.Forms controls. I will also implement a layered structure with the <a href=\"https:\/\/serkanseker.com\/xamarin-forms-mvvm-pattern\/\" target=\"_blank\" rel=\"noreferrer noopener\">MVVM model<\/a>. <\/p>\n\n\n\n<p>Our motivation for this example project is to first get weather data from the <a href=\"https:\/\/serkanseker.com\/xamarin-forms-openweathermap-rest-api\/\" target=\"_blank\" rel=\"noreferrer noopener\">OpenWeatherMap API<\/a> and then display this data on a graph. Thus improving the user experience. So let&#8217;s start.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 1 &#8211; Install Syncfusion.Xamarin.SfChart Plugin<\/h2>\n\n\n\n<p>First, you need to install\u00a0<a href=\"https:\/\/www.nuget.org\/packages\/Syncfusion.Xamarin.SfChart\/\" target=\"_blank\" rel=\"noreferrer noopener\">Syncfusion.Xamarin.SfChart<\/a>\u00a0plugin in your Xamarin.Forms project. There are two ways to do this. You can find details in the\u00a0<a href=\"https:\/\/serkanseker.com\/install-and-manage-nuget-packages\/\" target=\"_blank\" rel=\"noreferrer noopener\">How To Install and Manage NuGet Packages<\/a>\u00a0article.<\/p>\n\n\n\n<p>Type the following code into Package Manager Console and run it.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Install-Package Syncfusion.Xamarin.SfChart -Version 18.4.0.34<\/code><\/pre>\n\n\n\n<p>Alternatively, you can install the plugin from NuGet Package Manager. <\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>First, <strong>right click<\/strong> on the project folder. <\/li><li>Then click on <strong>Manage NuGet Packages for Solution<\/strong> option. <\/li><li>Go to the <strong>Browse <\/strong>tab in the window that opens. <\/li><li>Finally, type <strong>Syncfusion.Xamarin.SfChart<\/strong> in the <strong>Search bar<\/strong> and search. And install the plugin on all platforms.<\/li><\/ol>\n\n\n\n<div class=\"wp-block-image has-lightbox\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" src=\"https:\/\/serkanseker.com\/wp-content\/uploads\/2020\/08\/Syncfusion.Xamarin.SfChart-Plugin-1.jpg\" alt=\"Install Syncfusion.Xamarin.SfChart Plugin\" class=\"wp-image-514\"\/><figcaption>Install Syncfusion.Xamarin.SfChart Plugin<\/figcaption><\/figure><\/div>\n\n\n\n<p>If you use Syncfusion plugins in the project without Registration License, you will get a warning popup. To use this plugin without any warning messages, you must register with Syncfusion and obtain a Registration License. I explained\u00a0<a href=\"https:\/\/serkanseker.com\/syncfusion-community-license-key\/\" target=\"_blank\" rel=\"noreferrer noopener\">how to register for Syncfusion and get License<\/a>.<\/p>\n\n\n\n<p>Let me explain briefly as follows.<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>First create an account in Syncfusion.<\/li><li>Then get a Registration License for Xamarin.Forms apps.<\/li><li>Finally, add this license to the&nbsp;<strong>App()<\/strong>&nbsp;constructor method of&nbsp;<strong>App.xaml.cs<\/strong>&nbsp;class as follows.<\/li><\/ol>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-csharp\">public App()\n{\n    Syncfusion.Licensing.SyncfusionLicenseProvider.RegisterLicense(&quot;YOUR REGISTER LICENCE&quot;);\n    InitializeComponent();\n    MainPage = new AppShell();\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 2 \u2013 Launching the Syncfusion.Xamarin.SfChart on Each Platform<\/h2>\n\n\n\n<p>To use the SfChart plugin in Xamarin, you must launch it on a platform specific. So, after installing the plugin, you cannot use it directly.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Android<\/h3>\n\n\n\n<p>The Android platform does not require any additional configuration to render the chart.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">iOS<\/h3>\n\n\n\n<p>To launch the SfChart plugin on the iOS platform, <\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Go to the AppDelegate.cs class. <\/li><li>Then call the <strong>Init()<\/strong> method inside the <strong>FinishedLaunching()<\/strong> method. As follows. Thus, every time the AppDelegate class launch, the SfChart plugin will also initialize.<\/li><\/ol>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-csharp\">{ \n    \u2026 \n    global::Xamarin.Forms.Forms.Init();\n\n    Syncfusion.SfChart.XForms.iOS.Renderers.SfChartRenderer.Init();\n\n    LoadApplication(new App()); \n    \u2026\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 3 &#8211; Populating Data for SfChart<\/h2>\n\n\n\n<p>In this step, I will apply the <a href=\"https:\/\/serkanseker.com\/xamarin-forms-mvvm-pattern\/\" target=\"_blank\" rel=\"noreferrer noopener\">MVVM model<\/a> to the sample project and get the data from the <a href=\"https:\/\/serkanseker.com\/xamarin-forms-openweathermap-rest-api\/\" target=\"_blank\" rel=\"noreferrer noopener\">OpenWeatherMap API<\/a> and put it in a List.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Model Class<\/h2>\n\n\n\n<p>You need a model class to get weather data. I followed this path to fully implement the MVVM architecture. Click the handle to the project and create a new folder named <strong>Models<\/strong> and create the <strong>FiveDayThreeHours.cs<\/strong> class inside this folder.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-csharp\">    public class Main\n    {\n        public double temp { get; set; }\n        public double feels_like { get; set; }\n        public double temp_min { get; set; }\n        public double temp_max { get; set; }\n        public int pressure { get; set; }\n        public int sea_level { get; set; }\n        public int grnd_level { get; set; }\n        public int humidity { get; set; }\n        public double temp_kf { get; set; }\n    }\n    public class Weather\n    {\n        public int id { get; set; }\n        public string main { get; set; }\n        public string description { get; set; }\n        public string icon { get; set; }\n    }\n    public class Clouds\n    {\n        public int all { get; set; }\n    }\n    public class Wind\n    {\n        public double speed { get; set; }\n        public int deg { get; set; }\n    }\n    public class Sys\n    {\n        public string pod { get; set; }\n    }\n    public class List\n    {\n        public int dt { get; set; }\n        public Main main { get; set; }\n        public IList&lt;Weather&gt; weather { get; set; }\n        public Clouds clouds { get; set; }\n        public Wind wind { get; set; }\n        public int visibility { get; set; }\n        public double pop { get; set; }\n        public Sys sys { get; set; }\n        public string dt_txt { get; set; }\n    }\n    public class Coord\n    {\n        public double lat { get; set; }\n        public double lon { get; set; }\n    }\n    public class City\n    {\n        public int id { get; set; }\n        public string name { get; set; }\n        public Coord coord { get; set; }\n        public string country { get; set; }\n        public int population { get; set; }\n        public int timezone { get; set; }\n        public int sunrise { get; set; }\n        public int sunset { get; set; }\n    }\n    public class FiveDayThreeHours\n    {\n        public string cod { get; set; }\n        public int message { get; set; }\n        public int cnt { get; set; }\n        public IList&lt;List&gt; list { get; set; }\n        public City city { get; set; }\n    }<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Weather Services<\/h2>\n\n\n\n<p>In my <a href=\"https:\/\/serkanseker.com\/xamarin-using-weather-api\/\" target=\"_blank\" rel=\"noreferrer noopener\">Using Weather API in Xamarin<\/a> article, I explained how to get the data from the API. I will not touch this issue again here.<\/p>\n\n\n\n<p>Right click on the project and create a folder named <strong>Services<\/strong> and create the <strong>WeatherAPI.cs<\/strong> class within this folder.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-csharp\">    class WeatherAPI\n    {\n        public const string OPENWEATHERMAP_API_KEY = &quot;YOUR API KEY HERE&quot;;\n        public const string BASE_URL = &quot;https:\/\/api.openweathermap.org\/data\/2.5\/forecast?q={0}&amp;appid={1}&amp;units=metric&quot;;\n        public static async Task&lt;FiveDayThreeHours&gt; GetFiveDaysAsync(string query)\n        {\n            FiveDayThreeHours weather = new FiveDayThreeHours();\n            string url = String.Format(BASE_URL, query, OPENWEATHERMAP_API_KEY);\n            HttpClient httpClient = new HttpClient();\n            var response = await httpClient.GetAsync(url);\n            if (response.IsSuccessStatusCode)\n            {\n                var content = await response.Content.ReadAsStringAsync();\n                var posts = JsonConvert.DeserializeObject&lt;FiveDayThreeHours&gt;(content);\n                weather = posts;\n            }\n            return weather;\n        }\n    }<\/code><\/pre>\n\n\n\n<p>Now that we have the data, we have to process them in the ViewModel class.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">ViewModel Class<\/h2>\n\n\n\n<p>Right click on the project and create a folder named <strong>ViewModels<\/strong> and a class <strong>WeatherViewModel.cs<\/strong> inside that folder.<\/p>\n\n\n\n<p>Let&#8217;s take the weather data of Istanbul from the service and try to show the first 7 of these data on the Chart. Here I used the IList and List data structures. With the for loop, we put the temperature and the felt temperature into the List.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-csharp\">    public class WeatherViewModel : INotifyPropertyChanged\n    {\n        private IList&lt;FiveDayThreeHours&gt; _weatherList;\n        public IList&lt;FiveDayThreeHours&gt; WeatherList\n        {\n            get\n            {\n                if (_weatherList == null)\n                    _weatherList = new ObservableCollection&lt;FiveDayThreeHours&gt;();\n                return _weatherList;\n            }\n            set\n            {\n                _weatherList = value;\n                OnPropertyChanged();\n            }\n        }\n        public event PropertyChangedEventHandler PropertyChanged;\n        private List&lt;Main&gt; weekList { get; set; }\n        public List&lt;Main&gt; WeekList\n        {\n            get\n            {\n                return weekList;\n            }\n\n            set\n            {\n                if (value != weekList)\n                {\n                    weekList = value;\n                    OnPropertyChanged();\n                }\n            }\n        }\n        protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)\n        {\n            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));\n        }\n        public WeatherViewModel()\n        {\n            Task.Run(SelectedCityAsync);\n        }\n        private async Task SelectedCityAsync()\n        {\n            var weather = await WeatherAPI.GetFiveDaysAsync(&quot;Istanbul&quot;);\n            WeatherList.Add(weather);\n\n            List&lt;Main&gt; week = new List&lt;Main&gt;();\n            for (int i = 0; i &lt; 5; i++)\n            {\n                week.Add(new Main\n                {\n                    temp = weather.list[i].main.temp,\n                    feels_like = weather.list[i].main.feels_like\n                });\n            }\n            WeekList = week;\n        }\n    }<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">SfChart View<\/h2>\n\n\n\n<p>Right click on the project and create a folder named <strong>Views<\/strong> and a class <strong>WeatherPage.xaml<\/strong> inside that folder.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-markup\">    &lt;ContentPage.BindingContext&gt;\n\t    &lt;local:WeatherViewModel&gt;&lt;\/local:WeatherViewModel&gt;\n    &lt;\/ContentPage.BindingContext&gt;\n&lt;ScrollView&gt; \n        &lt;StackLayout&gt;\n            &lt;StackLayout&gt;\n                &lt;pancakeview:PancakeView Grid.Row=&quot;1&quot;  BackgroundColor=&quot;#f9f9f9&quot; HeightRequest=&quot;400&quot; WidthRequest=&quot;400&quot; CornerRadius=&quot;20&quot; HasShadow=&quot;True&quot;&gt;\n                    &lt;chart:SfChart x:Name=&quot;Chart&quot; HorizontalOptions=&quot;Fill&quot; VerticalOptions=&quot;Fill&quot;&gt;\n                        &lt;chart:SfChart.Legend&gt;\n                            &lt;chart:ChartLegend \/&gt;\n                        &lt;\/chart:SfChart.Legend&gt;\n                        &lt;chart:SfChart.Title&gt;\n                            &lt;chart:ChartTitle Text=&quot;5 Day Forecast&quot; FontAttributes=&quot;Bold&quot; FontSize=&quot;15&quot;\/&gt;\n                        &lt;\/chart:SfChart.Title&gt;\n                        &lt;chart:SfChart.PrimaryAxis&gt;\n                            &lt;chart:CategoryAxis&gt;\n                                &lt;chart:CategoryAxis.Title&gt;\n                                    &lt;chart:ChartAxisTitle Text=&quot;Temp (\u00b0C)&quot;\/&gt;\n                                &lt;\/chart:CategoryAxis.Title&gt;\n                            &lt;\/chart:CategoryAxis&gt;\n                        &lt;\/chart:SfChart.PrimaryAxis&gt;\n                        &lt;chart:SfChart.SecondaryAxis&gt;\n                            &lt;chart:NumericalAxis&gt;\n                                &lt;chart:NumericalAxis.Title&gt;\n                                    &lt;chart:ChartAxisTitle Text=&quot;Temp (\u00b0C)&quot;\/&gt;\n                                &lt;\/chart:NumericalAxis.Title&gt;\n                            &lt;\/chart:NumericalAxis&gt;\n                        &lt;\/chart:SfChart.SecondaryAxis&gt;\n                        &lt;chart:SfChart.Series&gt;\n                            &lt;chart:ColumnSeries ItemsSource=&quot;{Binding WeekList}&quot; Label=&quot;Temperature&quot; XBindingPath=&quot;temp&quot; YBindingPath=&quot;temp&quot; EnableTooltip=&quot;True&quot;&gt;\n                            &lt;\/chart:ColumnSeries&gt;\n                            &lt;chart:ColumnSeries ItemsSource=&quot;{Binding WeekList}&quot; Label=&quot;Feels Like&quot; XBindingPath=&quot;temp&quot; YBindingPath=&quot;feels_like&quot; EnableTooltip=&quot;True&quot;&gt;\n                            &lt;\/chart:ColumnSeries&gt;\n                        &lt;\/chart:SfChart.Series&gt;\n                    &lt;\/chart:SfChart&gt;\n                &lt;\/pancakeview:PancakeView&gt;\n        &lt;\/StackLayout&gt;\n&lt;\/ScrollView&gt;<\/code><\/pre>\n\n\n\n<p>Don&#8217;t forget to add the required namespaces after pasting the codes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>Everything is ok. You can now run the application and see how it looks.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/serkanseker.com\/wp-content\/uploads\/2020\/08\/Syncfusion.Xamarin.SfChart-Plugin.gif\" alt=\"Syncfusion.Xamarin.SfChart Plugin Screenshot\" class=\"wp-image-516\" width=\"264\" height=\"540\"\/><\/figure><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Related Links<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/serkanseker.com\/best-nuget-packages\/\" target=\"_blank\" rel=\"noreferrer noopener\">Best NuGet Packages<\/a><\/li><li><a href=\"https:\/\/serkanseker.com\/xamarin-forms-mvvm-pattern\/\" target=\"_blank\" rel=\"noreferrer noopener\">Xamarin.Forms MVVM Pattern<\/a><\/li><li><a href=\"https:\/\/serkanseker.com\/xamarin-forms-openweathermap-rest-api\/\" target=\"_blank\" rel=\"noreferrer noopener\">Xamarin.Forms OpenWeatherMap REST API<\/a><\/li><li><a href=\"https:\/\/serkanseker.com\/install-and-manage-nuget-packages\/\" target=\"_blank\" rel=\"noreferrer noopener\">Install and Manage NuGet Packages<\/a><\/li><li><a href=\"https:\/\/serkanseker.com\/syncfusion-community-license-key\/\" target=\"_blank\" rel=\"noreferrer noopener\">Syncfusion Community License Key<\/a><\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Presenting data on graphs is a good solution to increase the user experience in the applications you develop. So you get more readable and visually beautiful views. Make sure that the end user is more satisfied with using the application. This satisfaction brings more users. Isn&#8217;t that the point of a developer anyway?<\/p>\n","protected":false},"author":1,"featured_media":206,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","footnotes":""},"categories":[572,21,39],"tags":[14,570,28,4,5],"class_list":["post-510","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-nuget","category-xamarin","category-xamarin-forms","tag-design","tag-nuget","tag-syncfusion","tag-xamarin","tag-xamarin-forms"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Xamarin.Forms Visualize Data SfChart Plugin - Serkan Seker TR<\/title>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Xamarin.Forms Visualize Data SfChart Plugin - Serkan Seker TR\" \/>\n<meta property=\"og:description\" content=\"Presenting data on graphs is a good solution to increase the user experience in the applications you develop. So you get more readable and visually beautiful views. Make sure that the end user is more satisfied with using the application. This satisfaction brings more users. Isn&#039;t that the point of a developer anyway?\" \/>\n<meta property=\"og:url\" content=\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/\" \/>\n<meta property=\"og:site_name\" content=\"Serkan Seker TR\" \/>\n<meta property=\"article:published_time\" content=\"2020-08-05T19:32:12+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-01-18T06:44:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Visualize-Your-Data-With-SfChart.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1\" \/>\n\t<meta property=\"og:image:height\" content=\"1\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"serkanadmin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"serkanadmin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/\"},\"author\":{\"name\":\"serkanadmin\",\"@id\":\"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/841fcc69b248e08e52c4190963caeaf5\"},\"headline\":\"Xamarin.Forms Visualize Data SfChart Plugin\",\"datePublished\":\"2020-08-05T19:32:12+00:00\",\"dateModified\":\"2021-01-18T06:44:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/\"},\"wordCount\":758,\"commentCount\":1,\"image\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Visualize-Your-Data-With-SfChart.jpg\",\"keywords\":[\"design\",\"NuGet\",\"syncfusion\",\"xamarin\",\"xamarin.forms\"],\"articleSection\":[\"NuGet\",\"Xamarin\",\"Xamarin.Forms\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/\",\"url\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/\",\"name\":\"Xamarin.Forms Visualize Data SfChart Plugin - Serkan Seker TR\",\"isPartOf\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Visualize-Your-Data-With-SfChart.jpg\",\"datePublished\":\"2020-08-05T19:32:12+00:00\",\"dateModified\":\"2021-01-18T06:44:45+00:00\",\"author\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/841fcc69b248e08e52c4190963caeaf5\"},\"breadcrumb\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#primaryimage\",\"url\":\"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Visualize-Your-Data-With-SfChart.jpg\",\"contentUrl\":\"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Visualize-Your-Data-With-SfChart.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/serkanseker.com\/tr\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Xamarin.Forms Visualize Data SfChart Plugin\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/serkanseker.com\/tr\/#website\",\"url\":\"https:\/\/serkanseker.com\/tr\/\",\"name\":\"Serkan Seker TR\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/serkanseker.com\/tr\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/841fcc69b248e08e52c4190963caeaf5\",\"name\":\"serkanadmin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/93ddc1f96117bf468976afe93a077eda77de96bcdb48dc749903598a546786a3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/93ddc1f96117bf468976afe93a077eda77de96bcdb48dc749903598a546786a3?s=96&d=mm&r=g\",\"caption\":\"serkanadmin\"},\"sameAs\":[\"https:\/\/serkanseker.com\"],\"url\":\"https:\/\/serkanseker.com\/tr\/author\/serkanadmin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Xamarin.Forms Visualize Data SfChart Plugin - Serkan Seker TR","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"en_US","og_type":"article","og_title":"Xamarin.Forms Visualize Data SfChart Plugin - Serkan Seker TR","og_description":"Presenting data on graphs is a good solution to increase the user experience in the applications you develop. So you get more readable and visually beautiful views. Make sure that the end user is more satisfied with using the application. This satisfaction brings more users. Isn't that the point of a developer anyway?","og_url":"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/","og_site_name":"Serkan Seker TR","article_published_time":"2020-08-05T19:32:12+00:00","article_modified_time":"2021-01-18T06:44:45+00:00","og_image":[{"url":"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Visualize-Your-Data-With-SfChart.jpg","width":1,"height":1,"type":"image\/jpeg"}],"author":"serkanadmin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"serkanadmin","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#article","isPartOf":{"@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/"},"author":{"name":"serkanadmin","@id":"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/841fcc69b248e08e52c4190963caeaf5"},"headline":"Xamarin.Forms Visualize Data SfChart Plugin","datePublished":"2020-08-05T19:32:12+00:00","dateModified":"2021-01-18T06:44:45+00:00","mainEntityOfPage":{"@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/"},"wordCount":758,"commentCount":1,"image":{"@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#primaryimage"},"thumbnailUrl":"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Visualize-Your-Data-With-SfChart.jpg","keywords":["design","NuGet","syncfusion","xamarin","xamarin.forms"],"articleSection":["NuGet","Xamarin","Xamarin.Forms"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/","url":"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/","name":"Xamarin.Forms Visualize Data SfChart Plugin - Serkan Seker TR","isPartOf":{"@id":"https:\/\/serkanseker.com\/tr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#primaryimage"},"image":{"@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#primaryimage"},"thumbnailUrl":"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Visualize-Your-Data-With-SfChart.jpg","datePublished":"2020-08-05T19:32:12+00:00","dateModified":"2021-01-18T06:44:45+00:00","author":{"@id":"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/841fcc69b248e08e52c4190963caeaf5"},"breadcrumb":{"@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#primaryimage","url":"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Visualize-Your-Data-With-SfChart.jpg","contentUrl":"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Visualize-Your-Data-With-SfChart.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-visualize-data-sfchart-plugin\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/serkanseker.com\/tr\/"},{"@type":"ListItem","position":2,"name":"Xamarin.Forms Visualize Data SfChart Plugin"}]},{"@type":"WebSite","@id":"https:\/\/serkanseker.com\/tr\/#website","url":"https:\/\/serkanseker.com\/tr\/","name":"Serkan Seker TR","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/serkanseker.com\/tr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/841fcc69b248e08e52c4190963caeaf5","name":"serkanadmin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/93ddc1f96117bf468976afe93a077eda77de96bcdb48dc749903598a546786a3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/93ddc1f96117bf468976afe93a077eda77de96bcdb48dc749903598a546786a3?s=96&d=mm&r=g","caption":"serkanadmin"},"sameAs":["https:\/\/serkanseker.com"],"url":"https:\/\/serkanseker.com\/tr\/author\/serkanadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/posts\/510","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/comments?post=510"}],"version-history":[{"count":0,"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/posts\/510\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/media\/206"}],"wp:attachment":[{"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/media?parent=510"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/categories?post=510"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/tags?post=510"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}