분산형

분산형 스파크라인은 과학적, 통계적 및 공학적 데이터와 같은 숫자 값을 비교하는 데 사용할 수 있습니다.

수식에서 다음과 같이 ScatterSparkline 함수를 사용하여 분산형 스파크라인을 만들 수 있습니다. =SCATTERSPARKLINE(points1, points2?, minX?, maxX?, minY?, maxY?, hLine?, vLine?, xMinZone?, xMaxZone?, yMinZone?, yMaxZone?, tags?, drawSymbol?, drawLines?, color1?, color2?, dash?). 이 함수에는 다음과 같은 매개 변수가 있습니다. points1: 첫 번째 x,y 데이터 계열입니다. 이는 "H1:I3"과 같은 범위입니다. 행 수가 열 수보다 크거나 같으면 처음 두 열에서 데이터를 가져옵니다. 첫 번째 열은 x 값을 포함하고 두 번째 열은 y 값을 포함합니다. 그렇지 않으면 처음 두 행에서 데이터를 가져옵니다. 첫 번째 행은 x 값을 포함하고 두 번째 행은 y 값을 포함합니다. points2\: (선택 사항) 두 번째 x,y 데이터 계열입니다. 이는 "H4:I6"과 같은 범위입니다. 행 수가 열 수보다 크거나 같으면 처음 두 열에서 데이터를 가져옵니다. 첫 번째 열은 x 값을 포함하고 두 번째 열은 y 값을 포함합니다. 그렇지 않으면 처음 두 행에서 데이터를 가져옵니다. 첫 번째 행은 x 값을 포함하고 두 번째 행은 y 값을 포함합니다. minX\: (선택 사항) 두 계열의 최소 x 한도입니다. 각 계열은 생략되면 고유한 값을 가집니다. maxX\: (선택 사항) 두 계열의 최대 x 한도입니다. 각 계열은 생략되면 고유한 값을 가집니다. minY\: (선택 사항) 두 계열의 최소 y 한도입니다. 각 계열은 생략되면 고유한 값을 가집니다. maxY\: (선택 사항) 두 계열의 최대 y 한도입니다. 각 계열은 생략되면 고유한 값을 가집니다. hLine\: (선택 사항) 가로 축의 위치입니다. 생략하면 선이 없습니다. vLine\: (선택 사항) 세로 축의 위치입니다. 생략하면 선이 없습니다. xMinZone\: (선택 사항) 회색 영역의 x 최소값입니다. 이 4개의 구역 매개 변수 중 하나라도 생략되면 회색 영역이 없습니다. xMaxZone\: (선택 사항) 회색 영역의 x 최대값입니다. 이 4개의 구역 매개 변수 중 하나라도 생략되면 회색 영역이 없습니다. yMinZone\: (선택 사항) 회색 영역의 y 최소값입니다. 이 4개의 구역 매개 변수 중 하나라도 생략되면 회색 영역이 없습니다. yMaxZone\: (선택 사항) 회색 영역의 y 최대값입니다. 이 4개의 구역 매개 변수 중 하나라도 생략되면 회색 영역이 없습니다. tags\: (선택 사항) true이면, y 값이 첫 번째 계열의 최대값인 위치에 점을 "#0000FF"로 표시하고, y 값이 첫 번째 계열의 최소값인 위치에 점을 "#CB0000"으로 표시합니다. 기본값은 false입니다. drawSymbol\: (선택 사항) true이면 각 점을 기호로 그립니다. 첫 번째 계열의 기호는 원이고 두 번째 계열의 기호는 정사각형입니다. 기본값은 true입니다. drawLines\: (선택 사항) true이면 각 점을 순서대로 각 계열의 선과 연결합니다. 기본값은 false입니다. color1\: (선택 사항) 첫 번째 점 계열의 색 문자열입니다. 기본값은 "#969696"입니다. color2\: (선택 사항) 두 번째 점 계열의 색 문자열입니다. 기본값은 "#CB0000"입니다. dash\: (선택 사항) true이면 선은 파선입니다. 그렇지 않으면 선은 실선입니다. 기본값은 false입니다.
var spread; window.onload = function () { spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss")); initSpread(spread); document.getElementById('color1').addEventListener('change',applyChanges); document.getElementById('color2').addEventListener('change',applyChanges); }; function applyChanges() { var sheet = spread.getActiveSheet(); sheet.setFormula(2, 4, '=SCATTERSPARKLINE(A3:B11,C3:D11,,,,,AVERAGE(B3:B11),AVERAGE(A3:A11),,,,,' +'TRUE,TRUE,TRUE,"'+ document.getElementById('color1').value + '","' + document.getElementById('color2').value + '",TRUE)'); } function initSpread(spread) { var spreadNS = GC.Spread.Sheets; var sheet = spread.sheets[0]; sheet.suspendPaint(); sheet.addSpan(0, 0, 1, 5); sheet.getCell(0, 0).value("Rainfall effect on Particulate Levels and Temperature").font("15px Arial") .backColor("#BBBBBB") .vAlign(spreadNS.VerticalAlign.center); sheet.setArray(1, 0, [ ["Daily Rainfall", "Particulate Level", "Daily Rainfall1", "Temperature", "Diagram"], [2.0, 100, 2.0, 15], [2.5, 130, 2.5, 12], [3.0, 120, 3.0, 11], [3.5, 140, 3.5, 9], [4.0, 120, 4.0, 10], [4.5, 110, 4.5, 10], [5.0, 110, 5.0, 9], [5.5, 105, 5.5, 9], [6.0, 100, 6.0, 8] ]); sheet.addSpan(2, 4, 9, 1); sheet.setFormula(2, 4, '=SCATTERSPARKLINE(A3:B11,C3:D11,,,,,AVERAGE(B3:B11),AVERAGE(A3:A11),,,,,' +'TRUE,TRUE,TRUE,"#000000","#82BC00",TRUE)'); for (var i = 0; i < 11; i++) { sheet.setRowHeight(i, 25); } sheet.getRange(1, 0, 1, 5) .font("bold 13px Arial") .setBorder(new spreadNS.LineBorder("black", spreadNS.LineStyle.thin), { bottom: true }); sheet.getRange(2,0,9,4).hAlign(spreadNS.HorizontalAlign.left); sheet.setColumnWidth(0, 120); sheet.setColumnWidth(1, 120); sheet.setColumnWidth(3, 120); sheet.setColumnWidth(4, 200); //hide 2nd rainfall column data sheet.setColumnVisible(2, false); sheet.resumePaint(); };
<!doctype html> <html style="height:100%;font-size:14px;"> <head> <meta name="spreadjs culture" content="ko-kr"/> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <link rel="stylesheet" type="text/css" href="$DEMOROOT$/ko/purejs/node_modules/@mescius/spread-sheets/styles/gc.spread.sheets.excel2013white.css"> <script src="$DEMOROOT$/ko/purejs/node_modules/@mescius/spread-sheets/dist/gc.spread.sheets.all.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/ko/purejs/node_modules/@mescius/spread-sheets-resources-ko/dist/gc.spread.sheets.resources.ko.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/spread/source/js/license.js" type="text/javascript"></script> <script src="app.js" type="text/javascript"></script> <link rel="stylesheet" type="text/css" href="styles.css"> </head> <body> <div class="sample-tutorial"> <div id="ss" class="sample-spreadsheets"></div> <div class="options-container"> <div class="option-row"> <label for="color1">Rainfall - Particulate Level Graph Color</label> </div> <div class="option-row"> <select id="color1"> <option value="#FFFFFF">White</option> <option value="#000000" selected>Black</option> <option value="#F7A711">Orange</option> <option value="#DDDDDD">LightGrey</option> <option value="#BBBBBB">Grey</option> <option value="#999999">DarkGrey</option> <option value="#82BC00">Green</option> </select> </div> <div class="option-row"> <label for="color2">Rainfall - Temperature Graph Color</label> </div> <div class="option-row"> <select id="color2"> <option value="#FFFFFF">White</option> <option value="#000000">Black</option> <option value="#F7A711">Orange</option> <option value="#DDDDDD">LightGrey</option> <option value="#BBBBBB">Grey</option> <option value="#999999">DarkGrey</option> <option value="#82BC00" selected>Green</option> </select> </div> </div> </div> </body> </html>
.sample-tutorial { position: relative; height: 100%; overflow: hidden; } .sample-spreadsheets { width: calc(100% - 280px); height: 100%; overflow: hidden; float: left; } .options-container { float: right; width: 280px; padding: 12px; height: 100%; box-sizing: border-box; background: #fbfbfb; overflow: auto; } .option-row { font-size: 14px; padding: 5px; margin-top: 10px; } label { margin-bottom: 6px; } input { padding: 4px 6px; } body { position: absolute; top: 0; bottom: 0; left: 0; right: 0; }