在Oxyplot中使用0交叉点进行故障缩放

时间:2014-09-19 08:13:25

标签: wpf oxyplot

[编辑:我提交了有关此on the OxyPlot GitHub]

的问题

我在带有一些FunctionSeries的WPF窗口中有一个OxyPlot笛卡尔图。当我为两个轴设置 PositionAtZeroCrossing at true 时,会出现几个问题:

1)标题显示不正确,甚至没有出现。更改TitlePosition的值似乎没有任何改变。

2)当放大或移动时,x轴会超出图形区域,如下所示: screenshot

当PositionAtZeroCrossing未设置为true时,不会出现这两个问题。

我想知道是否有正确的方法来解决这些问题或解决方法(我不熟悉OxyPlot)。

//My PlotModel is binded to the Model of a PlotView in my WPF control.

//FonctionQlimPlim, maxX, maxY, minX and maxY are defined elsewhere
PlotModel plot = new PlotModel() 
{
    PlotType = PlotType.Cartesian
};

plot.Axes.Add(new LinearAxis()
{
    Position = AxisPosition.Bottom,
    Minimum = minX,
    Maximum = maxX,
    Title = "Q (kVAR)",
    PositionAtZeroCrossing = true 
});

plot.Axes.Add(new LinearAxis()
{
    Position = AxisPosition.Left,
    Minimum = minY,
    Maximum = maxY,
    Title = "P (kW)",
    PositionAtZeroCrossing = true
});

//One of the FunctionSeries
var f = FonctionQlimPlim;
f.Color = OxyColors.Red;
plot.Series.Add(f);

2 个答案:

答案 0 :(得分:1)

这个属性的用法似乎如下:

我们假设您的输入是x(水平),y(垂直)图。 我们假设您的x值从1变为20,并且假设您的y值是-10和{{1}之间的随机数}。

所以,我们期待看到一个20点随机上下跳动的图表。

当你设置轴10时,你告诉PositionAtZeroCrossing把它放在交叉点所在的位置。这里有一些屏幕截图可以帮助您:Link to bigger image

Screenshots

所以,根据零点的位置,它可能远离你的可视屏幕,因此似乎不存在。

说实话,我没有看到将僵尸程序设置为true的重点,但我认为它可能符合某些需求。

答案 1 :(得分:0)

这是一个错误traced here,已于2014年10月修复。