├── .gitattributes
├── .gitignore
├── Icons
└── OxyPlot_128.png
├── LICENSE
├── README.md
├── Source
├── Directory.Build.props
├── Examples
│ └── Avalonia
│ │ ├── AvaloniaExamples
│ │ ├── App.axaml
│ │ ├── App.axaml.cs
│ │ ├── AvaloniaExamples.csproj
│ │ ├── AvaloniaExamples.csproj.DotSettings
│ │ ├── DelegateCommand.cs
│ │ ├── Example.cs
│ │ ├── ExampleAttribute.cs
│ │ ├── Examples
│ │ │ ├── AlignedAxesDemo
│ │ │ │ ├── MainWindow.xaml
│ │ │ │ └── MainWindow.xaml.cs
│ │ │ ├── AnimationsDemo
│ │ │ │ ├── Controls
│ │ │ │ │ ├── AnimationSettingsControl.axaml
│ │ │ │ │ └── AnimationSettingsControl.axaml.cs
│ │ │ │ ├── EasingFunctions
│ │ │ │ │ ├── BackEase.cs
│ │ │ │ │ ├── BounceEase.cs
│ │ │ │ │ ├── CircleEase.cs
│ │ │ │ │ ├── Interfaces
│ │ │ │ │ │ └── IEasingFunction.cs
│ │ │ │ │ ├── NoEase.cs
│ │ │ │ │ ├── PowerEase.cs
│ │ │ │ │ ├── QuadraticEase.cs
│ │ │ │ │ ├── QuarticEase.cs
│ │ │ │ │ ├── QuinticEase.cs
│ │ │ │ │ └── SineEase.cs
│ │ │ │ ├── Extensions
│ │ │ │ │ ├── AnimationExtensions.cs
│ │ │ │ │ ├── AnimationExtensions.datapointseries.cs
│ │ │ │ │ ├── AnimationExtensions.linearbarseries.cs
│ │ │ │ │ └── AnimationExtensions.lineseries.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ ├── MainWindow.axaml.cs
│ │ │ │ ├── Models
│ │ │ │ │ ├── AnimationFrame.cs
│ │ │ │ │ ├── AnimationPoint.cs
│ │ │ │ │ ├── AnimationSettings.cs
│ │ │ │ │ ├── Interfaces
│ │ │ │ │ │ └── IAnimatablePoint.cs
│ │ │ │ │ └── Pnl.cs
│ │ │ │ ├── ViewModels
│ │ │ │ │ ├── AnimationViewModelBase.cs
│ │ │ │ │ ├── AreaSeriesViewModel.cs
│ │ │ │ │ ├── Interfaces
│ │ │ │ │ │ └── IAnimationViewModel.cs
│ │ │ │ │ ├── LineSeriesViewModel.cs
│ │ │ │ │ └── LinearBarViewModel.cs
│ │ │ │ └── Views
│ │ │ │ │ ├── AreaSeriesView.axaml
│ │ │ │ │ ├── AreaSeriesView.axaml.cs
│ │ │ │ │ ├── LineSeriesView.axaml
│ │ │ │ │ ├── LineSeriesView.axaml.cs
│ │ │ │ │ ├── LinearBarView.axaml
│ │ │ │ │ └── LinearBarView.axaml.cs
│ │ │ ├── AnnotationDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── AreaDemo
│ │ │ │ ├── MainViewModel.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── AxesDemo
│ │ │ │ ├── MainViewModel.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── BarSeriesDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── BindingDemo
│ │ │ │ ├── MainViewModel.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ ├── MainWindow.axaml.cs
│ │ │ │ └── Measurement.cs
│ │ │ ├── BindingObservableCollectionDemo
│ │ │ │ ├── MainViewModel.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── BoxPlotSeriesDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── ColorBindingDemo
│ │ │ │ ├── MainViewModel.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── ContextMenuDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── ContourDemo
│ │ │ │ ├── MainViewModel.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── ControllerDemo
│ │ │ │ ├── CustomPlotController.cs
│ │ │ │ ├── MainViewModel.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── CoupledAxesDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── CustomTrackerDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── DataTemplateDemo
│ │ │ │ ├── PlotViewDataTemplateWindow.axaml
│ │ │ │ └── PlotViewDataTemplateWindow.axaml.cs
│ │ │ ├── DateTimeDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ ├── MainWindow.axaml.cs
│ │ │ │ └── Sun.cs
│ │ │ ├── HeatMapDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── LegendsDemo
│ │ │ │ ├── MainViewModel.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── LinearBarSeriesDemo
│ │ │ │ ├── MainViewModel.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── OverlayDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── PerformanceDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── PieDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── PolarDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── RealtimeDemo
│ │ │ │ ├── MainViewModel.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── ScatterDemo
│ │ │ │ ├── Fern.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── ScatterErrorSeriesDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── ScrollViewerDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── TaskDemo
│ │ │ │ ├── MainViewModel.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── ToolTipDemo
│ │ │ │ ├── MainViewModel.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ ├── TwoColorAreaDemo
│ │ │ │ ├── MainViewModel.cs
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ └── MainWindow.axaml.cs
│ │ │ └── UserControlDemo
│ │ │ │ ├── MainWindow.axaml
│ │ │ │ ├── MainWindow.axaml.cs
│ │ │ │ ├── MainWindow2.axaml
│ │ │ │ ├── MainWindow2.axaml.cs
│ │ │ │ ├── MainWindow3.axaml
│ │ │ │ ├── MainWindow3.axaml.cs
│ │ │ │ ├── UserControl1.axaml
│ │ │ │ ├── UserControl1.axaml.cs
│ │ │ │ └── ViewModel.cs
│ │ ├── Images
│ │ │ ├── AlignedAxesDemo.png
│ │ │ ├── AnimationsDemo.png
│ │ │ ├── AnnotationDemo.png
│ │ │ ├── AreaDemo.png
│ │ │ ├── AxesDemo.png
│ │ │ ├── BarSeriesDemo.png
│ │ │ ├── BindingDemo.png
│ │ │ ├── BindingObservableCollectionDemo.png
│ │ │ ├── BoxPlotSeriesDemo.png
│ │ │ ├── ColorBindingDemo.png
│ │ │ ├── ColumnSeriesDemo.png
│ │ │ ├── ContextMenuDemo.png
│ │ │ ├── ContourDemo.png
│ │ │ ├── ControllerDemo.png
│ │ │ ├── CoupledAxesDemo.png
│ │ │ ├── CsvDemo.png
│ │ │ ├── CustomTrackerDemo.png
│ │ │ ├── DataTemplateDemo.png
│ │ │ ├── DateTimeDemo.png
│ │ │ ├── HeatMapDemo.png
│ │ │ ├── HistogramDemo.png
│ │ │ ├── LegendsDemo.png
│ │ │ ├── LinearBarSeriesDemo.png
│ │ │ ├── OverlayDemo.png
│ │ │ ├── PerformanceDemo.png
│ │ │ ├── PieDemo.png
│ │ │ ├── PlotModelAlreadyInUse.png
│ │ │ ├── PolarDemo.png
│ │ │ ├── RealtimeDemo.png
│ │ │ ├── RefreshDemo.png
│ │ │ ├── ResizeDemo.png
│ │ │ ├── ScatterDemo.png
│ │ │ ├── ScatterErrorSeriesDemo.png
│ │ │ ├── ScrollViewerDemo.png
│ │ │ ├── TaskDemo.png
│ │ │ ├── ToolTipDemo.png
│ │ │ ├── TwoColorAreaDemo.png
│ │ │ └── UserControlDemo.png
│ │ ├── MainWindow.axaml
│ │ ├── MainWindow.axaml.cs
│ │ ├── NotifyPropertyChangedBase.cs
│ │ └── ReadMe.txt
│ │ ├── ExampleBrowser
│ │ ├── App.axaml
│ │ ├── App.axaml.cs
│ │ ├── ExampleBrowser.csproj
│ │ ├── MainViewModel.cs
│ │ ├── MainWindow.axaml
│ │ ├── MainWindow.axaml.cs
│ │ └── Program.cs
│ │ ├── MemoryTest
│ │ ├── App.axaml
│ │ ├── App.axaml.cs
│ │ ├── MainWindow.axaml
│ │ ├── MainWindow.axaml.cs
│ │ ├── MemoryTest.csproj
│ │ ├── Window1.axaml
│ │ ├── Window1.axaml.cs
│ │ ├── Window2.axaml
│ │ └── Window2.axaml.cs
│ │ └── SimpleDemo
│ │ ├── App.axaml
│ │ ├── App.axaml.cs
│ │ ├── MainViewModel.cs
│ │ ├── MainWindow.axaml
│ │ ├── MainWindow.axaml.cs
│ │ └── SimpleDemo.csproj
├── OxyPlot.Avalonia.sln
├── OxyPlot.Avalonia.sln.DotSettings
└── OxyPlot.Avalonia
│ ├── Annotations
│ ├── Annotation.cs
│ ├── ArrowAnnotation.cs
│ ├── EllipseAnnotation.cs
│ ├── FunctionAnnotation.cs
│ ├── LineAnnotation.cs
│ ├── PathAnnotation.cs
│ ├── PointAnnotation.cs
│ ├── PolygonAnnotation.cs
│ ├── PolylineAnnotation.cs
│ ├── RectangleAnnotation.cs
│ ├── ShapeAnnotation.cs
│ ├── TextAnnotation.cs
│ └── TextualAnnotation.cs
│ ├── Axes
│ ├── AngleAxis.cs
│ ├── Axis.cs
│ ├── CategoryAxis.cs
│ ├── DateTimeAxis.cs
│ ├── LinearAxis.cs
│ ├── LinearColorAxis.cs
│ ├── LogarithmicAxis.cs
│ ├── MagnitudeAxis.cs
│ └── TimeSpanAxis.cs
│ ├── CanvasRenderContext.cs
│ ├── Converters
│ ├── OxyColorConverter.cs
│ └── ThicknessConverter.cs
│ ├── Extensions
│ └── DataPointExtension.cs
│ ├── IPlot.cs
│ ├── Legends
│ ├── Legend.Properties.cs
│ └── Legend.cs
│ ├── MoreColors.cs
│ ├── NamespaceDoc.cs
│ ├── OxyPlot.Avalonia.csproj
│ ├── OxyPlot.Avalonia.csproj.DotSettings
│ ├── OxyPlotModule.cs
│ ├── Plot.Properties.cs
│ ├── Plot.cs
│ ├── PlotBase.Events.cs
│ ├── PlotBase.Export.cs
│ ├── PlotBase.Properties.cs
│ ├── PlotBase.cs
│ ├── PlotView.cs
│ ├── PngExporter.cs
│ ├── Series
│ ├── AreaSeries.cs
│ ├── BarSeries
│ │ ├── BarSeries.cs
│ │ ├── BarSeriesBase.cs
│ │ ├── BarSeriesBase{T}.cs
│ │ ├── CategorizedSeries.cs
│ │ └── LinearBarSeries.cs
│ ├── BoxPlotSeries.cs
│ ├── DataPointSeries.cs
│ ├── HeatMapSeries.cs
│ ├── ItemsSeries.cs
│ ├── LineSeries.cs
│ ├── PieSeries.cs
│ ├── ScatterErrorSeries.cs
│ ├── ScatterSeries.cs
│ ├── ScatterSeries{T}.cs
│ ├── Series.cs
│ ├── StairStepSeries.cs
│ ├── ThreeColorLineSeries.cs
│ ├── TwoColorAreaSeries.cs
│ ├── TwoColorLineSeries.cs
│ └── XYAxisSeries.cs
│ ├── SvgExporter.cs
│ ├── Themes
│ └── Default.axaml
│ ├── Tracker
│ ├── TrackerControl.cs
│ └── TrackerDefinition.cs
│ └── Utilities
│ └── ConverterExtensions.cs
└── azure-pipelines.yml
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
4 | # Custom for Visual Studio
5 | *.cs diff=csharp
6 | *.sln merge=union
7 | *.csproj merge=union
8 | *.vbproj merge=union
9 | *.fsproj merge=union
10 | *.dbproj merge=union
11 |
12 | # Standard to msysgit
13 | *.doc diff=astextplain
14 | *.DOC diff=astextplain
15 | *.docx diff=astextplain
16 | *.DOCX diff=astextplain
17 | *.dot diff=astextplain
18 | *.DOT diff=astextplain
19 | *.pdf diff=astextplain
20 | *.PDF diff=astextplain
21 | *.rtf diff=astextplain
22 | *.RTF diff=astextplain
23 |
--------------------------------------------------------------------------------
/Icons/OxyPlot_128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oxyplot/oxyplot-avalonia/9913a97d79a75585abd0ee5b417739ac52bca4c6/Icons/OxyPlot_128.png
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2014 OxyPlot contributors
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a
6 | copy of this software and associated documentation files (the
7 | "Software"), to deal in the Software without restriction, including
8 | without limitation the rights to use, copy, modify, merge, publish,
9 | distribute, sublicense, and/or sell copies of the Software, and to
10 | permit persons to whom the Software is furnished to do so, subject to
11 | the following conditions:
12 |
13 | The above copyright notice and this permission notice shall be included
14 | in all copies or substantial portions of the Software.
15 |
16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
17 | OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--------------------------------------------------------------------------------
/Source/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 | 11.0.0
4 | 2.1.2
5 |
6 |
--------------------------------------------------------------------------------
/Source/Examples/Avalonia/AvaloniaExamples/App.axaml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Source/Examples/Avalonia/AvaloniaExamples/App.axaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Avalonia;
3 | using Avalonia.Controls;
4 | using Avalonia.Controls.ApplicationLifetimes;
5 | using Avalonia.Markup.Xaml;
6 | using OxyPlot.Avalonia;
7 |
8 | namespace AvaloniaExamples
9 | {
10 | public class App : Application
11 | {
12 | public override void Initialize()
13 | {
14 | AvaloniaXamlLoader.Load(this);
15 | base.Initialize();
16 | }
17 |
18 | public override void OnFrameworkInitializationCompleted()
19 | {
20 | if (!(ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop))
21 | {
22 | throw new PlatformNotSupportedException();
23 | }
24 |
25 | desktop.MainWindow = new MainWindow();
26 |
27 | base.OnFrameworkInitializationCompleted();
28 | }
29 |
30 | static void Main(string[] args)
31 | {
32 | OxyPlotModule.EnsureLoaded();
33 | AppBuilder.Configure()
34 | .UsePlatformDetect()
35 | #if DEBUG
36 | .LogToTrace()
37 | #endif
38 | .StartWithClassicDesktopLifetime(args);
39 | }
40 |
41 | public static void AttachDevTools(Window window)
42 | {
43 | #if DEBUG
44 | DevToolsExtensions.AttachDevTools(window);
45 | #endif
46 | }
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/Source/Examples/Avalonia/AvaloniaExamples/AvaloniaExamples.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | net8.0
4 | WinExe
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Source/Examples/Avalonia/AvaloniaExamples/AvaloniaExamples.csproj.DotSettings:
--------------------------------------------------------------------------------
1 |
2 | True
3 | True
--------------------------------------------------------------------------------
/Source/Examples/Avalonia/AvaloniaExamples/Example.cs:
--------------------------------------------------------------------------------
1 | // --------------------------------------------------------------------------------------------------------------------
2 | //
3 | // Copyright (c) 2014 OxyPlot contributors
4 | //
5 | // --------------------------------------------------------------------------------------------------------------------
6 |
7 | using System.Linq;
8 | using Avalonia;
9 | using Avalonia.Platform;
10 |
11 | namespace AvaloniaExamples
12 | {
13 | using Avalonia.Media.Imaging;
14 | using System;
15 | using System.Diagnostics;
16 |
17 | public class Example
18 | {
19 | public Example(Type mainWindowType, string title = null, string description = null)
20 | {
21 | this.MainWindowType = mainWindowType;
22 | this.Title = title ?? mainWindowType.Namespace.Split('.').Last();
23 | this.Description = description;
24 | try
25 | {
26 | var uri = new Uri($"avares://{typeof(Example).Assembly.FullName}/Images/" + this.ThumbnailFileName);
27 | var stream = AssetLoader.Open(uri);
28 | this.Thumbnail = new Bitmap(stream);
29 | }
30 | catch (Exception e)
31 | {
32 | Debug.WriteLine(e);
33 | }
34 | }
35 |
36 | public string Title { get; }
37 | public string Description { get; set; }
38 | private Type MainWindowType { get; }
39 |
40 | public Bitmap Thumbnail { get; set; }
41 |
42 | public string ThumbnailFileName
43 | {
44 | get
45 | {
46 | return this.Title + ".png";
47 | }
48 | }
49 |
50 | public override string ToString()
51 | {
52 | return this.Title;
53 | }
54 |
55 | public Avalonia.Controls.Window Create()
56 | {
57 | return Activator.CreateInstance(this.MainWindowType) as Avalonia.Controls.Window;
58 | }
59 | }
60 | }
--------------------------------------------------------------------------------
/Source/Examples/Avalonia/AvaloniaExamples/ExampleAttribute.cs:
--------------------------------------------------------------------------------
1 | // --------------------------------------------------------------------------------------------------------------------
2 | //
3 | // Copyright (c) 2014 OxyPlot contributors
4 | //
5 | // --------------------------------------------------------------------------------------------------------------------
6 |
7 | namespace AvaloniaExamples
8 | {
9 | using System;
10 |
11 | public class ExampleAttribute : Attribute
12 | {
13 | public ExampleAttribute(string description)
14 | : this(null, description)
15 | {
16 | }
17 |
18 | public ExampleAttribute(string title, string description)
19 | {
20 | this.Title = title;
21 | this.Description = description;
22 | }
23 |
24 | public string Title { get; }
25 |
26 | public string Description { get; }
27 | }
28 | }
--------------------------------------------------------------------------------
/Source/Examples/Avalonia/AvaloniaExamples/Examples/AlignedAxesDemo/MainWindow.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
10 |
11 |
12 |
13 | The plot margins are undefined, and the vertical axes should be adjusted to have the same width.
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Source/Examples/Avalonia/AvaloniaExamples/Examples/AlignedAxesDemo/MainWindow.xaml.cs:
--------------------------------------------------------------------------------
1 | // --------------------------------------------------------------------------------------------------------------------
2 | //
3 | // Copyright (c) 2014 OxyPlot contributors
4 | //
5 | //
6 | // Interaction logic for MainWindow.xaml
7 | //
8 | // --------------------------------------------------------------------------------------------------------------------
9 |
10 | namespace AvaloniaExamples.Examples.AlignedAxesDemo
11 | {
12 | using System;
13 |
14 | using OxyPlot;
15 | using OxyPlot.Axes;
16 | using OxyPlot.Series;
17 | using Avalonia;
18 | using AvaloniaExamples;
19 | using Avalonia.Controls;
20 |
21 | ///
22 | /// Interaction logic for MainWindow.xaml
23 | ///
24 | [Example("Aligning plot margins from desired axis widths.")]
25 | public partial class MainWindow : Window
26 | {
27 | ///
28 | /// Initializes a new instance of the class.
29 | ///
30 | public MainWindow()
31 | {
32 | this.InitializeComponent();
33 | var models = new { Model0 = CreatePlotModel(0, 10), Model1 = CreatePlotModel(0, 1e8) };
34 |
35 | // TODO: align the vertical axis size without setting PlotMargins
36 | models.Model0.PlotMargins = models.Model1.PlotMargins = new OxyThickness(70, 40, 20, 20);
37 |
38 | this.DataContext = models;
39 | }
40 |
41 | private void InitializeComponent()
42 | {
43 | Avalonia.Markup.Xaml.AvaloniaXamlLoader.Load(this);
44 | }
45 |
46 | private static PlotModel CreatePlotModel(double min, double max)
47 | {
48 | var model = new PlotModel();
49 | var verticalAxis = new LinearAxis { Position = AxisPosition.Left, Minimum = min, Maximum = max };
50 | model.Axes.Add(verticalAxis);
51 | model.Axes.Add(new LinearAxis { Position = AxisPosition.Bottom });
52 | model.Series.Add(new FunctionSeries(x => Math.Sin(x * Math.PI * 4) * Math.Sin(x * Math.PI * 4) * Math.Sqrt(x) * max, 0, 1, 1000));
53 | return model;
54 | }
55 | }
56 | }
--------------------------------------------------------------------------------
/Source/Examples/Avalonia/AvaloniaExamples/Examples/AnimationsDemo/Controls/AnimationSettingsControl.axaml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/Source/Examples/Avalonia/AvaloniaExamples/Examples/AnimationsDemo/Controls/AnimationSettingsControl.axaml.cs:
--------------------------------------------------------------------------------
1 | // --------------------------------------------------------------------------------------------------------------------
2 | //
3 | // Copyright (c) 2014 OxyPlot contributors
4 | //
5 | // --------------------------------------------------------------------------------------------------------------------
6 |
7 | namespace AvaloniaExamples.Examples.AnimationsDemo.Controls
8 | {
9 | using Avalonia.Controls;
10 |
11 | public partial class AnimationSettingsControl : UserControl
12 | {
13 | public AnimationSettingsControl()
14 | {
15 | this.InitializeComponent();
16 | }
17 |
18 | private void InitializeComponent()
19 | {
20 | Avalonia.Markup.Xaml.AvaloniaXamlLoader.Load(this);
21 | this.FindNameScope().Get