将两个 y 轴分配给 oxyplot 中的两个 lineseries (C# WPF)
Assigning two y-axes to two lineseries in oxyplot (C# WPF)
我到处搜索这个问题的答案,但我只找到与 Windows 表单相关的旧答案,而不是 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>
您必须为每个 Y 轴定义键 属性。
<oxyWpf:LinearAxis x:Name="Psiaxis" Position="Left"
Title="Pressure (PSI)" TickStyle="Inside" StartPosition="0" Key="Psiaxis" />
感谢您可以设置 YAxisKey
<oxyWpf:LineSeries
x:Name="RegressionPoints"
Height="100"
YAxisKey="Psiaxis"
Width="100"
LineStyle="Solid"
Color="Blue"
Title="Linear least squares fit"
ItemsSource="{Binding PointsSeries2}"/>
我到处搜索这个问题的答案,但我只找到与 Windows 表单相关的旧答案,而不是 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>
您必须为每个 Y 轴定义键 属性。
<oxyWpf:LinearAxis x:Name="Psiaxis" Position="Left"
Title="Pressure (PSI)" TickStyle="Inside" StartPosition="0" Key="Psiaxis" />
感谢您可以设置 YAxisKey
<oxyWpf:LineSeries
x:Name="RegressionPoints"
Height="100"
YAxisKey="Psiaxis"
Width="100"
LineStyle="Solid"
Color="Blue"
Title="Linear least squares fit"
ItemsSource="{Binding PointsSeries2}"/>