Ich verwende AreaSeries
von OxyPlot
, um vertikale AreaSeries
zu zeichnen.OxyPlot AreaSeries funktioniert nicht horizontal
Ich wenden eine Methode an, die aus einer Liste anderer Farbe AreaSeries
erstellt. Hier ist der Code:
private static void AddTriggerAreaSeries(PlotModel plotModel, int initialPoint, int endingPoint, int index)
{
var seriesArea = new AreaSeries();
seriesArea.Title = "Instruction";
seriesArea.Color = OxyColors.Transparent;
seriesArea.Fill = TriggerColorList[index];
//Draws vertically from bottom to top (0 -> 20)
//j referes to the second axis, the y axis in this case (vertical axis)
//The initial and ending points represent interval limits in which the area series is drawn
for (var j = 0; j < 20; j++)
{
seriesArea.Points.Add(new DataPoint(initalPoint, j));
}
for (var j = 0; j < 20; j++)
{
seriesArea.Points.Add(new DataPoint(endingPoint, j));
}
plotModel.Series.Add(seriesArea);
}
Der Code für vertical series
arbeitet. Wenn ich jedoch versuche, das gleiche horizontal zu zeichnen, wird es nicht aus einem Intervall, das ich gebe, plotten. Hier
ist ein Beispiel für den Code I plotten verwenden, um die AreaSeries horizontally
:
// Basically same code that I used but calling seriesArea.Points.Add(new DataPoint(x, y)) reversed, such that the line goes in the x direction
for (var j = 0; j < 20; j++)
{
seriesArea.Points.Add(new DataPoint(j, initalPoint));
}
for (var j = 0; j < 20; j++)
{
seriesArea.Points.Add(new DataPoint(j, endingPoint));
}
plotModel.Series.Add(seriesArea);
Hier ist ein Bild über das Ergebnis dieses Codes In diesem Beispiel wird die initialPoint=1
und endingPoint=2
. Ich versuche, die interval [1,2]
zu ziehen, statt nur zieht aus interval [0,1]
und für den Endpunkt zieht nur eine Zeile: