C# 多个图表上的相同网格设置

C# 多个图表上的相同网格设置,c#,charts,mschart,C#,Charts,Mschart,我试图将两个图表垂直放置在单独的图表(图表A和图表B)上,使其具有相同的网格线。我认为大多数设置都是正确的,但不知怎么的,图表上的网格没有对齐 我在控件属性的位置x(不是y)和宽度上对这些图表进行了相同的设置。对于图形和AxisX的数据,我也有相同的AxisX间隔。对于这两个图表,最小值和最大值都是完全相同的。我相信图表A和图表B的小数点不同,这就是造成此问题的原因(请参见图片左侧的红色框) 我的问题是如何垂直排列 下面是我在C#ASP.NET中的设置 您应该研究路线属性。将绘图创建为单个图表对

我试图将两个图表垂直放置在单独的图表(图表A和图表B)上,使其具有相同的网格线。我认为大多数设置都是正确的,但不知怎么的,图表上的网格没有对齐

我在控件属性的位置x(不是y)和宽度上对这些图表进行了相同的设置。对于图形和
AxisX的数据,我也有相同的
AxisX
间隔。对于这两个图表,最小值和最大值都是完全相同的。我相信图表A和图表B的小数点不同,这就是造成此问题的原因(请参见图片左侧的红色框)

我的问题是如何垂直排列

下面是我在C#ASP.NET中的设置


您应该研究路线属性。将绘图创建为单个图表对象内的两个图表区域,以便能够使用
.alignWithChartArea
属性

using System.Windows.Forms.DataVisualization.Charting;
...

// Make Chart Area 2 align to Chart Area 1
Chart1.ChartAreas["Chart Area 2"].AlignWithChartArea = "Chart Area 1";

// Set the alignment type
Chart1.ChartAreas["Chart Area 2"].AlignmentStyle = AreaAlignmentStyles.Position |
                                            AreaAlignmentStyles.PlotPosition |
                                            AreaAlignmentStyles.Cursor |
                                            AreaAlignmentStyles.AxesView;

我猜我已经将我的多个图表区域转换成一个图表,希望我可以使用上面的代码来处理它。是的,对不起,我应该注意到这一点。如果你想要完美的对齐,它们需要是同一图表中的两个图表区域。谢谢,我制作了两个图表,使其具有相同的格式AxisY.LabelStyle.format=“00.00”,并使用了建议的对齐样式,效果非常好。
using System.Windows.Forms.DataVisualization.Charting;
...

// Make Chart Area 2 align to Chart Area 1
Chart1.ChartAreas["Chart Area 2"].AlignWithChartArea = "Chart Area 1";

// Set the alignment type
Chart1.ChartAreas["Chart Area 2"].AlignmentStyle = AreaAlignmentStyles.Position |
                                            AreaAlignmentStyles.PlotPosition |
                                            AreaAlignmentStyles.Cursor |
                                            AreaAlignmentStyles.AxesView;