C# MS Charts:获取真实的内部位置?
使用Microsoft charts创建图表时,我需要获得网格在图表上的确切位置 我的理解是,这可以通过InnerPlotPosition实现。但是,使用此属性时,我会得到以下矩形: 这个矩形似乎与图表大小成比例;调整图表大小时,矩形会缩小,但所有边上的矩形仍保持在网格的外侧。我尝试过用一个常数来加和乘大小,但没有一个常数适用于所有大小 所以,为了澄清,我想要的是网格上的外部黑色矩形。有什么办法得到这个吗C# MS Charts:获取真实的内部位置?,c#,.net,mschart,C#,.net,Mschart,使用Microsoft charts创建图表时,我需要获得网格在图表上的确切位置 我的理解是,这可以通过InnerPlotPosition实现。但是,使用此属性时,我会得到以下矩形: 这个矩形似乎与图表大小成比例;调整图表大小时,矩形会缩小,但所有边上的矩形仍保持在网格的外侧。我尝试过用一个常数来加和乘大小,但没有一个常数适用于所有大小 所以,为了澄清,我想要的是网格上的外部黑色矩形。有什么办法得到这个吗 (我一直在考虑从边缘扫描像素,并检测每个方向上的第一个黑色像素,但这听起来像是一个拙劣的破
(我一直在考虑从边缘扫描像素,并检测每个方向上的第一个黑色像素,但这听起来像是一个拙劣的破解。)我终于找到了一个可行的解决方案:
ChartArea a = chart.ChartAreas[0];
double x1 = a.AxisX.ValueToPixelPosition(a.AxisX.Minimum);
double x2 = a.AxisX.ValueToPixelPosition(a.AxisX.Maximum);
double y1 = a.AxisY.ValueToPixelPosition(a.AxisY.Maximum);
double y2 = a.AxisY.ValueToPixelPosition(a.AxisY.Minimum);