Avalonia学习(十五)-OxyPlot

今天开始继续Avalonia练习。展示一些样例,尤其是第三方库的使用。

本节:OxyPlot

1.引入OxyPlot.Avalonia

2.项目引入

在Main方法里增加OxyPlotModule.EnsureLoaded()方法调用。

public static void Main(string[] args)
{OxyPlotModule.EnsureLoaded();AppBuilder.Configure<App>().UsePlatformDetect().StartWithClassicDesktopLifetime(args);
}

在App.xaml文件中增加样式引用。

<Application xmlns="https://github.com/avaloniaui"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"x:Class="OxyPlotAvalonia.App"xmlns:local="using:OxyPlotAvalonia"RequestedThemeVariant="Default"><!-- "Default" ThemeVariant follows system theme variant. "Dark" or "Light" are other available options. --><Application.DataTemplates><local:ViewLocator/></Application.DataTemplates><Application.Styles><FluentTheme /><StyleInclude Source="avares://OxyPlot.Avalonia/Themes/Default.axaml"/></Application.Styles>
</Application>

前台代码

<Window xmlns="https://github.com/avaloniaui"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:vm="using:OxyPlotAvalonia.ViewModels"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"xmlns:oxy="clr-namespace:OxyPlot.Avalonia;assembly=OxyPlot.Avalonia" mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"x:Class="OxyPlotAvalonia.Views.MainWindow"x:DataType="vm:MainWindowViewModel"Icon="/Assets/avalonia-logo.ico"Title="OxyPlotAvalonia"><Design.DataContext><!-- This only sets the DataContext for the previewer in an IDE,to set the actual DataContext for runtime, set the DataContext property in code (look at App.axaml.cs) --><vm:MainWindowViewModel/></Design.DataContext><oxy:PlotView Model="{Binding Model}" /><!--<TextBlock Text="{Binding Greeting}" HorizontalAlignment="Center" VerticalAlignment="Center"/>--></Window>

后台代码

using OxyPlot;
using OxyPlot.Series;
using System.Collections.Generic;namespace OxyPlotAvalonia.ViewModels
{public class MainWindowViewModel : ViewModelBase{
#pragma warning disable CA1822 // Mark members as staticpublic string Greeting => "Welcome to Avalonia!";
#pragma warning restore CA1822 // Mark members as staticpublic PlotModel Model { get; private set; }public MainWindowViewModel(){//   OxyPlot.Avalonia.PlotView plotView=new OxyPlot.Avalonia.PlotView();//   plotView.Model = Model;// Create the plot modelvar tmp = new PlotModel { Title = "Simple example", Subtitle = "using OxyPlot" };// OxyPlot.Series.Series series=new  // Create two line series (markers are hidden by default)var series1 = new LineSeries { Title = "Series 1", MarkerType = MarkerType.Circle };List<DataPoint> points = new List<OxyPlot.DataPoint>();points.Add(new DataPoint(0, 0));points.Add(new DataPoint(10, 18));points.Add(new DataPoint(20, 12));points.Add(new DataPoint(30, 8));points.Add(new DataPoint(40, 15));series1.ItemsSource = points;var series2 = new LineSeries { Title = "Series 2", MarkerType = MarkerType.Square };List<DataPoint> points1 = new List<OxyPlot.DataPoint>();points.Add(new DataPoint(0, 0));points.Add(new DataPoint(10, 18));points.Add(new DataPoint(20, 12));points.Add(new DataPoint(30, 8));points.Add(new DataPoint(40, 15));points1.Add(new DataPoint(0, 4));points1.Add(new DataPoint(10, 12));points1.Add(new DataPoint(20, 16));points1.Add(new DataPoint(30, 25));points1.Add(new DataPoint(40, 5));// Add the series to the plot model// tmp.Series.Add(series1);// tmp.Series.Add(series2);tmp.Series.Add(series1);this.Model = tmp;}}
}

运行效果

经过测试,最新版Avalonia11.0.6会报错,Oxyplot.Avalonia没有对应更新,你要直接用最新Avalonia,可以引入Oxyplot.AvaloniaCore包测试。

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

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

相关文章

C++八股文 002:常函数

在编程领域&#xff0c;常函数是指那些不会修改类的任何成员的函数。 换句话说&#xff0c;常函数只能用于访问类的成员&#xff0c;而不能用于修改它们。 常函数通常使用const关键字进行定义和实现&#xff0c;这样可以确保函数不会对类的成员进行任何修改。这种机制可以帮助…

R语言【base】——sep()是用于设置输出多个值之间的分隔符的函数

R语言自带的sep()函数是用于设置输出多个值之间的分隔符的函数。它可以在将结果打印或写入文件时&#xff0c;控制多个值之间的间隔样式。 通常情况下&#xff0c;在R语言中打印多个值时&#xff0c;默认的分隔符是空格。但使用sep()函数&#xff0c;我们可以将分隔符修改为任…

最新解决msvcr100.dll丢失的方法,多种解决方法详细解析

msvcr100.dll丢失会导致某些程序或游戏无法正常运行&#xff0c;msvcr100.dll是Microsoft Visual C 2010的运行时组件&#xff0c;它包含了许多C标准库的函数实现。这些函数在程序运行时被调用&#xff0c;用于处理各种任务&#xff0c;如字符串操作、数学计算、文件操作等。因…

rancher 手册

官方 https://www.rancher.com/https://github.com/rancher/rancherhttps://docs.rke2.io/ rancher kubernetesl yaml deploy rancher serverHelm Deploy Online Rancher DemoHelm & Kubernetes Offline Deploy Rancher v2.7.5 Demohelm upgrade rancher server from v2…

算法(3)——二分查找

一、什么是二分查找 二分查找也称折半查找&#xff0c;是在一组有序(升序/降序)的数据中查找一个元素&#xff0c;它是一种效率较高的查找方法。 二、二分查找的原理 1、查找的目标数据元素必须是有序的。没有顺序的数据&#xff0c;二分法就失去意义。 2、数据元素通常是数值…

中文版大模型 Token 成本计算器

分享一个轻量的小工具&#xff0c;10MB 左右&#xff0c;能够帮助你直观的了解大模型 Token 的计算方法。 希望能够帮助到想了解或者正在规划模型 API 使用成本的你。 写在前面 之所以折腾这个小工具&#xff0c;是因为有朋友和我提问&#xff0c;大模型 API 的 Token 到底是…

【2023Hadoop大数据技术应用期末复习】填空题题型整理

大数据的 4V 特征包含&#xff08;&#xff09;&#xff08;&#xff09;&#xff08;&#xff09;&#xff08;&#xff09; 答案&#xff1a;大量、多样、高速、价值Hadoop 三大组件包含&#xff08;&#xff09;&#xff08;&#xff09;&#xff08;&#xff09; 答案&…

基于ssm的房屋租赁管理系统

功能介绍 房源信息模块&#xff1a; 房源信息展示、房源信息更新、房源信息增加、房源信息删除 账户管理模块&#xff1a; 账户登录、账户绑定、账户管理 租金结算模块&#xff1a; 每月租金信息、租金交付功能、月租金收入总额统计 房屋租赁合同管理模块&#xff1a; 房屋租赁…

【深度解析C++之运算符重载】

系列文章目录 &#x1f308;座右铭&#x1f308;&#xff1a;人的一生这么长、你凭什么用短短的几年去衡量自己的一生&#xff01; &#x1f495;个人主页:清灵白羽 漾情天殇_计算机底层原理,深度解析C,自顶向下看Java-CSDN博客 ❤️相关文章❤️&#xff1a;【深度解析C之this…

OpenGauss 之索引查找和匹配

一. 前言 本文主要通过走读OpenGuass的代码&#xff0c;来了解查询的时候OpenGuass是如何查找表的索引信息以及根据谓词条件过滤掉无用的索引信息的。 二. 索引路径匹配流程 1. 首先OpenGuass在build_simple_rel的时候&#xff0c;首先将一个表以及与他相关的索引都加到rel-&g…

培养自己的兴趣爱好,没有必要迎合他人。

问题描述&#xff1a;日常生活中&#xff0c;如何让自己开心。重要的一点就是培养自己的兴趣爱好&#xff0c;没有必要迎合他人。首先就要真正清楚自己“喜欢的兴趣爱好”是什么&#xff0c;“不喜欢的兴趣爱好”是什么。 问题解答&#xff1a; “不喜欢的兴趣爱好”&#xf…

DSL查询语法和RestClient查询文档

目录 DSL查询语法 DLS Query的分类 DSL Query基本语法 全文检索查询 精准查询 地理查询 复合查询 Function Score Query 复合查询 Boolean Query 搜索结果处理 排序 分页 分页 深度分页问题 深度分也解决方案 高亮 RestClient查询文档 快速入门 全文检索查…

MK米客方德品牌 SD NAND在对讲机领域的引领作用

SD NAND在对讲机上的应用 SD NAND在对讲机上广泛应用&#xff0c;为其提供了高效可靠的存储解决方案。 这种存储技术不仅能容纳大量语音和数据文件&#xff0c;而且具有高速读取的特点&#xff0c;保障了实时通信的质量。SD NAND还注重安全性&#xff0c;通过数据加密和访问控…

C++自学笔记005:移动语义

C自学笔记005&#xff1a;移动语义 学习移动语义之前要先了解一下RVO机制 RVO机制 RVO&#xff08;Return Value Optimization&#xff09;是一种编译器优化机制&#xff1a;当函数需要返回一个对象的时候&#xff0c;如果自己创建一个临时对象返回&#xff0c;那么这个临时…

解锁React魔法门:高效项目开发工作流揭秘

你好&#xff0c;我是坚持分享干货的 EarlGrey&#xff0c;翻译出版过《Python编程无师自通》、《Python并行计算手册》等技术书籍。 如果我的分享对你有帮助&#xff0c;请关注我&#xff0c;一起向上进击。 创作不易&#xff0c;希望大家给一点鼓励&#xff0c;把公众号设置为…

【QT】qt中多线程的使用

前景&#xff1a; C#中的多线程举例 private Thread threadDownLoadParameter;threadDownLoadParameter new Thread(new ThreadStart(parameterInterface.downParameterLoadData)); //parameterInterface 实例对象&#xff0c;downParameterLoadData 方法threadDownLoadParame…

OSCHINA Gitee 联合呈现,《2023 中国开源开发者报告》正式发布,总结分非常帮,可以免费看的报告!

《2023 中国开源开发者报告》 详细地址&#xff1a; https://talk.gitee.com/report/china-open-source-2023-annual-report.pdf 不需要收费下载&#xff01;&#xff01; 其中大模型的部分总结的非常棒 gietee 也支持 AI 模型托管了 如何在 Gitee 上托管 AI 模型 https://…

Flink-1.17集群部署

1、部署 1.1、修改flink-conf.yaml 1.1.1、flink-17 jobmanager.rpc.address: boshi-122 jobmanager.rpc.port: 6123 # 设置jobmanager总内存 jobmanager.memory.process.size: 2048m # 设置taskmanager的运行总内存 taskmanager.memory.process.size: 4096mb # 设置用户代码…

【java爬虫】使用element-plus进行个股详细数据分页展示

前言 前面的文章我们讲述了获取详细个股数据的方法&#xff0c;并且使用echarts对个股的价格走势图进行了展示&#xff0c;本文将编写一个页面&#xff0c;对个股详细数据进行展示。别问涉及到了element-plus中分页的写法&#xff0c;对于这部分知识将会做重点讲解。 首先看一…

Autosar MCAL-RH850P1HC Dio配置

文章目录 DioDioGeneralDioCriticalSectionProtectionDioDevErrorDetectDioDeviceNameDioFlipChannelApiDioMaskedWritePortApiDioUseWriteVerifyErrorInterfaceDioVersionCheckExternalModulesDioVersionInfoApiDioWriteVerifyDioWriteVerifyErrorInterface DioPortP0-P9DioPo…