[]
散点图用于说明各个项目或类别之间的关系。该图表非常适合显示科学,统计和工程数据的比较。可以在散点图中绘制工作表的列或行中排列的数据。
与其他图表不同,散点图在绘图区域的水平轴和垂直轴上显示x和y变量的实际值。通常,此图表将x和y值组合为单个数据点,并以不规则的间隔显示它们。另外,该图表不使用类别轴,因为水平轴(主轴)和垂直轴(次级轴)都是值轴。
GcExcel支持以下类型的散点图。
图表类型 | 图表快照 | 用例 |
---|---|---|
XYScatter | XYScatter 图 | 基于选定的数据范围显示数据点。这有助于用户分析和确定x和y变量之间的关系。 |
XYScatterLines | XYScatterLines 图 | 带直线的散点图显示特定系列中数据点之间的直线连接线,而不显示各个点。 |
XYScatterLinesNoMarkers | XYScatterLinesNoMarkers 图 | 没有直线且没有数据标记的散点图显示一条平滑的曲线,该曲线连接特定系列中的所有数据点。 |
XYScatterSmooth | XYScatterSmooth 图 | 带有平滑线的散点图显示特定系列中数据点之间的连接线,而不显示各个点。 |
XYScatterSmoothNoMarkers | XYScatterSmoothNoMarkers 图 | 具有平滑线且没有数据标记的散点图显示一条平滑曲线,该曲线连接特定系列中的所有数据点。 |
Bubble | Bubble 图 | 气泡图非常适合财务数据分析。它显示了散点图的变体,其中数据点被替换为气泡,并在气泡的大小中表示了三维(Z轴)。该图表绘制了z(size)值以及x值和y值。通常,当您要绘制三个数据系列时,可以使用此图表。气泡的大小由第三数据序列中的值确定。 |
Bubble3DEffect | Bubble3DEffect 图 | Bubble3DEffect图表可用于显示3D图表演示,这是对2DBubble图表的修改。它没有三维尺寸,仅在外观上具有立体感。 |
请参考以下代码以添加XY散点图:
private static void ScatterCharts() {
// Initialize workbook
Workbook workbook = new Workbook();
// Fetch default worksheet
IWorksheet worksheet = workbook.getWorksheets().get(0);
// Prepare data for chart
worksheet.getRange("A1:D22").setValue(new Object[][] { { "Index", "Zantedeschia", "Celosia", "Calendula" },
{ 0, 0, 0, 0 }, { 1, 2, 1, 1 }, { 2, 6, 1, 2 }, { 3, 6, 1, 2 }, { 4, 10, 2, 2 }, { 5, 11, 2, 2 },
{ 6, 13, 2, 3 }, { 7, 14, 2, 4 }, { 8, 15, 3, 5 }, { 9, 16, 3, 7 }, { 10, 17, 4, 9 }, { 11, 22, 4, 11 },
{ 12, 27, 5, 12 }, { 13, 30, 8, 13 }, { 14, 32, 10, 14 }, { 15, 34, 13, 15 }, { 16, 36, 16, 15 },
{ 17, 37, 20, 15 }, { 18, 39, 23, 15 }, { 19, 40, 25, 15 }, { 20, 40, 25, 15 } });
worksheet.getRange("A:D").getColumns().autoFit();
// Add XYScatter Chart
IShape xyScatterChartshape = worksheet.getShapes().addChart(ChartType.XYScatterLines, 250, 20, 360, 230);
// Adding series to SeriesCollection
xyScatterChartshape.getChart().getSeriesCollection().add(worksheet.getRange("B1:B22"), RowCol.Columns);
xyScatterChartshape.getChart().getSeriesCollection().add(worksheet.getRange("C1:C22"), RowCol.Columns);
xyScatterChartshape.getChart().getSeriesCollection().add(worksheet.getRange("D1:D22"), RowCol.Columns);
// Configure Chart Title
xyScatterChartshape.getChart().getChartTitle()
.setText("The Influence of Greenhouse Cultivation on Different Flowers");
// Configure Markers style
ISeries series1 = xyScatterChartshape.getChart().getSeriesCollection().get(0);
series1.setMarkerStyle(MarkerStyle.Diamond);
series1.setMarkerSize(7);
ISeries series2 = xyScatterChartshape.getChart().getSeriesCollection().get(1);
series2.setMarkerStyle(MarkerStyle.Star);
series2.setMarkerSize(7);
ISeries series3 = xyScatterChartshape.getChart().getSeriesCollection().get(2);
series3.setMarkerStyle(MarkerStyle.Circle);
series3.setMarkerSize(7);
// Saving workbook to Xlsx
workbook.save("26-ScatterChart.xlsx", SaveFileFormat.Xlsx);