将两个 y 轴分配给 oxyplot 中的两个线系列(C# WPF)

Hen*_*_er 4 c# wpf axis axes oxyplot

我已经搜索了很多关于这个问题的答案,但我只找到了与 Windows Forms 而不是 WPF 相关的旧答案。文档中没有提到任何内容。

我有两个使用oxyplot绘制的线系列。但是,我无法将每个系列分配给一个单独的轴(由于比例不同,我需要两个)。

在发现的示例中,有人指出应该将key="somename"分配给轴定义,并将YAxisKey="somename"分配给线系列。但是,我收到一条错误消息,指出这些属性不存在。任何帮助是极大的赞赏。请参阅下面附加的 xaml 代码

<Wpf:Plot    
    DockPanel.Dock="Bottom"
    x:Name="OxyPlot1" 
    Title="{Binding Title}" Height="400" Margin="0,0,0,0">

    <Wpf:Plot.Axes>        
        <Wpf:LinearAxis
            x:Name="Psiaxis" Position="Left" Title="Pressure (PSI)"
            TickStyle="Inside" StartPosition="0"/>
        <Wpf:LinearAxis
            x:Name="Gpmaxis" Position="Right" Title="Flow In (GPM)"
            TickStyle="Inside" StartPosition="0"/>
        <Wpf:DateTimeAxis
            Position="Bottom" TickStyle="Inside" IntervalType="Seconds" 
            MinorGridlineStyle="Dash" MajorGridlineStyle="Solid"
            StringFormat="dd:MM:yyyy HH:mm:ss"/>
        </Wpf:Plot.Axes>

        <Wpf:LineSeries 
            x:Name="SelectedPointsPressure"
            Height="100" 
            Width="100" 
            Title="Pressure (psi)"
            ItemsSource="{Binding ToPlotPoints1}"/>

        <Wpf:LineSeries
            x:Name="RegressionPoints"
            Height="100"
            Width="100"
            LineStyle="Solid"
            Color="Blue"
            Title="Linear least squares fit"
            ItemsSource="{Binding ToPlotPoints2}"/>

        <Wpf:LineSeries 
            x:Name="SelectedPointsFlowin"
            Height="100" 
            Width="100" 
            LineStyle="Solid"
            Color="Green"
            Title="Flow In (gpm)"
            ItemsSource="{Binding ToPlotPoints3}"/>
    </Wpf:Plot>
Run Code Online (Sandbox Code Playgroud)

rra*_*ski 5

您必须为每个 Y 轴定义关键属性。

<oxyWpf:LinearAxis x:Name="Psiaxis" Position="Left" 
        Title="Pressure (PSI)" TickStyle="Inside" StartPosition="0"  Key="Psiaxis"   />
Run Code Online (Sandbox Code Playgroud)

多亏了你可以设置YAxisKey

<oxyWpf:LineSeries
        x:Name="RegressionPoints"
        Height="100"
            YAxisKey="Psiaxis"
        Width="100"
        LineStyle="Solid"
        Color="Blue"
        Title="Linear least squares fit"
        ItemsSource="{Binding PointsSeries2}"/>
Run Code Online (Sandbox Code Playgroud)