微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – MS Charts:获得真正的InnerPlotPosition?

使用Microsoft Charts创建图表时,我需要在图表上获得网格的确切位置.

This page说 – 据我所知 – 这可以通过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);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐