亚洲国产日韩欧美一区二区三区欧美日韩在线一区二区_亚洲第一国产综合,国产福利电影一区二区三区_国产极品精品免费视频能看的_福利中文字幕最新永久_国产欧美亚洲精品_人妻中文字幕无码专区,欧美日韩国产中文精品字幕自在自线,欧美三日本三级少妇三级久久,中文字幕人成在线-免费无码一区二区

        []
        
(Showing Draft Content)

SpreadJS 迷你图

除了MS Excel支持的標準迷你圖之外,SpreadJS還支持級聯迷你圖。GcExcel Java支持將包含級聯迷你圖的SpreadJS文件導出為JSON導入導出、HTML、圖像和PDF格式。本主題討論這些擴展迷你圖以及如何在GcExcel Java中創建它們。

級聯迷你圖

級聯迷你圖通常用于分析一段時間內的價值,如年銷售額、總利潤、凈稅收等。它廣泛用于金融、銷售、法律和建筑行業,僅舉幾個例子。例如,您可以使用級聯迷你圖來比較銷售人員的支出和收入。


GcExcel Java提供了用于創建級聯迷你圖的 CASCADESPARKLINE 公式。

語法

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

參數

參數名稱

描述

pointsRange(必須)

表示包含值的單元格范圍的引用,如“B2:B8”。

pointIndex(必須)

表示點索引的數字或引用。點索引是 >= 1,例如 1 或 “D2”。

LabelsRange(可選)

表示包含標簽的單元格范圍的引用,如“A2:A8”。默認值為無標簽。

Minimum(可選)

表示顯示區域最小值的數字或參考。默認值是總和(點值之和)的最小值,如-2000。您設置的最小值必須小于默認最小值;否則,使用默認最小值。

maximum(可選)

表示顯示區域最大值的數字或參考。默認值是總和(點值的總和)的最大值,如6000。您設置的最大值必須大于默認最大值;否則,將使用默認最大值。

colorPositive(可選)

表示第一個或最后一個正迷你圖框顏色的字符串(該點的值為正)。默認值為“#8CBF64”。如果第一個或最后一個框表示正值,則框的顏色將設置為 colorPositive 。中間正片框設置為比彩色正片更淺的顏色。

colorNegative(可選)

表示第一個或最后一個負迷你圖框顏色的字符串(該點的值為負)。默認值為“#D6604D”。如果第一個或最后一個框表示負值,則框的顏色將設置為colorNegative。中間負片框設置為比彩色負片更淺的顏色。

vertical(可選)

表示框的方向是垂直還是水平的布爾值。默認值為FALSE。對于一組公式,必須將垂直設置為true或false,因為所有公式都表示整個迷你圖。

itemTypeRange(可選)

表示數據范圍的所有項類型的數組或引用。這些值應為{-、“+”、“=”}或“A1:A7”,它們引用了{“+”、”-“、“=”的值,其中“+”表示正變化,“-”表示負變化,“=”表示總列數。

colorTotal(可選)

一個字符串,當itemTypeRange不存在時表示最后一個小迷你圖框的顏色,或者當ItemType Range存在時表示結果小迷你圖的框的顏色。

請參考以下示例代碼,使用公式添加級聯迷你圖。

// Add a cascade sparkline with horizontal bars.
for (int i = 1; i < 8; i++) {
    worksheet.getRange(i, 2).setFormula("=CASCADESPARKLINE(B2:B8, ROW() - 1, A2:A8, , , \"#8CBF64\", \"#D6604D\", FALSE)");
}

線型迷你圖

線條型火花圖展示了任何開支或數據的趨勢,著重強調變化和波動。

image

語法:

= LINESPARKLINE(data,dataOrientation,[dateAxisData],[dateAxisOrientation],[setting])

參數:

參數名稱

描述

data

一個范圍引用,代表迷你圖的數據,例如"A1:C3"

dataOrientation

一個數字,代表迷你圖數據的方向。以下之一:

  • 垂直:0(默認)

  • 水平:1

dateAxisData

一個范圍引用,代表迷你圖日期軸的數據,例如"D1:F3"。如果沒有dateAxisOrientation,則dateAxisData無效

dateAxisOrientation

一個數字,代表迷你圖日期軸的方向。以下之一:

  • 垂直 - 0

  • 水平 - 1

setting

一個JSON格式的字符串。格式:全名(縮寫)[默認值]:描述

設置參數提供了以下大小寫敏感的屬性來設定:

參數名稱

描述

showFirst(sf) [默認:False]

檢查迷你圖的第一個數據點是否以不同格式顯示。

showHigh(sh) [默認:False]

檢查具有最高值的數據點是否以不同格式顯示在迷你圖上。

showLast(slast) [默認:False]

檢查迷你圖的最后一個數據點是否以不同格式顯示。

showLow(slow) [默認:False]

檢查具有最低值的數據點是否以不同格式顯示在迷你圖上。

showNegative(sn) [默認:False]

檢查負數數據點是否以不同格式顯示在迷你圖上。

showMarkers(sm) [默認:False]

檢查迷你圖是否顯示數據標記。

axisColor(ac) [默認:#000000]

軸的顏色。

firstMarkerColor(fmc) [默認:#95B3D7]

迷你圖第一個數據點的顏色。

highMarkerColor(hmc) [默認:#0000FF]

迷你圖最高數據點的顏色。

lastMarkerColor(lastmc) [默認:#95B3D7]

迷你圖最后一個數據點的顏色。

lowMarkerColor(lowmc) [默認:#0000FF]

迷你圖最低數據點的顏色。

markersColor(mc) [默認:#244062]

迷你圖數據標記的顏色。

negativeColor(nc) [默認:#A52A2A]

迷你圖負數數據點的顏色。

seriesColor(sc) [默認:#244062]

迷你圖的顏色。

lineWeight(lw) [默認:1.0]

表示迷你圖的線寬,線寬以點為單位測量。線寬必須大于或等于零。

displayXAxis(dxa) [默認:False]

表示是否顯示迷你圖的水平軸。

displayEmptyCellsAs(deca) [默認:0]

表示如何顯示空白單元格。

- 0: 對于數據系列中的空白值留出空隙,這將導致線條斷開。

- 1: 將數據系列中的空白值處理為零值,因此線條會降至零值數據點處。

- 2: 使用連接元素填充空白值在數據系列中留下的空隙,而不是留下空隙。

displayHidden(dh) [默認:False]

表示隱藏單元格中的數據是否被繪制到迷你圖上。

manualMax(mmax)[默認:0]

表示迷你圖垂直軸的最大值。如果maxAxisType不等于'自定義(2)',則軸設置為零。

manualMin(mmin) [默認:0]

表示迷你圖垂直軸的最小值。如果minAxisType不等于'自定義(2)',則軸設置為零。

maxAxisType(maxat) [默認:0]

表示垂直軸最大值的計算方式。

- 0: 指定迷你圖的垂直軸最小值或最大值自動計算,以便可以將具有最小或最大值的數據點顯示在繪圖區域中。

- 2: 指定迷你圖的垂直軸最小值或最大值由manualMin屬性或manualMax屬性指定。

minAxisType(minat) [默認:0]

表示垂直軸最小值的計算方式,與maxAxisType類型類似。

rightToLeft(rtl) [默認:False]

表示迷你圖組中的每個迷你圖是否以從右到左的方式顯示。

參考以下示例代碼,使用公式添加線型迷你圖:

// Create a new workbook.
Workbook workbook = new Workbook();
        
// Get active sheet.
IWorksheet worksheet = workbook.getActiveSheet();
        
// Add values to the table.
worksheet.getRange("A1").setValue("Sales by Country");
worksheet.getRange("A2:F5").setValue(new Object[][]
        {
                {"Countries", 2016, 2017, 2018, 2019, 2020},
                {"China", 243000, 291000, 465000, 282000, 213000},
                {"India", 448000, 358000, 332000, 489000, 302000},
                {"UnitedStates", 439000, 276000, 413000, 396000, 392000}
        });
worksheet.getRange("G2").setValue("SparkLine");
        
// Add line sparkline formula.
worksheet.getRange("G3:G5").setFormula("=LINESPARKLINE(B3:F3,1,,,\"{showMarkers:TRUE,lineWeight:1.5,markersColor:#7030a0}\")");

worksheet.getRange("A1:G1").merge();
worksheet.getRange("A1").getInterior().setColor(Color.GetPurple());
worksheet.getRange("A1").getFont().setColor(Color.GetWhite());
worksheet.getRange("A1").setHorizontalAlignment(HorizontalAlignment.Center);
worksheet.getRange("A1:G5").getBorders().setLineStyle(BorderLineStyle.Thin);

worksheet.getRange("B3:F5").setNumberFormat("$#,##0");
worksheet.getRange("A1:G2").getFont().setBold(true);
worksheet.getRange("A1").getFont().setSize(15);
worksheet.getRange("A2:G5").getFont().setSize(13);

worksheet.getRange("A:F").autoFit();
worksheet.getRange("1:5").setRowHeight(25);
worksheet.getRange("G1").setColumnWidth(30);
worksheet.getPageSetup().setOrientation(PageOrientation.Landscape);
    
// Save as a PDF document.
workbook.save("LineSparkline.pdf");
        
// Save as a .sjs file.
workbook.save("LineSparkline.sjs");

柱狀火迷你圖

柱狀火迷你圖利用條形圖來可視化展示數據的分布和變化。正數數據點會位于x軸之上,而負數數據點則會顯示在x軸之下。

image

語法:

 = COLUMNSPARKLINE(data,dataOrientation,[dateAxisData],[dateAxisOrientation],[setting])

參數:

參數名稱

描述

data

一個范圍引用,代表迷你圖的數據,例如 "A1:C3"。

dataOrientation

一個數字,代表迷你圖數據的方向。可選如下之一:<ul><li>垂直:0(默認)。</li><li>水平:1。</li></ul>

dateAxisData

一個范圍引用,代表迷你圖日期軸的數據,例如 "D1:F3"。如果沒有dateAxisOrientation,則dateAxisData無效。

dateAxisOrientation

一個數字,代表迷你圖日期軸的方向??蛇x如下之一:

1. 垂直 - 0

2. 水平 - 1

setting

一個JSON格式的字符串。格式:全名(縮寫)[默認值]:描述

設置參數提供了以下區分大小寫的屬性來設定:

參數名稱

描述

showFirst(sf)[默認: False]

檢查迷你圖的第一個數據點是否以不同格式顯示。

showHigh(sh)[默認: False]

檢查最高數值的數據點是否以不同格式顯示于迷你圖。

showLast(slast)[默認: False]

檢查最后一個數據點是否以不同格式顯示于迷你圖。

showLow(slow)[默認: False]

檢查最低數值的數據點是否以不同格式顯示于迷你圖。

showNegative(sn)[默認: False]

檢查負數數據點是否以不同格式顯示于迷你圖。

showMarkers(sm)[默認: False]

檢查迷你圖是否顯示數據標記。

axisColor(ac)[默認: #000000]

軸的顏色。

firstMarkerColor(fmc)[默認: #95B3D7]

迷你圖第一個數據點的顏色。

highMarkerColor(hmc)[默認: #0000FF]

迷你圖最高數據點的顏色。

lastMarkerColor(lastmc)[默認: #95B3D7]

迷你圖最后一個數據點的顏色。

lowMarkerColor(lowmc)[默認: #0000FF]

迷你圖最低數據點的顏色。

markersColor(mc)[默認: #244062]

迷你圖數據標記的顏色。

negativeColor(nc)[默認: #A52A2A]

迷你圖負數數據點的顏色。

seriesColor(sc)[默認: #244062]

迷你圖的顏色。

lineWeight(lw)[默認: 1.0]

表示迷你圖的線寬,線寬單位為磅,必須大于等于零。

displayXAxis(dxa)[默認: False]

表示是否顯示迷你圖的橫軸。

displayEmptyCellsAs(deca)[默認: 0]

表示如何顯示空單元格。

- 0: 在數據系列中為空值留出間隔,導致線條分段。

- 1: 將數據系列中的空值處理為零值,使得線條在零值數據點處下降到零。

- 2: 用連接元素填充空值的間隔,而不是在數據系列中為空值留出間隔。

displayHidden(dh)[默認: False]

表示隱藏單元格中的數據是否用于繪制迷你圖。

manualMax(mmax)[默認: 0]

表示迷你圖垂直軸的最大值。如果 maxAxisType 不等于 '自定義(2)',則軸設為零。

manualMin(mmin)[默認: 0]

表示迷你圖垂直軸的最小值。如果 minAxisType 不等于 '自定義(2)',則軸設為零。

maxAxisType(maxat)[默認: 0]

表示垂直軸最大值的計算方式。

- 0: 指定迷你圖的垂直軸最小值或最大值自動計算,以便可以顯示具有最小或最大值的數據點。

- 2: 指定迷你圖的垂直軸最小值或最大值由 manualMin 屬性或 manualMax 屬性指定。

minAxisType(minat)[默認: 0]

表示垂直軸最小值的計算方式,類似于 maxAxisType 類型。

rightToLeft(rtl)[默認: False]

表示迷你圖組中的每個迷你圖是否以從右向左的方式顯示。

參考以下示例代碼使用公式添加柱狀迷你圖:

// Create a new workbook.
Workbook workbook = new Workbook();
        
// Get active sheet.
IWorksheet worksheet = workbook.getActiveSheet();
        
// Add values to the table.
worksheet.getRange("A1").setValue("Sales Data");
worksheet.getRange("A2:F6").setValue(new Object[][]
        {
                {"Salesperson", "Jan", "Feb", "Mar", "Apr", "May"},
                {"Courtney Graves", 76000, 68250, 72000, 99750, 45500},
                {"Crystal Cross", 118750, 89250, 121250, 92500, 60750},
                {"Jodi Hall", 75500, 56500, 65500, 62750, 77500},
                {"Andrew James", 76750, 108500, 88000, 55750, 106000}
        });
worksheet.getRange("G2").setValue("SparkLine");
        
// Add column sparkline formula.
worksheet.getRange("G3:G6").setFormula("=COLUMNSPARKLINE(B3:F3,1,,,\"{showMarkers:TRUE}\")");

worksheet.getRange("A1:G1").merge();
worksheet.getRange("A1").getInterior().setColor(Color.GetPurple());
worksheet.getRange("A1").getFont().setColor(Color.GetWhite());
worksheet.getRange("A1").setHorizontalAlignment(HorizontalAlignment.Center);
worksheet.getRange("A1:G6").getBorders().setLineStyle(BorderLineStyle.Thin);

worksheet.getRange("B3:F6").setNumberFormat("$#,##0");
worksheet.getRange("A1:G2").getFont().setBold(true);
worksheet.getRange("A1").getFont().setSize(15);
worksheet.getRange("A2:G6").getFont().setSize(13);

worksheet.getRange("A:F").autoFit();
worksheet.getRange("1:6").setRowHeight(25);
worksheet.getRange("G1").setColumnWidth(30);
worksheet.getPageSetup().setOrientation(PageOrientation.Landscape);
    
// Save as a PDF document.
workbook.save("ColumnSparkline.pdf");
        
// Save as a .sjs file.
workbook.save("ColumnSparkline.sjs");

盈虧迷你圖

盈虧迷你圖利用條形圖來直觀地表示正負值。正值(贏)位于x軸之上,而負值(虧)位于x軸之下。

這種盈虧迷你圖支持兩種狀態的值,例如真或假,或是 1 或 -1。例如,在游戲結果中,1 代表贏,而 -1 代表虧。

image

語法:

 = WINLOSSSPARKLINE(data,dataOrientation,[dateAxisData],[dateAxisOrientation],[setting])

參數:

參數名稱

描述

data

數據范圍引用,代表迷你圖的數據,例如"A1:C3"。

dataOrientation

一個數字,代表迷你圖數據的方向??蛇x如下之一:

垂直:0(默認)

水平:1

dateAxisData

日期軸數據范圍引用,代表迷你圖的日期軸數據,例如"D1:F3"。如果沒有dateAxisOrientation,則dateAxisData無效。

dateAxisOrientation

一個數字,代表迷你圖日期軸的方向。可選如下之一:

垂直:0

水平:1

setting

JSON格式的字符串。格式:全名(縮寫)[默認值]:描述

設置參數提供了以下區分大小寫的屬性來設定:

參數名稱

描述

showFirst(sf)[默認: False]

檢查迷你圖的第一個數據點是否以不同格式顯示。

showHigh(sh)[默認: False]

檢查最高數值的數據點是否以不同格式顯示于迷你圖。

showLast(slast)[默認: False]

檢查最后一個數據點是否以不同格式顯示于迷你圖。

showLow(slow)[默認: False]

檢查最低數值的數據點是否以不同格式顯示于迷你圖。

showNegative(sn)[默認: False]

檢查負數數據點是否以不同格式顯示于迷你圖。

showMarkers(sm)[默認: False]

檢查迷你圖是否顯示數據標記。

axisColor(ac)[默認: #000000]

軸的顏色。

firstMarkerColor(fmc)[默認: #95B3D7]

迷你圖第一個數據點的顏色。

highMarkerColor(hmc)[默認: #0000FF]

迷你圖最高數據點的顏色。

lastMarkerColor(lastmc)[默認: #95B3D7]

迷你圖最后一個數據點的顏色。

lowMarkerColor(lowmc)[默認: #0000FF]

迷你圖最低數據點的顏色。

markersColor(mc)[默認: #244062]

迷你圖數據標記的顏色。

negativeColor(nc)[默認: #A52A2A]

迷你圖負數數據點的顏色。

seriesColor(sc)[默認: #244062]

迷你圖的顏色。

lineWeight(lw)[默認: 1.0]

表示迷你圖的線寬,線寬單位為磅,必須大于等于零。

displayXAxis(dxa)[默認: False]

表示是否顯示迷你圖的橫軸。

displayEmptyCellsAs(deca)[默認: 0]

表示如何顯示空單元格。

- 0: 在數據系列中為空值留出間隔,導致線條分段。

- 1: 將數據系列中的空值處理為零值,使得線條在零值數據點處下降到零。

- 2: 用連接元素填充空值的間隔,而不是在數據系列中為空值留出間隔。

displayHidden(dh)[默認: False]

表示隱藏單元格中的數據是否用于繪制迷你圖。

manualMax(mmax)[默認: 0]

表示迷你圖垂直軸的最大值。如果 maxAxisType 不等于 '自定義(2)',則軸設為零。

manualMin(mmin)[默認: 0]

表示迷你圖垂直軸的最小值。如果 minAxisType 不等于 '自定義(2)',則軸設為零。

maxAxisType(maxat)[默認: 0]

表示垂直軸最大值的計算方式。

- 0: 指定迷你圖的垂直軸最小值或最大值自動計算,以便可以顯示具有最小或最大值的數據點。

- 2: 指定迷你圖的垂直軸最小值或最大值由 manualMin 屬性或 manualMax 屬性指定。

minAxisType(minat)[默認: 0]

表示垂直軸最小值的計算方式,類似于 maxAxisType 類型。

rightToLeft(rtl)[默認: False]

表示迷你圖組中的每個迷你圖是否以從右向左的方式顯示。

參考以下示例代碼使用公式添加盈虧迷你圖:

// Create a new workbook.
Workbook workbook = new Workbook();
        
// Get active sheet.
IWorksheet worksheet = workbook.getActiveSheet();
        
// Add values to the table.
worksheet.getRange("A1").setValue("Employee Performance");
worksheet.getRange("A2:F5").setValue(new Object[][]
        {
                {"Team Member", "Wk1", "Wk2", "Wk3", "Wk4", "Wk5"},
                {"Pamela Nelson", 5, 1, 7, 5, 8},
                {"Gabriel Reed", 1, 2, 4, 2, 9},
                {"Christina Robbins", 4, 10, 8, 5, 10}
        });
worksheet.getRange("H2").setValue("Target (tasks per week):");
worksheet.getRange("I2").setValue(5);
worksheet.getRange("G2").setValue("SparkLine");
        
// Add win-loss sparkline formula. Use Formula2 as the formula contains a dynamic array formula (B3:F3-$I$2).
worksheet.getRange("G3:G5").setFormula2("=WINLOSSSPARKLINE(B3:F3-$I$2,1,,,\"{showNegative:TRUE}\")");

worksheet.getRange("A1:G1").merge();
worksheet.getRange("A1").getInterior().setColor(Color.GetPurple());
worksheet.getRange("A1").getFont().setColor(Color.GetWhite());
worksheet.getRange("A1").setHorizontalAlignment(HorizontalAlignment.Center);
worksheet.getRange("A1:G5").getBorders().setLineStyle(BorderLineStyle.Thin);

worksheet.getRange("A1:G2").getFont().setBold(true);
worksheet.getRange("A1").getFont().setSize(15);
worksheet.getRange("A2:G5").getFont().setSize(13);
worksheet.getRange("H2:I2").getFont().setBold(true);
worksheet.getRange("H2:I2").getFont().setSize(13);

worksheet.getRange("A:F").autoFit();
worksheet.getRange("1:5").setRowHeight(25);
worksheet.getRange("G1:H1").setColumnWidth(30);
worksheet.getPageSetup().setOrientation(PageOrientation.Landscape);
    
// Save as a PDF document.
workbook.save("WinLossSparkline.pdf");
        
// Save as a .sjs file.
workbook.save("WinLossSparkline.sjs");

注意:

  • 使用 IRange 接口的 getValue 方法獲取公式結果會返回代表火花線對象的 ISparkLineObject。ISparkLineObject 接口的 toJson 方法可以返回與該對象相對應的 JSON 字符串。

  • 使用 IRange 接口的 getText 方法獲取公式結果會返回一個空字符串。

  • MS Excel 不支持 SPARKLINE 公式,因此此公式的計算結果會是"#NAME?"。

  • 用戶可以導入和導出包含火花線的 JSON 或 .sjs 文件。

  • GcExcel 支持將火花線公式導出為 PDF、HTML 或圖像。

  • 如果公式有誤,其結果將是 CalcError.Value。