C# 如何将数据标签的位置移到雷达图之外?

C# 如何将数据标签的位置移到雷达图之外?,c#,winforms,charts,C#,Winforms,Charts,我想把雷达图的数据标签移到外面 到目前为止,我尝试移动标签的代码如下: rdrOpportunities.Series["Series1"]["RadarDrawingStyle"] = "Area"; rdrOpportunities.Series["Series1"]["AreaDrawingStyle"] = "Circle"; rdrOpportunities.Series["Series1"]["CircularL

我想把雷达图的数据标签移到外面

到目前为止,我尝试移动标签的代码如下:

            rdrOpportunities.Series["Series1"]["RadarDrawingStyle"] = "Area";
            rdrOpportunities.Series["Series1"]["AreaDrawingStyle"] = "Circle";
            rdrOpportunities.Series["Series1"]["CircularLabelStyle"] = "Circular";
            rdrOpportunities.Series["Series1"].BorderWidth = 1;

            rdrOpportunities.ChartAreas[0].AxisY.LabelAutoFitStyle = LabelAutoFitStyles.None;
            rdrOpportunities.ChartAreas[0].AxisY.IsLabelAutoFit = false;
            rdrOpportunities.ChartAreas[0].AxisX.LabelAutoFitStyle = LabelAutoFitStyles.None;
            rdrOpportunities.ChartAreas[0].AxisX.IsLabelAutoFit = false;
请帮忙:( 提前感谢您回答我的问题:)


直接方法是为您的
系列设置合适的
SmartLabelStyle

s.SmartLabelStyle.Enabled = true;
s.SmartLabelStyle.AllowOutsidePlotArea = LabelOutsidePlotAreaStyle.Yes;
但是,看看标签文本的大小,这是不行的,因为外面没有足够的空间

然后,您可以尝试减小
图表区ca
内部绘图位置的大小,如下所示:

ca.InnerPlotPosition = new ElementPosition(x, y, w, h);
其中数字以图表的百分比(!!)表示。(0,0100)将填满整个图表,没有空间放置轴、标签、图例等

根据具体情况,你需要在四周留出一些空间。在所有边上留下10%将使用(10,10,80,80)。您可能需要将绘图区域缩小很多,可能(60,60)或更小。。这确实需要一些尝试和错误


请注意,虽然这会使标签更靠近外部,但它们基本上仍在内部。

我的图表大小已更改,但标签未与轴网格线对齐:(是的。标签文本太大。请尝试通过插入一个或多个换行符('\n')将其分解为多行!谢谢你,陶,但是不可能做这样的雷达图吗?:((((((((((((好吧,你可以这样做,但我不知道如何让标签像在aPie图表中那样轻松地向外移动。你可以用批注替换标签,批注可以自由放置或以某种灵活的方式锚定。即使我将值更改为单个字符,标签仍然在网格线内。