C# 当值不同(非常高和非常低)时,如何在同一图表上看到图表上的2个系列

C# 当值不同(非常高和非常低)时,如何在同一图表上看到图表上的2个系列,c#,.net,winforms,graph,charts,C#,.net,Winforms,Graph,Charts,我使用Telerik定义了2个系列,它们表示我的网络通信速率MBit/sec和Packet/sec: 我的图表通过计时器接收实时数据: private void timerStatistics_Tick(object sender, EventArgs e) { try { if (series.DataPoints.Count > 40) series.DataPoints.RemoveAt(0); series.D

我使用Telerik定义了2个系列,它们表示我的网络通信速率MBit/sec和Packet/sec:

我的图表通过计时器接收实时数据:

private void timerStatistics_Tick(object sender, EventArgs e)
{
    try
    {
        if (series.DataPoints.Count > 40)
            series.DataPoints.RemoveAt(0);
        series.DataPoints.Add(new Telerik.Charting.CategoricalDataPoint(AdapterStatistics.BitsPerSecond * 0.000001));

        if (series2.DataPoints.Count > 40)
            series2.DataPoints.RemoveAt(0);
        series2.DataPoints.Add(new Telerik.Charting.CategoricalDataPoint(AdapterStatistics.PacketsPerSecond));

    }
    catch (Exception)
    { }
} 
我的问题是,因为我的2个值非常不同,我只能看到一个序列,通常是Packet/sec,因为例如MBit/sec得到值1.4,Packet/sec得到值200,所以从我的图表中,我可以看到最大的值,最低值太小,以至于看不见。在红色矩形内看到我的屏幕截图,一条非常小的蓝线…:


如何修复它?

不确定它如何应用于Telerik控件,但在常规图表控件中,您可以有2个x轴和2个y轴,并指定不同的系列以使用不同的轴。因此,您可以执行以下操作:

series.YAxisType = AxisType.Primary;
series2.YAxisType = AxisType.Secondary;
Axis yaxis1 = chart.ChartAreas[0].AxisY;
Axis yaxis2 = chart.ChartAreas[0].AxisY2;
yaxis1.Maximum = 1e6;
yaxis2.Maximum = 1e3;
看起来使用Telerik控件非常相似,直接取自Telerik网站:


在这种情况下,两条线之间仍然存在很大的差异,因此其中一条几乎不可见,这正是多轴的作用,所以我不知道为什么它不起作用。你能发布你的更新代码,显示我的实现,和更新的屏幕截图吗?
series.YAxisType = AxisType.Primary;
series2.YAxisType = AxisType.Secondary;
Axis yaxis1 = chart.ChartAreas[0].AxisY;
Axis yaxis2 = chart.ChartAreas[0].AxisY2;
yaxis1.Maximum = 1e6;
yaxis2.Maximum = 1e3;
LinearAxis verticalAxis1 = new LinearAxis();
verticalAxis1.AxisType = AxisType.Second;
LinearAxis verticalAxis2 = new LinearAxis();
verticalAxis2.AxisType = AxisType.Second;
verticalAxis2.HorizontalLocation = AxisHorizontalLocation.Right;

series.HorizontalAxis = horizontalAxis;
series.VerticalAxis = verticalAxis1;


series2.HorizontalAxis = horizontalAxis;
series2.VerticalAxis = verticalAxis2;