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

目录

一、官网文档地址 

二、在VS2022中安装Scottplot

三、拖动Scottplot

四、使用Scottplot

五、效果图

一、官网文档地址 

官网地址:ScottPlot 5.0 食谱

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

二、在VS2022中安装Scottplot

由于我用的是winforms,所以下载下图红框框winforms版本的(此时我的VS2022框架是.NET6,如果你是.NET7以上,应该安装下图所示的第一个)

三、拖动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.2style1.LineWidth = 5;//线宽5style1.MarkerSize = 15; //标记点大小是15style1.Label = "Scatter Plot"; // 添加图例plot1.Style.SetFont("宋体");//设置宋体字样plot1.Title("Title我是中文");plot1.Add.Text("人为标记点",1,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();//展示图例}

五、效果图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/444842.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文教你如何本地搭建Qchan图床网站实现公网远程访问

文章目录 前言1. Qchan网站搭建1.1 Qchan下载和安装1.2 Qchan网页测试1.3 cpolar的安装和注册 2. 本地网页发布2.1 Cpolar云端设置2.2 Cpolar本地设置 3. 公网访问测试总结 前言 图床作为云存储的一项重要应用场景&#xff0c;在大量开发人员的努力下&#xff0c;已经开发出大…

使用Java实现HTTP代理服务器:为你当个“中间人“

在互联网世界里&#xff0c;代理服务器就像是一个"中间人"&#xff0c;帮助客户端和服务器之间传递信息。那么&#xff0c;如果你想用Java实现一个代理服务器&#xff0c;该怎么做呢&#xff1f;下面就带你走进这个有趣的"中间人"世界&#xff01; 首先&a…

基于tidevice实现iOS app自动化使用详解

目录 1、IOS自动化工具概述 2、tidevice工具的原理和使用 2.1、tidevice的原理 2.2、tidevice实现的功能 2.3、tidevice的安装 2.4、tidevice的使用 2.4.1、设备管理 1、查看已连接的设备的列表 2、检测设备连接状态 3、等待设备连接&#xff0c;只要有就连接就结束监…

【2024全网最详细】Google 搜索命令终极指南

&#x1f482; 个人网站:【 海拥】【神级代码资源网站】【办公神器】&#x1f91f; 基于Web端打造的&#xff1a;&#x1f449;轻量化工具创作平台&#x1f485; 想寻找共同学习交流的小伙伴&#xff0c;请点击【全栈技术交流群】 你是否尝试过使用 Google 搜索作为免费的 SEO …

一种轻量分表方案-MyBatis拦截器分表实践|京东零售技术实践

背景 部门内有一些亿级别核心业务表增速非常快&#xff0c;增量日均100W&#xff0c;但线上业务只依赖近一周的数据。随着数据量的迅速增长&#xff0c;慢SQL频发&#xff0c;数据库性能下降&#xff0c;系统稳定性受到严重影响。本篇文章&#xff0c;将分享如何使用MyBatis拦…

Scikit-learn (sklearn)速通 -【莫凡Python学习笔记】

视频教程链接&#xff1a;【莫烦Python】Scikit-learn (sklearn) 优雅地学会机器学习 视频教程代码 scikit-learn官网 莫烦官网学习链接 本人matplotlib、numpy、pandas笔记 1 为什么学习 Scikit learn 也简称 sklearn, 是机器学习领域当中最知名的 python 模块之一. Sk…

数据结构【图的遍历】

数据结构之图 图的类型定义和存储结构图的遍历遍历的定义图的特点图常用的遍历深度优先搜索 DFS&#xff08;DepthFirstSearch&#xff09;算法实现算法效率分析 广度优先搜索 BFS&#xff08;BreadthFirstSearch&#xff09;算法实现算法效率分析 DFS与BFS算法效率比较 图的类…

Unity中开发程序打包发布

添加ESC脚本 使用Unity打包发布的过程中&#xff0c;考虑到打开的程序会处于全屏界面&#xff0c;而此时我们又会有退出全屏的需求&#xff0c;因此需要添加ESC脚本&#xff0c;当我们单击ESC脚本的过程中&#xff0c;退出全屏模式。 在Assets/Scenes下&#xff0c;创建esc.cs…

Qt应用开发(安卓篇)——调用ioctl、socket等C函数

一、前言 在 Qt for Android 中没办法像在嵌入式linux中一样直接使用 ioctl 等底层函数&#xff0c;这是因为因为 Android 平台的安全性和权限限制。 在 Android 中&#xff0c;访问设备硬件和系统资源需要特定的权限&#xff0c;并且需要通过 Android 系统提供的 API 来进行。…

前端开发实战基础——模块

文章目录 概要模块标识符模块依赖模块加载入口 CommonJS语法单例 AMD语法 UMD核心语法 ES6模块化模块标签及定义模块导出和导入命名导出和导入默认导出和导入命名导出和默认导出混用 模块行为 小结 概要 模块化&#xff0c;就是将代码拆分成独立的块&#xff0c;各自在代码块中…

Android Jetpack Compose之底部导航栏的实现

目录 1.概述2. 效果展示3. 代码实现3.1 定义底部导航栏的tab项3.2 整体页面架构搭建3.3 底部导航栏的实现3.4 所有代码 4.总结 1.概述 写过一段Android jetpack compose 界面的小伙伴应该都用过Compose的脚手架Scaffold&#xff0c;利用它我们可以很快的实现一个现代APP的主流…

MySQL窗口函数--lead()函数

lead()函数&#xff1a; 查询当前行向下偏移n行对应的结果 该函数有三个参数&#xff1a;第一个为待查询的参数列名&#xff0c;第二个为向下偏移的位数&#xff0c;第三个参数为超出最下面边界的默认值。 如下代码&#xff1a; 查询向下偏移 2 位的年龄 SELECT user_id,user…