C#小结:ScottPlot 5.0在VS2022桌面开发的应用(以winform为例)

目录

一、官网文档地址 

二、在VS2022中安装Scottplot

三、拖动Scottplot

四、使用Scottplot

五、效果图

一、官网文档地址 

官网地址:ScottPlot 5.0 食谱

本文内容来自于官网,选取了官网的一些比较好用的功能展示,如需学习更多功能,请访问以上的官网链接。谢谢。 

二、在VS2022中安装Scottplot

由于我用的是winforms,所以下载下图红框框winforms版本的(此时我的VS2022框架是.NET8,虽然下图支持到.NET6,但是可以照常使用,第一个我试过下载用不了,因此选择红框那个ScottPlot.Winforms即可

三、拖动Scottplot

下载成功后工具箱会自动更新该控件,我们此时可以创建一个窗体,点击视图-工具箱,找到下图红框的这个控件并且拖动进去

四、使用Scottplot

分别演示柱折线图、柱状图、饼图的应用

//以下是一个代码示例

private void Form3_Load(object sender, EventArgs e)

 {

//一、折线图

     var plot1 = formsPlot1.Plot;

     double[] xs = { 1,2,3};

     double[] ys = { 1, 4, 9 };

     var style1 = plot1.Add.Scatter(xs, ys);

     style1.Color = Colors.Green.WithOpacity(.2);//绿色,透明度0.2

     style1.LineWidth = 5;//线宽5

     style1.MarkerSize = 15; //标记点大小是15

     style1.Label = "Scatter Plot"; // 添加图例

     plot1.Style.SetFont("宋体");//图像设置宋体字样

     plot1.Legend.Font.Name = "宋体";//图例设置宋体字样

     plot1.Title("Title我是中文");

     plot1.Add.Text("人为标记点",1,1);//在坐标x=1 y=1上标注字符串

     plot1.HideGrid();//隐藏网格线

     plot1.XLabel("x");

     plot1.YLabel("y");

     plot1.ShowLegend();//展示图例

     plot1.Axes.SetLimits(-5, 10, -3, 12);//x轴范围-5到10,y轴范围-3,12

     //plot1.SavePng("C:\\Users\\ASUS\\Pictures\\Saved Pictures\\abc.png", 400, 300);//保存图片

     //Tick[] ticks1 =

     //{

     //    new(1, "Group 1"),//x轴位置设置标签

     //    new(2, "Group 2"),

     //    new(3, "Group 3"),

     //};

     //plot1.Axes.Bottom.TickGenerator = new ScottPlot.TickGenerators.NumericManual(ticks1);//x轴位置设置标签

     //plot1.Axes.Margins(bottom: 0);//柱形图贴着X轴



//二、柱状图

     var plot2 = formsPlot2.Plot;

     //double[] values = { 5, 10, 7, 13 };

     //var style2 = plot2.Add.Bars(values);

     ScottPlot.Bar[] bars =

     {

         new() { Position = 1, Value = 5, ValueBase = 3, FillColor = Colors.Red },

         new() { Position = 2, Value = 7, ValueBase = 0, FillColor = Colors.Blue },

         new() { Position = 4, Value = 3, ValueBase = 2, FillColor = Colors.Green },

     };

     plot2.Add.Bars(bars);

     Tick[] ticks =

     {

         new(1, "Group 1"),//x轴位置设置标签

         new(2, "Group 2"),

         new(4, "Group 3"),

     };

     plot2.Axes.Bottom.TickGenerator = new ScottPlot.TickGenerators.NumericManual(ticks);//x轴位置设置标签

     plot2.Axes.Margins(bottom: 0);//柱形图贴着X轴


//三、饼图
     var plot3 = formsPlot3.Plot;

     PieSlice slice1 = new() { Value = 5, FillColor = Colors.Red, Label = "Red"};

     PieSlice slice2 = new() { Value = 2, FillColor = Colors.Orange, Label = "Orange" };

     PieSlice slice3 = new() { Value = 8, FillColor = Colors.Gold, Label = "Yellow" };

     PieSlice slice4 = new() { Value = 4, FillColor = Colors.Green, Label = "Green" };

     PieSlice slice5 = new() { Value = 8, FillColor = Colors.Blue, Label = "Blue" };

     List<PieSlice> slices = new() { slice1, slice2, slice3, slice4, slice5 };

     // 将饼图的数据添加到 plot3 中,并设置一些显示选项

     var pie = plot3.Add.Pie(slices);

     pie.ExplodeFraction = .1; // 设置饼图中的某个扇形稍微偏离饼图中心

     pie.ShowSliceLabels = true; // 显示扇形标签

     pie.SliceLabelDistance = 1.1; // 设置扇形标签的距离

     plot3.ShowLegend();//展示图例

 }

五、效果图

六、其余拓展

【随机颜色的饼图】

【饼图随机色】
#region 岗位饼图
var plot1 = formsPlot_post.Plot;
List<PieSlice> slices = new List<PieSlice>();
Random random = new Random();
foreach (var kvp in dic_post)//dic_post是一个字典,存储着键值对信息
{
    string hexColor = String.Format("#{0:X6}", random.Next(0x1000000)); // 生成随机的十六进制颜色代码

    PieSlice slice = new PieSlice
    {
        Value = (int)kvp.Value,//饼图赋值
        FillColor = ScottPlot.Color.FromHex(hexColor),//颜色随机生成
        Label = $"{kvp.Key}:{kvp.Value}"//键值对标签
    };
    slices.Add(slice);
}

// 将饼图的数据添加到 plot1中,并设置一些显示选项
var pie = plot1.Add.Pie(slices);
pie.ExplodeFraction = .1; // 设置饼图中的某个扇形稍微偏离饼图中心
pie.ShowSliceLabels = true; // 显示扇形标签
pie.SliceLabelDistance = 1.1; // 设置扇形标签的距离
#endregion

  • 20
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 15
    评论
在使用C编程语言时,首先需要了解C语言的基本语法和规则。C语言是一种结构化的编程语言,是目前应用广泛的编程语言之一。 在编写C程序时,需要使用文本编辑器创建一个扩展名为.c的源文件,在该文件中可以编写C语言的代码。C语言的代码由一个或多个函数组成,一个C程序至少包含一个名为main()的主函数。 在编码过程中,需要使用C语言的关键字、数据类型、变量、运算符和控制语句等基本的语法元素。C语言支持多种基本数据类型,包括整型、浮点型、字符型和指针等。在声明变量时,需要指定变量的类型,并且可以为变量赋初值。 C语言提供了丰富的运算符用于进行算术运算、逻辑运算和位运算等。运算符的使用可以实现各种计算和逻辑操作。同时,C语言还提供了各种控制语句,如if语句、循环语句和switch语句等,用于实现程序的选择执行和重复执行。 在编写C程序时,还可以使用库函数来扩展程序的功能。C语言标准库提供了很多常用的函数,如输入输出函数、数学函数和字符串函数等。通过调用这些函数,可以简化程序的编写过程,并提高程序的效率。 编写完成后,需要使用C语言的编译器将源文件编译成可执行文件。编译器将源代码翻译成机器语言,并且进行一些优化处理。编译成功后,可以运行可执行文件,验证程序的功能。 总之,使用C编程语言需要掌握C语言的基本语法和规则,熟悉关键字、数据类型、运算符和控制语句等基本元素,理解库函数的使用,并且掌握编译和运行C程序的过程。通过不断的学习和实践,可以提高自己的C编程能力。
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值