Как я могу нарисовать серовую область на диаграмме (допустимый диапазон сигнала)?
Я использую классы Winforms и стандартные классы Microsoft System.Windows.Forms.DataVisualization
.
Это должен быть настраиваемый диапазон, означающий, что начальная точка Y может быть не только нулевой.
Точки, которые я получаю онлайн, во время выполнения, один за другим.Winforms Chart - нарисовать разрешенную область на линейной диаграмме
UPDATE:
Я попытался полосковой - это нормально, но я не знаю, как определить начальную точку в 2d. Его можно установить только на X или только на Y. Я попытался использовать второй график (Area), но это не то, что мне нужно ...
UPDATE2:
Благодаря @Reza Aghaei !!!
Вот код, который отлично работает:
void drawAllowedArea(Point startPoint, Point endPoint, PaintEventArgs e)
{
var l = (float)chart1.ChartAreas[0].AxisX.ValueToPixelPosition(startPoint.X);
var t = (float)chart1.ChartAreas[0].AxisY.ValueToPixelPosition(endPoint.Y);
var r = (float)chart1.ChartAreas[0].AxisX.ValueToPixelPosition(endPoint.X);
var b = (float)chart1.ChartAreas[0].AxisY.ValueToPixelPosition(startPoint.Y);
var rect = RectangleF.FromLTRB(l, t, r, b);
using (var br = new SolidBrush(Color.FromArgb(100, Color.Blue)))
{
e.Graphics.FillRectangle(br, rect.X, rect.Y, rect.Width, rect.Height);
}
e.Graphics.DrawRectangle(Pens.Red, rect.X, rect.Y, rect.Width, rect.Height);
}
//and use this function in chart1_Paint event:
void chart1_Paint(object sender, PaintEventArgs e)
{
drawAllowedArea(new Point(20, 50000), new Point(40, 100000), e);
}
КОНЕЦ UPDATE ----------------------------- ----------------------------
Спасибо большое!
Я пробовал StripLine - это нормально, но я не знаю, как определить начальную точку в 2d. Его можно установить только на X или только на Y. Я попытался использовать второй график (Area), но это не то, что мне нужно ... Кроме того, (я добавлю его на вопрос) он должен быть видимым во время выполнения - я получаю очки онлайн, один за другим. –
[Stripline] (http://stackoverflow.com/questions/38958646/winforms-chart-how-to-enable-background-color-gauge/38959173?s=6|0.1465#38959173) также будет работать так же, как и Rectangleannotation , Но рисунок часто достаточно хорош. – TaW