将图形设置为次要Y轴

时间:2019-05-21 20:12:08

标签: c# winforms devexpress

我目前正在使用C#在Winforms上开发应用程序。 我收集数据并将其放入Series。我想从两种类型的数据中绘制两条线,例如,它们都采用(date,someVar)格式。 我似乎无法解决的问题是如何将图形中的一系列点与次要Y轴匹配。 例如-请参见附图-第一个颜色为紫色,第二个颜色为红色。 第一个(紫色)序列的Y轴范围是0到400。 第二(红色)系列的Y轴范围是0到1。

由于两个值之间的差异非常大,因此第二个(红色)序列似乎是一条线。 我认为问题在于两个系列均根据第一个(紫色)系列的主Y轴绘制。 我尝试将第二个(红色)系列设置为第二个Y轴,但是没有用。

欢迎提供有关如何解决此问题的建议:)

Example of the issue

private void setupSeries()
{
arrayOfSeries[0]=new Series(varToDrawFromFirstComboBox,ViewType.Line);
arrayOfSeries[1]=new Series(varToDrawFromSecondComboBox,ViewType.Line);

chartY2.Text=varToDrawFromSecondComboBox
chatrY2.Dock=ChartTitleDockStylle.Right;
chatrY2.Font=...

chartY1.Text=varToDrawFromFirstComboBox
chatrY1.Dock=ChartTitleDockStylle.Left;
chatrY1.Font=....

chartTime.Text="Time"
chatrTime.Dock=ChartTitleDockStylle.Bottom;
chatrTime.Font=....

chart.Titles.AddRange(new ChartTitle[]{chartTime,chartY1,chartY2});
SecondaryAxisY myAxisY=new SecondaryAxisY();

((XYDiagram)chart.Diagram).SecondaryAxisY.Add(myAxisY);

xyDiagram.AxisX.DateTimeScaleOptions.MeasureUnit=DevExpress.XtraCharts.DateTimeMeasureUnit.Seconds;
}

1 个答案:

答案 0 :(得分:0)

要完成图表布局初始化过程,请将新创建的SecondaryAxisY元素分配给第二个Series项目的SeriesView.AxisY属性。

    ((XYDiagram)chart.Diagram).SecondaryAxesY.Add(myAxisY);
    Series s2 = arrayOfSeries[1];
    ((LineSeriesView)s2.View).AxisY = myAxisY;

另请参阅:How to: Add Secondary Axes to a Chart