2013-09-27 71 views
1

我一直在整个下午都在处理.net图表,我还没有找到正确的方法来让图表使用100%的可用宽度,因为X轴得到了旋转以进行干净的显示。.net图表:向X轴添加角度会降低图表宽度?

  • 实施例1:

enter image description here

  • 实施例2:

enter image description here

我们可以看到,实施例2的行为,而正常时AxisX.LabelStyle.Angle设置为0.在示例1中,将该属性设置为-45会异常减小图表的宽度!我会理解由几个像素的偏移量来解释左侧最大的标签溢出,但是有更多的方式比左侧的空白更多。

当您在文档中输出多个具有不同X标签大小的此类图表时,结果很可怕。

如何调整我的图表,使它们的宽度在旋转时不受X轴标签影响?

UPDATE: 这是所需的输出,考虑到黄框区域,以图表应拉伸其中 enter image description here

+0

问题是,你想要标签去哪里?该控件试图布置您想要的最好的信息。你想要控制完全做什么?截断它们?减小字体大小?让他们消失?你的问题在这方面不明确。 – zeFrenchy

+0

更新了哪张图片概述了图表应该占据的区域 – Jerome

回答

-1

你可以尝试禁用标签自动调整功能,像这样

// Disable X axis labels automatic fitting 
Chart1.ChartAreas["Default"].AxisX.IsLabelAutoFit = false; 

或您可以尝试各种自动调整选项,看看您是否可以得到可以容忍的结果

// Enable X axis labels automatic fitting 
Chart1.ChartAreas["Default"].AxisX.IsLabelAutoFit = true; 
// Set X axis automatic fitting style 
Chart1.ChartAreas["Default"].AxisX.LabelAutoFitStyle = 
LabelAutoFitStyle.DecreaseFont | LabelAutoFitStyle.IncreaseFont | LabelAutoFitStyle.WordWrap; 

终于,您可以在将它们提供给图库之前,将标签截断为最大长度。

+0

谢谢,我尝试了所有,但无法获得理想的结果。我已经更新了我的问题。当AxisX.LabelStyle.Angle不是0时,问题就出现了。 – Jerome