C# Oxyplot Plotmodel High AxisTickLabel不能完全读取多个Y轴

C# Oxyplot Plotmodel High AxisTickLabel不能完全读取多个Y轴,c#,wpf,oxyplot,C#,Wpf,Oxyplot,我正在尝试调整到Y轴之间的距离,以便用户可以读取整个AxisTickLabel。 有我可以使用的财产或东西吗 我的PlotModel如下所示: C#: Plot=新的PlotModel { 填充=新厚度(0), DefaultColors=新列表 { 色位, 色速度, 色加速 }, LegenOrientation=LegenOrientation.垂直, LegendPlacement=LegendPlacement.Inside, LegendPosition=LegendPosition.

我正在尝试调整到Y轴之间的距离,以便用户可以读取整个AxisTickLabel。 有我可以使用的财产或东西吗

我的PlotModel如下所示:

C#:

Plot=新的PlotModel
{
填充=新厚度(0),
DefaultColors=新列表
{
色位,
色速度,
色加速
},
LegenOrientation=LegenOrientation.垂直,
LegendPlacement=LegendPlacement.Inside,
LegendPosition=LegendPosition.TopRight,
LegendBackground=OxyColor.FromAColor(200,OxyColor.White),
LegendBorder=OxyColor.黑色,
PlotType=PlotType.XY
};
//亚克斯
_axisPosition=新的线性Axis
{
AxislineColor=颜色位置,
TicklineColor=颜色位置,
text颜色=颜色位置,
AxisTickToLabelInstance=0,
位置=轴位置。左,
Key=“位置”
};
Plot.Axes.Add(_axisPosition);
_seriesPosition=新的线条系列
{
Title=(字符串)converter.Convert(新对象[]{“”,“MotionProfilePosition”},null,null,CultureInfo.CurrentCulture)+“[”+UnitItemPosition.ToString()+“]”,
YAxisKey=“位置”
};
Plot.Series.Add(_seriesPosition);
_axisVelocity=新的线性轴
{
AxislineColor=色速度,
TicklineColor=色速度,
AxisTickToLabelInstance=0,
位置=轴位置。左,
text颜色=色速度,
Key=“速度”
};
Plot.Axes.Add(_axisVelocity);
_seriesVelocity=新的线条系列
{
Title=(字符串)converter.Convert(新对象[]{“”,“MotionProfileVelocity”},null,null,CultureInfo.CurrentCulture)+“[”+UnitItemVelocity.ToString()+”,
YAxisKey=“速度”
};
Plot.Series.Add(_seriesVelocity);
_轴加速度=新直线轴
{
AxislineColor=颜色加速度,
text颜色=颜色加速度,
AxisTickToLabelInstance=0,
位置=轴位置。左,
Key=“加速”
};
Plot.Axes.Add(_轴加速度);
_系列加速=新系列
{
Title=(字符串)converter.Convert(新对象[]{“”,“MotionProfileAcceleration”},null,null,CultureInfo.CurrentCulture)+“[”+UnitItemAcceleration.ToString()+”,
YAxisKey=“加速”
};
绘图系列添加(_系列加速);
//XAxis
_axisTime=新的LinearAxis
{
位置=轴位置。底部,
Key=“time”,
单位=单位时间
};
Plot.Axes.Add(_axisTime);
XAML:


运动轮廓
运动轮廓
麦塞尔运动
运动轮廓仪
作为用户,您可以从给定的3个轴中选择要查看的轴。 对于更高的TickLabelValue>1000,值到达下一个Y轴时很难读取

PositionTier是您要查找的属性。以下是我用来创建该图像的代码:

        PlotModel = new PlotModel();

        PlotModel.Axes.Add(new LinearAxis
        {
            Position = AxisPosition.Left,
            Title = "First",
            Minimum = 0,
            Maximum = 10000
        }) ;

        PlotModel.Axes.Add(new LinearAxis
        {
            Position = AxisPosition.Left,
            Title = "Second",
            Minimum = 0,
            Maximum = 10000,
            PositionTier = 1
        });

        PlotModel.Axes.Add(new LinearAxis
        {
            Position = AxisPosition.Left,
            Title = "Third",
            Minimum = 0,
            Maximum = 10000,
            PositionTier = 2
        });

        PlotModel.Axes.Add(new LinearAxis
        {
            Position = AxisPosition.Bottom,
            Title = "x"
        });
    <oxy:PlotView Grid.Row="0" Margin="0,0,0,15" Model="{Binding Plot, UpdateSourceTrigger=PropertyChanged, Mode=OneWay}" Tag="{Binding Path=DataContext, ElementName=MotionControlMain}" Controller="{Binding Controller, UpdateSourceTrigger=PropertyChanged, Mode=OneWay}" >
      <oxy:PlotView.ContextMenu>
        <ContextMenu DataContext="{Binding PlacementTarget.Tag, RelativeSource={RelativeSource Self}}">
          <MenuItem IsCheckable="True" Command="{Binding UpdatePlotCommand}"
                                  IsChecked="{Binding DisplayPosition}" 
                                  Foreground="{Binding ColorPosition, Converter={StaticResource OxyColorConverter}}">
            <MenuItem.Header>
              <MultiBinding Converter="{StaticResource LangConverter}">
                <Binding Path="SelectedLanguage" Mode="OneWay"/>
                <Binding>
                  <Binding.Source>MotionProfileMItemPos</Binding.Source>
                </Binding>
              </MultiBinding>
            </MenuItem.Header>
          </MenuItem>
          <MenuItem  IsCheckable="True" Command="{Binding UpdatePlotCommand}"
                                  IsChecked="{Binding DisplayVelocity}"
                                  Foreground="{Binding ColorVelocity, Converter={StaticResource OxyColorConverter}}">
            <MenuItem.Header>
              <MultiBinding Converter="{StaticResource LangConverter}">
                <Binding Path="SelectedLanguage" Mode="OneWay"/>
                <Binding>
                  <Binding.Source>MotionProfileMItemVelo</Binding.Source>
                </Binding>
              </MultiBinding>
            </MenuItem.Header>
          </MenuItem>
          <MenuItem  IsCheckable="True" Command="{Binding UpdatePlotCommand}"
                                  IsChecked="{Binding DisplayAcceleration}"
                                  Foreground="{Binding ColorAcceleration, Converter={StaticResource OxyColorConverter}}">
            <MenuItem.Header>
              <MultiBinding Converter="{StaticResource LangConverter}">
                <Binding Path="SelectedLanguage" Mode="OneWay"/>
                <Binding>
                  <Binding.Source>MotionProfileMItemAccel</Binding.Source>
                </Binding>
              </MultiBinding>
            </MenuItem.Header>
          </MenuItem>
          <MenuItem  IsCheckable="True" Command="{Binding UpdatePlotCommand}"
                                  IsChecked="{Binding DisplayJerk}" 
                                  Foreground="{Binding ColorJerk, Converter={StaticResource OxyColorConverter}}">
            
          <Separator/>
          <MenuItem Command="{Binding ResetPlotCommand}">
            <MenuItem.Header>
              <MultiBinding Converter="{StaticResource LangConverter}">
                <Binding Path="SelectedLanguage" Mode="OneWay"/>
                <Binding>
                  <Binding.Source>MotionProfileMItemReset</Binding.Source>
                </Binding>
              </MultiBinding>
            </MenuItem.Header>
          </MenuItem>
        </ContextMenu>
      </oxy:PlotView.ContextMenu>
    </oxy:PlotView>
        PlotModel = new PlotModel();

        PlotModel.Axes.Add(new LinearAxis
        {
            Position = AxisPosition.Left,
            Title = "First",
            Minimum = 0,
            Maximum = 10000
        }) ;

        PlotModel.Axes.Add(new LinearAxis
        {
            Position = AxisPosition.Left,
            Title = "Second",
            Minimum = 0,
            Maximum = 10000,
            PositionTier = 1
        });

        PlotModel.Axes.Add(new LinearAxis
        {
            Position = AxisPosition.Left,
            Title = "Third",
            Minimum = 0,
            Maximum = 10000,
            PositionTier = 2
        });

        PlotModel.Axes.Add(new LinearAxis
        {
            Position = AxisPosition.Bottom,
            Title = "x"
        });