C# 如何使用OxyPlot在Xamarin.Forms便携应用程序中创建图表?
大家好。我正在创建一个Xamarin.Forms便携应用程序,我想在那里显示一个使用OxyPlot的图表 但是我在互联网上找到的代码似乎并不好用。我只是想问一下,我将如何创建一个图表,特别是OxyPlot中的饼图。从我的XAML到XAML.cs以及其他文件,如model和viewmodel 你能不能给我一些说明或者代码,也许我该怎么做 我想在我的销售页面中对图表进行编码 SalesPage.xamlC# 如何使用OxyPlot在Xamarin.Forms便携应用程序中创建图表?,c#,xamarin,xamarin.forms,pie-chart,oxyplot,C#,Xamarin,Xamarin.forms,Pie Chart,Oxyplot,大家好。我正在创建一个Xamarin.Forms便携应用程序,我想在那里显示一个使用OxyPlot的图表 但是我在互联网上找到的代码似乎并不好用。我只是想问一下,我将如何创建一个图表,特别是OxyPlot中的饼图。从我的XAML到XAML.cs以及其他文件,如model和viewmodel 你能不能给我一些说明或者代码,也许我该怎么做 我想在我的销售页面中对图表进行编码 SalesPage.xaml SalesPage.xaml.cs using System; using System.C
SalesPage.xaml.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using OxyPlot;
using Xamarin.Forms;
using OxyPlot.Xamarin.Forms;
namespace XamarinFormsDemo.Views
{
public partial class SalesPage : ContentPage
{
public SalesPage()
{
InitializeComponent();
}
}
}
using System;
using Android.App;
using Android.Content.PM;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;
using ImageCircle.Forms.Plugin.Droid;
namespace XamarinFormsDemo.Droid
{
[Activity(Label = "XamarinFormsDemo", Icon = "@drawable/recordsicon", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsApplicationActivity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
global::Xamarin.Forms.Forms.Init(this, bundle);
OxyPlot.Xamarin.Forms.Platform.Android.PlotViewRenderer.Init();
LoadApplication(new App());
ImageCircleRenderer.Init();
}
}
}
MainActivity.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using OxyPlot;
using Xamarin.Forms;
using OxyPlot.Xamarin.Forms;
namespace XamarinFormsDemo.Views
{
public partial class SalesPage : ContentPage
{
public SalesPage()
{
InitializeComponent();
}
}
}
using System;
using Android.App;
using Android.Content.PM;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;
using ImageCircle.Forms.Plugin.Droid;
namespace XamarinFormsDemo.Droid
{
[Activity(Label = "XamarinFormsDemo", Icon = "@drawable/recordsicon", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsApplicationActivity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
global::Xamarin.Forms.Forms.Init(this, bundle);
OxyPlot.Xamarin.Forms.Platform.Android.PlotViewRenderer.Init();
LoadApplication(new App());
ImageCircleRenderer.Init();
}
}
}
这实际上是我第一次创建图表,所以请帮助我。谢谢你的帮助 有一个Oxy Plot和Xamarin.Forms的入门指南。要回答您的问题,您可以执行以下操作:
有更多关于系列的文档和一些在互联网上使用它的示例。例如:
private static PlotModel CreateExample()
{
var model = new PlotModel { Title = "World population by continent" };
var ps = new PieSeries
{
StrokeThickness = 2.0,
InsideLabelPosition = 0.8,
AngleSpan = 360,
StartAngle = 0
};
// http://www.nationsonline.org/oneworld/world_population.htm
// http://en.wikipedia.org/wiki/Continent
ps.Slices.Add(new PieSlice("Africa", 1030) { IsExploded = true });
ps.Slices.Add(new PieSlice("Americas", 929) { IsExploded = true });
ps.Slices.Add(new PieSlice("Asia", 4157));
ps.Slices.Add(new PieSlice("Europe", 739) { IsExploded = true });
ps.Slices.Add(new PieSlice("Oceania", 35) { IsExploded = true });
model.Series.Add(ps);
return model;
}
在你的问题上加上c#标记,让代码有点颜色。@Kirenenko好的,先生。谢谢,谢谢,先生。但是您提供的链接仅在一个文件中?Pieseries示例仅用于示例?我应该把它放在哪里?那是模型吗?我应该在.XAML文件中编写什么代码?先生,我应该把代码放在上面的什么地方?在模型中还是在代码隐藏中?我应该在.xaml文件中放什么?非常感谢先生。先生,我应该把代码放在哪里?在模型中还是在代码隐藏中?我应该在.xaml文件中放什么?非常感谢,先生。