LineSeries의, 다른 시리즈 스타일 '반경'
각 데이터 포인트의 그래프 요소의 반경을 픽셀 단위로 지정을 갖는다. 기본적으로 PlotChart 컨트롤은 각 데이터 요소에 원을 그립니다. MXML 또는 스타일을 사용하여이 속성을 설정할 수 있습니다. 기본값은 5 픽셀입니다.
와 'adjustedRadius는'
차트 아이템의 반경을 강조하거나 선택할 때 증가되어야하는 픽셀의 개수를 지정한다. 기본값은 2입니다.
radius는 각 항목 렌더러의 기본 너비와 높이를 결정하고 adjustedRadius는 사용자 상호 작용을 기반으로 조정합니다. 이 코드는 항목 렌더러에 표시됩니다. 다음은 CircleItemRenderer 스킨의 비트입니다.
switch (state)
{
case ChartItem.FOCUSED:
case ChartItem.ROLLOVER:
if (styleManager.isValidStyleValue(getStyle('itemRollOverColor')))
color = getStyle('itemRollOverColor');
else
color = ColorUtil.adjustBrightness2(GraphicsUtilities.colorFromFill(fill),-20);
fill = new SolidColor(color);
adjustedRadius = getStyle('adjustedRadius');
if (!adjustedRadius)
adjustedRadius = 0;
break;
case ChartItem.DISABLED:
if (styleManager.isValidStyleValue(getStyle('itemDisabledColor')))
color = getStyle('itemDisabledColor');
else
color = ColorUtil.adjustBrightness2(GraphicsUtilities.colorFromFill(fill),20);
fill = new SolidColor(GraphicsUtilities.colorFromFill(color));
break;
case ChartItem.FOCUSEDSELECTED:
case ChartItem.SELECTED:
if (styleManager.isValidStyleValue(getStyle('itemSelectionColor')))
color = getStyle('itemSelectionColor');
else
color = ColorUtil.adjustBrightness2(GraphicsUtilities.colorFromFill(fill),-30);
fill = new SolidColor(color);
adjustedRadius = getStyle('adjustedRadius');
if (!adjustedRadius)
adjustedRadius = 0;
break;
}
var stroke:IStroke = getStyle("stroke");
var w:Number = stroke ? stroke.weight/2 : 0;
rcFill.right = unscaledWidth;
rcFill.bottom = unscaledHeight;
var g:Graphics = graphics;
g.clear();
if (stroke)
stroke.apply(g,null,null);
if (fill)
fill.begin(g, rcFill, null);
g.drawEllipse(w - adjustedRadius,w - adjustedRadius,unscaledWidth - 2 * w + adjustedRadius * 2, unscaledHeight - 2 * w + adjustedRadius * 2);
if (fill)
fill.end(g);
CircleItemRenderer 스킨은 200 줄에 불과하며 대부분의 코드는 updateDisplayList 메서드에 있습니다. 새 스킨을 쉽게 만들거나 렌더러가 나타내는 데이터를 기준으로 반경을 설정하기 위해 updateDisplayList 메서드를 재정의 할 수 있습니다 (updateDisplayList 메서드에서 'newRadius = data.someValue'와 같은 것을 사용).
감사합니다. 그냥 파일을 복사하고 변경하려고했으나 자체 또는 상속 된 반경 속성이없는 것을 보았습니다 ... 또는 선 계열을 스킨해야합니까? 나는 아직 피부를 만들지 않았다 ... – Damon
반지름과 adjustedRadius는 CiricleItemRenderer가 아닌 LineSeries의 스타일이다. http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/charts/series/LineSeries.html#styleSummary –
그래도 라인리스트에서 맞춤 설정할 수 있습니까? 그것은 일반적으로 특정 항목에 대한 참조가없는 것 같습니다. 나는 뭔가를 놓칠 수 있었지만. 동적으로 크기를 변경하면 플롯 시리즈가 될 수도 있습니다. – Damon