[]
        
(Showing Draft Content)

계단식 배열 스파크라인

캐스케이드 스파크라인(Cascade Sparkline)은 연간 매출, 총 수익, 순세금 등과 같이 시간에 따른 값의 변화를 분석하는 데 주로 사용됩니다. 재무, 영업, 법률, 건설 분야 등에서 널리 활용됩니다.

다음은 CASCADESPARKLINE 수식에서 사용되는 다양한 매개변수입니다:

옵션

설명

pointsRange

값이 포함된 셀 범위를 나타내는 참조입니다. 예: "B2:B8"

pointIndex

해당 포인트의 인덱스를 나타내는 숫자 또는 참조입니다. pointIndex는 1 이상의 값이어야 하며, 예: 1 또는 "D2"

labelsRange

레이블이 포함된 셀 범위를 나타내는 참조입니다. 예: "A2:A8" (선택 사항, 기본값: 레이블 없음)

minimum

표시 영역의 최소값을 나타내는 숫자 또는 참조입니다. 예: -2000 (선택 사항, 기본값: 모든 포인트 값을 더한 합계 중 최소값)

직접 설정한 최소값이 기본 최소값보다 작지 않으면 기본값이 사용됩니다.

maximum

표시 영역의 최대값을 나타내는 숫자 또는 참조입니다. 예: 6000 (선택 사항, 기본값: 모든 포인트 값을 더한 합계 중 최대값)

직접 설정한 최대값이 기본 최대값보다 크지 않으면 기본값이 사용됩니다.

colorPositive

첫 번째 또는 마지막 포인트가 양수일 때 해당 스파크라인 박스의 색상을 나타내는 문자열입니다. (선택 사항, 기본값: "#8CBF64")

중간에 있는 양수 박스는 이 색상의 더 밝은 색으로 표시됩니다.

colorNegative

첫 번째 또는 마지막 포인트가 음수일 때 해당 스파크라인 박스의 색상을 나타내는 문자열입니다. (선택 사항, 기본값: "#D6604D")

중간에 있는 음수 박스는 이 색상의 더 밝은 색으로 표시됩니다.

vertical

박스 방향이 세로인지 가로인지를 나타내는 불리언 값입니다. (선택 사항, 기본값: FALSE)

스파크라인 전체를 구성하는 모든 수식에 대해 동일한 방향 설정이 필요합니다.

itemTypeRange

데이터 범위의 항목 유형을 나타내는 배열 또는 참조입니다. 값은 {"-", "+", "="} 형식이거나 "A1:A7"처럼 참조 형식일 수 있으며,

+는 증가, -는 감소, =는 총합 열을 나타냅니다. (선택 사항)

colorTotal

itemTypeRange가 없는 경우 마지막 스파크라인 박스의 색상, 또는 itemTypeRange가 존재할 경우 결과 스파크라인 박스의 색상을 나타내는 문자열입니다. (선택 사항)

사용 사례

다음은 CASCADESPARKLINE 수식을 활용한 대표적인 두 가지 사용 사례 중 첫 번째입니다.

사용 사례 1

Cascade Sparkline은 “영업 사원의 지출 및 급여”를 스파크라인으로 시각화하는 데 사용할 수 있으며, 아래 수식은 해당 시나리오에 사용된 예시입니다:


= CASCADESPARKLINE(pointsRange, pointIndex, labelsRange, minimum, maximum, colorPositive, colorNegative, vertical)




다음 코드 샘플은 위 수식을 사용하여 캐스케이드 스파크라인을 생성합니다.

Ask ChatGPT

activeSheet.addSpan(0, 0, 1, 3);
activeSheet.getCell(0, 0, GC.Spread.Sheets.SheetArea.viewport).value("A salesman's expenses and pay")
.font("20px Arial")
.hAlign(GC.Spread.Sheets.HorizontalAlign.center)
.vAlign(GC.Spread.Sheets.VerticalAlign.center)
.backColor("purple")
.foreColor("white");
activeSheet.getRange(1, 2, 7, 1, GC.Spread.Sheets.SheetArea.viewport).setBorder(new GC.Spread.Sheets.LineBorder("transparent", GC.Spread.Sheets.LineStyle.thin),
{ inside: true });
activeSheet.setValue(1, 0, "Salary");
activeSheet.setValue(2, 0, "Performance pay");
activeSheet.setValue(3, 0, "Pay for customers");
activeSheet.setValue(4, 0, "Food spending");
activeSheet.setValue(5, 0, "Hotel expenses");
activeSheet.setValue(6, 0, "Financial management");
activeSheet.setValue(7, 0, "Deposit");
activeSheet.setValue(1, 1, 3500);
activeSheet.setValue(2, 1, 2500);
activeSheet.setValue(3, 1, -1000);
activeSheet.setValue(4, 1, -1000);
activeSheet.setValue(5, 1, -900);
activeSheet.setValue(6, 1, 300);
activeSheet.setFormula(7, 1, '=sum(B2:B7)');
activeSheet.setColumnWidth(0,150);
activeSheet.setColumnWidth(1,100);
activeSheet.setColumnWidth(2, 340);
activeSheet.setRowHeight(0, 30);
activeSheet.setRowHeight(1, 30);
activeSheet.setRowHeight(2, 30);
activeSheet.setRowHeight(3, 30);
activeSheet.setRowHeight(4, 30);
activeSheet.setRowHeight(5, 30);
activeSheet.setRowHeight(6, 30);
activeSheet.setRowHeight(7, 30);
activeSheet.setFormula(1, 2, '=CASCADESPARKLINE(B2:B8,1,A2:A8,,,"#8CBF64","#D6604D",false)');
activeSheet.setFormula(2, 2, '=CASCADESPARKLINE(B2:B8,2,A2:A8,,,"#8CBF64","#D6604D",false)');
activeSheet.setFormula(3, 2, '=CASCADESPARKLINE(B2:B8,3,A2:A8,,,"#8CBF64","#D6604D",false)');
activeSheet.setFormula(4, 2, '=CASCADESPARKLINE(B2:B8,4,A2:A8,,,"#8CBF64","#D6604D",false)');
activeSheet.setFormula(5, 2, '=CASCADESPARKLINE(B2:B8,5,A2:A8,,,"#8CBF64","#D6604D",false)');
activeSheet.setFormula(6, 2, '=CASCADESPARKLINE(B2:B8,6,A2:A8,,,"#8CBF64","#D6604D",false)');
activeSheet.setFormula(7, 2, '=CASCADESPARKLINE(B2:B8,7,A2:A8,,,"#8CBF64","#D6604D",false)');


사용 사례 2


계단식 배열 스파크라인은 초기 값이 어떻게 증가하고 감소하여 최종 값에 도달하는지를 구체적으로 나타내는 데에도 사용할 수 있습니다. 이를 위해 Cascade 수식에서 itemTypeRange 매개변수를 사용할 수 있습니다. itemTypeRange 매개변수는 조직에서 발생하는 순 유입과 순 유출을 보여주기 위해 회계 및 재무 애플리케이션에서 유용하게 사용됩니다.


CASCADESPARKLINE(pointsRange, pointIndex, labelsRange, minimum, maximum, colorPositive, colorNegative, vertical, itemTypeRange, colorTotal)


다음 예시는 itemTypeRange 매개변수를 워크시트의 E2:E15 셀 범위에 적용한 경우입니다. 이 예시에서는 CASCADESPARKLINE 수식을 사용하여 회사의 순 매출에 대한 통합 손익 시나리오를 보여줍니다. 'Operating Profit', 'Profit before tax', 'Net Profit'에 해당하는 스파크라인은 합계 열(total columns)을 나타내므로 각 항목의 itemType 값은 "="입니다. 양의 변화와 음의 변화를 나타내는 스파크라인은 각각 "+""-" itemType을 사용합니다.




다음 코드는 이 사용 사례에서 수식을 사용하여 Cascade 스파크라인을 생성하는 예제입니다.

// 셀에 텍스트 설정
sheet.setText(0, 1, '000$');
sheet.setText(0, 2, 'LABELS');
sheet.setText(0, 3, 'ITEMS');
sheet.setText(0, 4, 'ITEM TYPE');

// displayLabels 배열 생성
var displayLabels = [
    'CONSOLIDATED PROFIT & LOSS ACCOUNT', 'Net Sales',
    '   Cost of Sales', '   Research and development', '   Selling, general and administrative', '   Customer Finance impairment',
    '   Impairment of goodwill', '   Amortization of goodwill', 'Operating Profit', '   Share of results of associates', '   Financial income and expenses',
    'Profit before tax', '  Tax', '   Minority interests', 'Net Profit'
];

// items 배열 생성
var items = [
    29616, 17278, 7052, 6239, 292, 103, 206, 1554, 3300, 1506, 3252, 1484, 92, 1676
];

// labels 배열 생성
var labels = [
    29616, 12338, 5286, -953, -1245, -1348, -1554, 1554, 4854, 6360, 3252, 1768, 1676, 1676
];

// itemTypes 배열 생성
var itemTypes = [
    '+', '-', '-', '-', '-', '-', '-', '=', '+', '+', '=', '-', '-', '='
];

// 배열 설정
sheet.setArray(0, 0, displayLabels);
sheet.setArray(1, 2, items);
sheet.setArray(1, 3, labels);
sheet.setArray(1, 4, itemTypes);

// CASCADESPARKLINE 수식 설정
sheet.setFormula(1, 1, '=CASCADESPARKLINE(D2:D15, SEQUENCE(COUNTA(D2:D15),1,1,1),C2:C15,,,"#66C2A5","#FF7722",false,E2:E15,"#A9A9A9")'0);