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.hqwc.cn/news/311592.html

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

相关文章

别找了!前端那些好用的网站都在这里了!【文末送书】

&#x1f340;前言 好用的网站千千万万&#xff0c;如果你还发现好用的网站&#xff0c;欢迎在评论区中留言分享&#x1f601;&#xff0c;赠书活动在文末哟&#xff0c;中奖者可以从给出的五本书中任意挑选自己喜欢的那本 文章目录 &#x1f340;前言 &#x1f340;一、渐变…

深度学习 | 注意力机制、自注意力机制

卷积神经网络的思想主要是通过卷积层对图像进行特征提取&#xff0c;从而达到降低计算复杂度的目的&#xff0c;利用的是空间特征信息&#xff1b;循环神级网络主要是对序列数据进行建模&#xff0c;利用的是时间维度的信息。 而第三种 注意力机制 网络&#xff0c;关注的是数据…

认识计算机网络——计算机网络的概念

计算机网络是指将多台计算机通过通信介质连接起来&#xff0c;以便共享资源、交换信息和进行协作的技术体系。在现代社会中&#xff0c;计算机网络已经成为了各个领域的重要基础设施&#xff0c;改变了人们的生活方式和工作方式。本文将介绍计算机网络的基本概念、组成要素和发…

46、激活函数 - Relu 激活

本节介绍一个在神经网络中非常常见的激活函数 - Relu 激活函数。 什么是ReLU激活函数 ReLU 英文名为 Rectified Linear Unit,又称修正线性单元,是一种简单但很有效的激活函数,它的定义如下: 即当输入 x 大于零时,输出等于他自己;当输入小于等于零时,输出为零,下面是re…

OpenCV-Python(29):图像特征

目录 目标 背景介绍 常用特征 应用场景 目标 理解什么是图像特征 为什么图像特征很重要 为什么角点很重要 背景介绍 相信大多数人都玩过拼图游戏吧。首先你们拿到一张图片的一堆碎片&#xff0c;你要做的就是把这些碎片以正确的方式排列起来从而重建这幅图像。问题是&…

操作系统:分页存储管理方式

页式存储管理中&#xff0c;主存空间按页分配&#xff0c;可用一张“位示图”构成主存分配表。假设主存容量为2M字节&#xff0c;页面长度为512字节&#xff0c;若用字长为32位的字作主存分配的“位示图”需要多少个字&#xff1f;如页号从1开始&#xff0c;字号和字内位号&…

centos7.9 TCP 加速

BBR是谷歌开发的新的TCP加速算法&#xff0c;在网络状况不好的服务器上开启TCP的bbr&#xff0c;可以在无需增加任何硬件投入的情况下实现网络加速&#xff0c;并且客户端无需做任何配置&#xff0c;因此使用起来非常的方便。TCP加速对网络状况较好的内网环境&#xff0c;或者大…

竞赛保研 基于大数据的股票量化分析与股价预测系统

文章目录 0 前言1 课题背景2 实现效果3 设计原理QTChartsarma模型预测K-means聚类算法算法实现关键问题说明 4 部分核心代码5 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 基于大数据的股票量化分析与股价预测系统 该项目较为新颖…

Ubuntu20.04配置

新建用户 sudo adduser username给用户sudo权限 新创建的用户没有root权限&#xff0c;我们执行以下命令给用户sudo权限 sudo usermod -a -G adm username sudo usermod -a -G sudo username删除用户 删除用户及用户所有文件&#xff08;/home/username/路径下的所有文件&a…

C语言实验5:结构体

目录 一、实验要求 二、实验原理 1. 普通结构体 1.1 显示声明结构体变量 1.2 直接声明结构体变量 ​编辑 1.3 typedef在结构体中的作用 2. 结构体的嵌套 3. 结构体数组 4. 指向结构体的指针 4.1 静态分配 4.2 动态分配 三、实验内容 1. 学生数据库 代码 截图 …

【pandas_不重复项计数】

听说WPS没有非重复项计数的功能&#xff0c;而office需要添加到数据模型之后&#xff0c;才可以使用该功能。而用pandas&#xff0c;既可以对重复项计数&#xff0c;又可以对非重复项计数。 # 使用提醒: # 1. xbot包提供软件自动化、数据表格、Excel、日志、AI等功能 # 2. pack…

【NTN 卫星通信】Oneweb星座以及Oneweb与Starlink比较

1 什么是OneWeb OneWeb于2012年以WorldVu的名义成立&#xff0c;于2020年开始构建其星座。然而&#xff0c;对于这家英国公司来说&#xff0c;这是一个艰难的旅程&#xff0c;OneWeb于2020年3月宣布破产&#xff0c;并认为covid-19大流行是一个主要因素。OneWeb星座当时仅完成…