0

这项任务似乎并不太难,但在过去的几个小时里一直困扰着我。我正在做一个堆叠条形图,我希望标签在每个条形段内水平和垂直居中。标签设置为“内部”。这样,您可以通过设置 label-align:middle 轻松地将标签水平居中,但似乎没有任何东西可以处理垂直方面。

下一个方法是创建条形图的自定义组件,但是当我弄乱渲染功能时,它变得非常混乱。我认为这只是修改这一行:v.labelY=v.y + barSeries.seriesRenderData.renderedYOffset - barSeries.seriesRenderData.renderedHalfWidth;但它没有奏效。

无论如何,如果有人有任何想法如何做到这一点,将不胜感激。
附上条形图现在的样子。为了澄清起见,我希望这些标签(图片中的手动)垂直居中。

演示

4

2 回答 2

2
    <mx:BarSeries 
                        xField="s1"
                        yField="name"
                        displayName="Employees in shceme"
                        labelAlign="center"
                        labelPosition="inside"
                        styleName="labelStyle"
                        />

    <fx:Style>
        @namespace s "library://ns.adobe.com/flex/spark";
        @namespace mx "library://ns.adobe.com/flex/mx";

        .labelStyle {
            verticalAlign:middle;
        }
     </fx:Style>

Enjoy!!!
于 2012-04-17T10:31:35.970 回答
0

将 columnSeries 的 verticalCenter 属性设置为 0。

于 2011-03-15T14:13:05.960 回答