Quản lý dấu dữ liệu biểu đồ trong bản trình bày bằng JavaScript
Tổng quan
Bài viết này giải thích cách làm việc với các dấu dữ liệu biểu đồ trong Aspose.Slides. Nó cho thấy cách tạo biểu đồ, truy cập một series và các điểm dữ liệu của nó, áp dụng màu ảnh vào các dấu ở mức điểm dữ liệu, điều chỉnh kích thước dấu, và lưu bản trình bày đã cập nhật. Nó cũng lưu ý rằng các hình dạng dấu tiêu chuẩn có sẵn qua enumeration MarkerStyleType và rằng ngoại hình của dấu được bảo toàn khi xuất biểu đồ sang các định dạng raster hoặc SVG.
Cài đặt tùy chọn dấu biểu đồ
Các dấu có thể được đặt trên các điểm dữ liệu biểu đồ trong các series cụ thể. Để cài đặt tùy chọn dấu biểu đồ, hãy làm theo các bước sau:
- Khởi tạo lớp Presentation.
- Tạo biểu đồ mặc định.
- Đặt hình ảnh.
- Lấy series biểu đồ đầu tiên.
- Thêm điểm dữ liệu mới.
- Ghi bản trình bày ra đĩa.
Trong ví dụ dưới đây, chúng tôi đã đặt tùy chọn dấu biểu đồ ở mức điểm dữ liệu.
// Tạo bản trình bày trống
var pres = new aspose.slides.Presentation();
try {
// Truy cập slide đầu tiên
var slide = pres.getSlides().get_Item(0);
// Tạo biểu đồ mặc định
var chart = slide.getShapes().addChart(aspose.slides.ChartType.LineWithMarkers, 0, 0, 400, 400);
// Lấy chỉ mục WorkSheet dữ liệu biểu đồ mặc định
var defaultWorksheetIndex = 0;
// Lấy WorkSheet dữ liệu biểu đồ
var fact = chart.getChartData().getChartDataWorkbook();
// Xóa series mẫu
chart.getChartData().getSeries().clear();
// Thêm series mới
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 1, 1, "Series 1"), chart.getType());
// Tải hình ảnh 1
var imgx1 = pres.getImages().addImage(java.newInstanceSync("java.io.FileInputStream", java.newInstanceSync("java.io.File", "Desert.jpg")));
// Tải hình ảnh 2
var imgx2 = pres.getImages().addImage(java.newInstanceSync("java.io.FileInputStream", java.newInstanceSync("java.io.File", "Tulips.jpg")));
// Lấy series biểu đồ đầu tiên
var series = chart.getChartData().getSeries().get_Item(0);
// Thêm điểm mới (1:3) ở đó.
var point = series.getDataPoints().addDataPointForLineSeries(fact.getCell(defaultWorksheetIndex, 1, 1, 4.5));
point.getMarker().getFormat().getFill().setFillType(aspose.slides.FillType.Picture);
point.getMarker().getFormat().getFill().getPictureFillFormat().getPicture().setImage(imgx1);
point = series.getDataPoints().addDataPointForLineSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 2.5));
point.getMarker().getFormat().getFill().setFillType(aspose.slides.FillType.Picture);
point.getMarker().getFormat().getFill().getPictureFillFormat().getPicture().setImage(imgx2);
point = series.getDataPoints().addDataPointForLineSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 3.5));
point.getMarker().getFormat().getFill().setFillType(aspose.slides.FillType.Picture);
point.getMarker().getFormat().getFill().getPictureFillFormat().getPicture().setImage(imgx1);
point = series.getDataPoints().addDataPointForLineSeries(fact.getCell(defaultWorksheetIndex, 4, 1, 4.5));
point.getMarker().getFormat().getFill().setFillType(aspose.slides.FillType.Picture);
point.getMarker().getFormat().getFill().getPictureFillFormat().getPicture().setImage(imgx2);
// Thay đổi dấu series biểu đồ
series.getMarker().setSize(15);
// Lưu bản trình bày kèm biểu đồ
pres.save("ScatterChart.pptx", aspose.slides.SaveFormat.Pptx);
} catch (e) {console.log(e);
} finally {
if (pres != null) {
pres.dispose();
}
}
FAQ
Những hình dạng dấu nào có sẵn ngay lập tức?
Các hình dạng tiêu chuẩn có sẵn (hình tròn, hình vuông, hình kim cương, hình tam giác, v.v.); danh sách được định nghĩa bởi enumeration MarkerStyleType. Nếu bạn cần một hình dạng không tiêu chuẩn, hãy sử dụng dấu với màu ảnh để mô phỏng các hình ảnh tùy chỉnh.
Các dấu có được giữ nguyên khi xuất biểu đồ ra ảnh hoặc SVG không?
Có. Khi render biểu đồ sang định dạng raster hoặc lưu hình dạng dưới dạng SVG, các dấu giữ nguyên ngoại hình và cài đặt của chúng, bao gồm kích thước, màu nền và viền.