Android'de PowerPoint Sunum Grafiklerini Oluşturma veya Güncelleme
Genel Bakış
Bu makale, Aspose.Slides kullanarak grafik oluşturma ve özelleştirme konusunda kapsamlı bir rehber sunar. Bir grafik oluşturmayı, verilerle doldurmayı ve tasarım gereksinimlerinize uygun biçimlendirme seçeneklerini uygulamayı programlı olarak öğrenirsiniz. Makale boyunca, sunumu ve grafik nesnesini başlatmadan serileri, eksenleri ve açıklamaları yapılandırmaya kadar her adımı gösteren detaylı kod örnekleri bulunur. Bu rehberi izleyerek, dinamik grafik üretimini uygulamalarınıza entegre etme konusunda sağlam bir anlayış kazanacak ve veri odaklı sunumlar oluşturma sürecini hızlandıracaksınız.
Grafik Oluşturma
Grafikler, verileri hızlı bir şekilde görselleştirmenize ve bir tablo ya da elektronik tablodan hemen fark edilmeyen içgörüleri elde etmenize yardımcı olur.
Grafik Oluşturmanın Nedenleri
Grafiklerle şunları yapabilirsiniz:
- bir sunumdaki tek bir slaytta büyük miktarda veriyi toplamak, sıkıştırmak ya da özetlemek
- verideki kalıpları ve trendleri ortaya çıkarmak
- zaman içinde veya belirli bir ölçüm birimine göre verinin yönünü ve ivmesini çıkarmak
- aykırı değerleri, sapmaları, hataları, mantıksız verileri vb. tespit etmek
- karmaşık verileri iletişim kurmak ya da sunmak
PowerPoint’te, birçok grafik tipi tasarlamak için şablonlar sağlayan Ekle işlevi aracılığıyla grafik oluşturabilirsiniz. Aspose.Slides kullanarak hem normal grafikler (popüler grafik tiplerine dayalı) hem de özel grafikler oluşturabilirsiniz.
Not
Grafik oluşturmak için ChartType sınıfını kullanın. Bu sınıftaki alanlar farklı grafik tiplerine karşılık gelir.Küme Sütun Grafikleri Oluşturma
Bu bölüm, Aspose.Slides kullanarak küme sütun grafiği oluşturmayı açıklar. Bir sunumu başlatmayı, bir grafik eklemeyi ve başlık, veri, seriler, kategoriler ve stil gibi öğelerini özelleştirmeyi öğreneceksiniz. Aşağıdaki adımları izleyerek standart bir küme sütun grafiğinin nasıl oluşturulduğunu görebilirsiniz:
- Bir Presentation sınıfının örneğini oluşturun.
- Dizini kullanarak bir slayta referans alın.
- Bazı veri ile bir grafik ekleyin ve
ChartType.ClusteredColumntipini belirtin. - Grafik başlığı ekleyin.
- Grafiğin veri çalışma sayfasına erişin.
- Varsayılan tüm serileri ve kategorileri temizleyin.
- Yeni seriler ve kategoriler ekleyin.
- Grafik serileri için yeni grafik verileri ekleyin.
- Grafik serilerine bir doldurma rengi uygulayın.
- Grafik serilerine etiketler ekleyin.
- Değiştirilmiş sunumu PPTX dosyası olarak kaydedin.
Bu C# kodu, bir küme sütun grafiği oluşturmayı gösterir:
import com.aspose.slides.*;
import java.awt.Color;
// PPTX dosyasını temsil eden bir sunum sınıfını örnekleyerek oluşturur
Presentation pres = new Presentation();
try {
// İlk slayta erişir
ISlide sld = pres.getSlides().get_Item(0);
// Varsayılan verileriyle bir grafik ekler
IChart chart = sld.getShapes().addChart(ChartType.ClusteredColumn, 0, 0, 500, 500);
// Grafik başlığını ayarlar
chart.getChartTitle().addTextFrameForOverriding("Sample Title");
chart.getChartTitle().getTextFrameForOverriding().getTextFrameFormat().setCenterText(NullableBool.True);
chart.getChartTitle().setHeight(20);
chart.setTitle(true);
// Grafik veri sayfası için dizini ayarlar
int defaultWorksheetIndex = 0;
// Grafik veri çalışma sayfasını alır
IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
// Varsayılan oluşturulan serileri ve kategorileri siler
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
int s = chart.getChartData().getSeries().size();
s = chart.getChartData().getCategories().size();
// Yeni seriler ekler
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 1, "Series 1"),chart.getType());
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 2, "Series 2"),chart.getType());
// Yeni kategoriler ekler
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 1, 0, "Caetegoty 1"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 2, 0, "Caetegoty 2"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 3, 0, "Caetegoty 3"));
// İlk grafik serisini alır
IChartSeries series = chart.getChartData().getSeries().get_Item(0);
// Şimdi seri verilerini doldurur
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 1, 20));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 50));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 30));
// Seri için dolgu rengini ayarlar
series.getFormat().getFill().setFillType(FillType.Solid);
series.getFormat().getFill().getSolidFillColor().setColor(Color.RED);
// İkinci grafik serisini alır
series = chart.getChartData().getSeries().get_Item(1);
// Seri verilerini doldurur
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 2, 30));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 2, 10));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 2, 60));
// Seri için dolgu rengini ayarlar
series.getFormat().getFill().setFillType(FillType.Solid);
series.getFormat().getFill().getSolidFillColor().setColor(Color.GREEN);
//Yeni seri için her kategoriye özel etiketler oluşturur
// Sets the first label to show Category name
IDataLabel lbl = series.getDataPoints().get_Item(0).getLabel();
lbl.getDataLabelFormat().setShowCategoryName(true);
lbl = series.getDataPoints().get_Item(1).getLabel();
lbl.getDataLabelFormat().setShowSeriesName(true);
// Üçüncü etiket için değeri gösterir
lbl = series.getDataPoints().get_Item(2).getLabel();
lbl.getDataLabelFormat().setShowValue(true);
lbl.getDataLabelFormat().setShowSeriesName(true);
lbl.getDataLabelFormat().setSeparator("/");
// Grafikli sunumu kaydeder
pres.save("output.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Dağılım Grafikleri Oluşturma
Dağılım grafikleri (scatter plot veya x‑y grafiği olarak da bilinir) genellikle iki değişken arasındaki kalıpları kontrol etmek veya korelasyonları göstermek için kullanılır.
Bir dağılım grafiği kullanın:
- eşleştirilmiş sayısal veriniz varsa
- birbiriyle iyi eşleşen iki değişkeniniz varsa
- iki değişkenin ilişkili olup olmadığını belirlemek istiyorsanız
- bağımlı bir değişken için birden çok değer içeren bağımsız bir değişkeniniz varsa
- Küme Sütun Grafikleri Oluşturma bölümündeki adımları izleyin.
- Üçüncü adımda, bir grafik ekleyin ve grafik tipinizi aşağıdakilerden biri olarak belirtin:
- ChartType.ScatterWithMarkers - Dağılım grafiği temsil eder.
- ChartType.ScatterWithSmoothLinesAndMarkers - Eğrilerle bağlanmış, veri işaretçileri olan dağılım grafiği temsil eder.
- ChartType.ScatterWithSmoothLines - Eğrilerle bağlanmış, veri işaretçileri olmayan dağılım grafiği temsil eder.
- ChartType.ScatterWithStraightLinesAndMarkers - Çizgilerle bağlanmış, veri işaretçileri olan dağılım grafiği temsil eder.
- ChartType.ScatterWithStraightLines - Çizgilerle bağlanmış, veri işaretçileri olmayan dağılım grafiği temsil eder.
Bu Java kodu, her seri için farklı işaretçili bir dağılım grafiği oluşturmayı gösterir:
import com.aspose.slides.*;
// PPTX dosyasını temsil eden bir sunum sınıfını örnekler
Presentation pres = new Presentation();
try {
// İlk slayta erişir
ISlide slide = pres.getSlides().get_Item(0);
// Varsayılan grafiği oluşturur
IChart chart = slide.getShapes().addChart(ChartType.ScatterWithSmoothLines, 0, 0, 400, 400);
// Varsayılan grafik veri çalışma sayfası dizinini alır
int defaultWorksheetIndex = 0;
// Grafik veri çalışma sayfasını alır
IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
// Demo serisini siler
chart.getChartData().getSeries().clear();
// Yeni seriler ekler
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 1, 1, "Series 1"), chart.getType());
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 1, 3, "Series 2"), chart.getType());
// İlk grafik serisini alır
IChartSeries series = chart.getChartData().getSeries().get_Item(0);
// Seriye yeni bir nokta (1:3) ekler
series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 1), fact.getCell(defaultWorksheetIndex, 2, 2, 3));
// Yeni bir nokta (2:10) ekler
series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 2), fact.getCell(defaultWorksheetIndex, 3, 2, 10));
// Serinin tipini değiştirir
series.setType(ChartType.ScatterWithStraightLinesAndMarkers);
// Grafik serisi işaretçisini değiştirir
series.getMarker().setSize(10);
series.getMarker().setSymbol(MarkerStyleType.Star);
// İkinci grafik serisini alır
series = chart.getChartData().getSeries().get_Item(1);
// Orada yeni bir nokta (5:2) ekler
series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 2, 3, 5), fact.getCell(defaultWorksheetIndex, 2, 4, 2));
// Yeni bir nokta (3:1) ekler
series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 3, 3, 3), fact.getCell(defaultWorksheetIndex, 3, 4, 1));
// Yeni bir nokta (2:2) ekler
series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 4, 3, 2), fact.getCell(defaultWorksheetIndex, 4, 4, 2));
// Yeni bir nokta (5:1) ekler
series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 5, 3, 5), fact.getCell(defaultWorksheetIndex, 5, 4, 1));
// Grafik serisi işaretçisini değiştirir
series.getMarker().setSize(10);
series.getMarker().setSymbol(MarkerStyleType.Circle);
pres.save("AsposeChart_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Pasta Grafikleri Oluşturma
Pasta grafikleri, özellikle veri kategorik etiketlerle sayısal değerler içerdiğinde, parçanın bütüne oranını göstermek için en iyisidir. Ancak, veriniz çok fazla parça veya etiket içeriyorsa, çubuk grafiği tercih edebilirsiniz.
- Bir Presentation sınıfının örneğini oluşturun.
- Dizini kullanarak bir slayta referans alın.
- Varsayılan veri ile bir grafik ekleyin ve ChartType.Pie tipini belirtin.
- Grafik veri çalışma kitabı IChartDataWorkbook erişin.
- Varsayılan serileri ve kategorileri temizleyin.
- Yeni seriler ve kategoriler ekleyin.
- Grafik serileri için yeni grafik verileri ekleyin.
- Pasta dilimlerinin renklerini özelleştirerek yeni puanlar ekleyin.
- Seriler için etiketler ayarlayın.
- Seri etiketleri için lider çizgileri etkinleştirin.
- Pasta dilimlerinin döndürme açısını ayarlayın.
- Değiştirilmiş sunumu PPTX dosyası olarak kaydedin.
Bu Java kodu, bir pasta grafiği oluşturmayı gösterir:
import com.aspose.slides.*;
import java.awt.Color;
// PPTX dosyasını temsil eden bir sunum sınıfını örnekler
Presentation pres = new Presentation();
try {
// İlk slayta erişir
ISlide slides = pres.getSlides().get_Item(0);
// Varsayılan verilerle bir grafik ekler
IChart chart = slides.getShapes().addChart(ChartType.Pie, 100, 100, 400, 400);
// Grafik başlığını ayarlar
chart.getChartTitle().addTextFrameForOverriding("Sample Title");
chart.getChartTitle().getTextFrameForOverriding().getTextFrameFormat().setCenterText(NullableBool.True);
chart.getChartTitle().setHeight(20);
chart.setTitle(true);
// Grafik veri sayfası için dizini ayarlar
int defaultWorksheetIndex = 0;
// Grafik veri çalışma sayfasını alır
IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
// Varsayılan oluşturulan serileri ve kategorileri siler
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
// Yeni kategoriler ekler
chart.getChartData().getCategories().add(fact.getCell(0, 1, 0, "First Qtr"));
chart.getChartData().getCategories().add(fact.getCell(0, 2, 0, "2nd Qtr"));
chart.getChartData().getCategories().add(fact.getCell(0, 3, 0, "3rd Qtr"));
// Yeni seriler ekler
IChartSeries series = chart.getChartData().getSeries().add(fact.getCell(0, 0, 1, "Series 1"), chart.getType());
//Serinin verilerini doldurur
series.getDataPoints().addDataPointForPieSeries(fact.getCell(defaultWorksheetIndex, 1, 1, 20));
series.getDataPoints().addDataPointForPieSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 50));
series.getDataPoints().addDataPointForPieSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 30));
// Yeni sürümde çalışmıyor
// Yeni noktalar ekleniyor ve sektör rengi ayarlanıyor
// series.IsColorVaried = true;
chart.getChartData().getSeriesGroups().get_Item(0).setColorVaried(true);
IChartDataPoint point = series.getDataPoints().get_Item(0);
point.getFormat().getFill().setFillType(FillType.Solid);
point.getFormat().getFill().getSolidFillColor().setColor(Color.CYAN);
// Sektör kenarlığını ayarlar
point.getFormat().getLine().getFillFormat().setFillType(FillType.Solid);
point.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.GRAY);
point.getFormat().getLine().setWidth(3.0);
point.getFormat().getLine().setStyle(LineStyle.ThinThick);
point.getFormat().getLine().setDashStyle(LineDashStyle.DashDot);
IChartDataPoint point1 = series.getDataPoints().get_Item(1);
point1.getFormat().getFill().setFillType(FillType.Solid);
point1.getFormat().getFill().getSolidFillColor().setColor(Color.ORANGE);
// Sektör kenarlığını ayarlar
point1.getFormat().getLine().getFillFormat().setFillType(FillType.Solid);
point1.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
point1.getFormat().getLine().setWidth(3.0);
point1.getFormat().getLine().setStyle(LineStyle.Single);
point1.getFormat().getLine().setDashStyle(LineDashStyle.LargeDashDot);
IChartDataPoint point2 = series.getDataPoints().get_Item(2);
point2.getFormat().getFill().setFillType(FillType.Solid);
point2.getFormat().getFill().getSolidFillColor().setColor(Color.YELLOW);
// Sektör kenarlığını ayarlar
point2.getFormat().getLine().getFillFormat().setFillType(FillType.Solid);
point2.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.RED);
point2.getFormat().getLine().setWidth(2.0);
point2.getFormat().getLine().setStyle(LineStyle.ThinThin);
point2.getFormat().getLine().setDashStyle(LineDashStyle.LargeDashDotDot);
// Yeni seri için her kategoriye özel etiketler oluşturur
IDataLabel lbl1 = series.getDataPoints().get_Item(0).getLabel();
// lbl.ShowCategoryName = true;
lbl1.getDataLabelFormat().setShowValue(true);
IDataLabel lbl2 = series.getDataPoints().get_Item(1).getLabel();
lbl2.getDataLabelFormat().setShowValue(true);
lbl2.getDataLabelFormat().setShowLegendKey(true);
lbl2.getDataLabelFormat().setShowPercentage(true);
IDataLabel lbl3 = series.getDataPoints().get_Item(2).getLabel();
lbl3.getDataLabelFormat().setShowSeriesName(true);
lbl3.getDataLabelFormat().setShowPercentage(true);
// Grafik için Lider Çizgileri gösterir
series.getLabels().getDefaultDataLabelFormat().setShowLeaderLines(true);
// Pasta Grafik Dilimlerinin Döndürme Açısını ayarlar
chart.getChartData().getSeriesGroups().get_Item(0).setFirstSliceAngle(180);
// Grafikli sunumu kaydeder
pres.save("PieChart_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Çizgi Grafikleri Oluşturma
Çizgi grafikleri (line graph olarak da bilinir) zaman içinde değer değişimini göstermek istediğiniz durumlar için en iyisidir. Çizgi grafiği kullanarak büyük miktarda veriyi aynı anda karşılaştırabilir, zaman içindeki değişimleri ve trendleri izleyebilir, veri serilerindeki anormallikleri vurgulayabilir ve daha fazlasını yapabilirsiniz.
- Bir Presentation sınıfının örneğini oluşturun.
- Dizini kullanarak bir slayta referans alın.
- Varsayılan veri ile bir grafik ekleyin ve ChartType.Line tipini belirtin.
- Değiştirilmiş sunumu PPTX dosyası olarak kaydedin.
Bu Java kodu, bir çizgi grafiği oluşturmayı gösterir:
import com.aspose.slides.*;
Presentation pres = new Presentation();
try {
IChart lineChart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Line, 10, 50, 600, 350);
pres.save("lineChart.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Varsayılan olarak, bir çizgi grafiğindeki noktalar düz sürekli çizgilerle birleştirilir. Noktaların kesikli çizgilerle birleştirilmesini isterseniz, tercih ettiğiniz tire tipini aşağıdaki gibi belirtebilirsiniz:
import com.aspose.slides.*;
Presentation pres = new Presentation();
try {
IChart lineChart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Line, 10, 50, 600, 350);
for (IChartSeries series : lineChart.getChartData().getSeries())
{
series.getFormat().getLine().setDashStyle(LineDashStyle.Dash);
}
} finally {
if (pres != null) pres.dispose();
}
Ağaç Haritası Grafiklerini Oluşturma
Ağaç haritası grafikleri, satış verileri için her kategori içinde büyük katkıda bulunan öğelere hızlı bir şekilde dikkat çekmek ve veri kategorilerinin göreceli boyutlarını göstermek istediğinizde en iyisidir.
- Bir Presentation sınıfının örneğini oluşturun.
- Dizini kullanarak bir slayta referans alın.
- Varsayılan veri ile bir grafik ekleyin ve ChartType.Treemap tipini belirtin.
- Grafik veri çalışma kitabı IChartDataWorkbook erişin.
- Varsayılan serileri ve kategorileri temizleyin.
- Yeni seriler ve kategoriler ekleyin.
- Grafik serileri için yeni grafik verileri ekleyin.
- Değiştirilmiş sunumu PPTX dosyası olarak kaydedin.
Bu Java kodu, bir ağaç haritası grafiği oluşturmayı gösterir:
import com.aspose.slides.*;
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Treemap, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
//dal 1
IChartCategory leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C1", "Leaf1"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem1");
leaf.getGroupingLevels().setGroupingItem(2, "Branch1");
chart.getChartData().getCategories().add(wb.getCell(0, "C2", "Leaf2"));
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C3", "Leaf3"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem2");
chart.getChartData().getCategories().add(wb.getCell(0, "C4", "Leaf4"));
//dal 2
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C5", "Leaf5"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem3");
leaf.getGroupingLevels().setGroupingItem(2, "Branch2");
chart.getChartData().getCategories().add(wb.getCell(0, "C6", "Leaf6"));
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C7", "Leaf7"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem4");
chart.getChartData().getCategories().add(wb.getCell(0, "C8", "Leaf8"));
IChartSeries series = chart.getChartData().getSeries().add(ChartType.Treemap);
series.getLabels().getDefaultDataLabelFormat().setShowCategoryName(true);
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D1", 4));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D2", 5));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D3", 3));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D4", 6));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D5", 9));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D6", 9));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D7", 4));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D8", 3));
series.setParentLabelLayout(ParentLabelLayoutType.Overlapping);
pres.save("Treemap.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Hisse Senedi Grafiklerini Oluşturma
- Bir Presentation sınıfının örneğini oluşturun.
- Dizini kullanarak bir slayta referans alın.
- Varsayılan veri ile bir grafik ekleyin ve ChartType.OpenHighLowClose tipini belirtin.
- Grafik veri çalışma kitabı IChartDataWorkbook erişin.
- Varsayılan serileri ve kategorileri temizleyin.
- Yeni seriler ve kategoriler ekleyin.
- Grafik serileri için yeni grafik verileri ekleyin.
- Yüksek-düşük çizgi biçimini belirtin.
- Değiştirilmiş sunumu PPTX dosyası olarak kaydedin.
Bu Java kodu, bir hisse senedi grafiği oluşturmayı gösterir:
import com.aspose.slides.*;
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.OpenHighLowClose, 50, 50, 600, 400, false);
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();
chart.getChartData().getCategories().add(wb.getCell(0, 1, 0, "A"));
chart.getChartData().getCategories().add(wb.getCell(0, 2, 0, "B"));
chart.getChartData().getCategories().add(wb.getCell(0, 3, 0, "C"));
chart.getChartData().getSeries().add(wb.getCell(0, 0, 1, "Open"), chart.getType());
chart.getChartData().getSeries().add(wb.getCell(0, 0, 2, "High"), chart.getType());
chart.getChartData().getSeries().add(wb.getCell(0, 0, 3, "Low"), chart.getType());
chart.getChartData().getSeries().add(wb.getCell(0, 0, 4, "Close"), chart.getType());
IChartSeries series = chart.getChartData().getSeries().get_Item(0);
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 1, 1, 72));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 2, 1, 25));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 3, 1, 38));
series = chart.getChartData().getSeries().get_Item(1);
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 1, 2, 172));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 2, 2, 57));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 3, 2, 57));
series = chart.getChartData().getSeries().get_Item(2);
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 1, 3, 12));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 2, 3, 12));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 3, 3, 13));
series = chart.getChartData().getSeries().get_Item(3);
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 1, 4, 25));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 2, 4, 38));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 3, 4, 50));
chart.getChartData().getSeriesGroups().get_Item(0).getUpDownBars().setUpDownBars(true);
chart.getChartData().getSeriesGroups().get_Item(0).getHiLowLinesFormat().getLine().getFillFormat().setFillType(FillType.Solid);
for (IChartSeries ser : chart.getChartData().getSeries())
{
ser.getFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
}
pres.save("output.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Kutu ve Bıyık Grafiklerini Oluşturma
- Bir Presentation sınıfının örneğini oluşturun.
- Dizini kullanarak bir slayta referans alın.
- Varsayılan veri ile bir grafik ekleyin ve ChartType.BoxAndWhisker tipini belirtin.
- Grafik veri çalışma kitabı IChartDataWorkbook erişin.
- Varsayılan serileri ve kategorileri temizleyin.
- Yeni seriler ve kategoriler ekleyin.
- Grafik serileri için yeni grafik verileri ekleyin.
- Değiştirilmiş sunumu PPTX dosyası olarak kaydedin.
Bu Java kodu, bir kutu ve bıyık grafiği oluşturmayı gösterir:
import com.aspose.slides.*;
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.BoxAndWhisker, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
chart.getChartData().getCategories().add(wb.getCell(0, "A1", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A2", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A3", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A4", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A5", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A6", "Category 1"));
IChartSeries series = chart.getChartData().getSeries().add(ChartType.BoxAndWhisker);
series.setQuartileMethod(QuartileMethodType.Exclusive);
series.setShowMeanLine(true);
series.setShowMeanMarkers(true);
series.setShowInnerPoints(true);
series.setShowOutlierPoints(true);
series.getDataPoints().addDataPointForBoxAndWhiskerSeries(wb.getCell(0, "B1", 15));
series.getDataPoints().addDataPointForBoxAndWhiskerSeries(wb.getCell(0, "B2", 41));
series.getDataPoints().addDataPointForBoxAndWhiskerSeries(wb.getCell(0, "B3", 16));
series.getDataPoints().addDataPointForBoxAndWhiskerSeries(wb.getCell(0, "B4", 10));
series.getDataPoints().addDataPointForBoxAndWhiskerSeries(wb.getCell(0, "B5", 23));
series.getDataPoints().addDataPointForBoxAndWhiskerSeries(wb.getCell(0, "B6", 16));
pres.save("BoxAndWhisker.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Huni Grafiklerini Oluşturma
- Bir Presentation sınıfının örneğini oluşturun.
- Dizini kullanarak bir slayta referans alın.
- Varsayılan veri ile bir grafik ekleyin ve ChartType.Funnel tipini belirtin.
- Değiştirilmiş sunumu PPTX dosyası olarak kaydedin.
Bu Java kodu, bir huni grafiği oluşturmayı gösterir:
import com.aspose.slides.*;
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Funnel, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
chart.getChartData().getCategories().add(wb.getCell(0, "A1", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A2", "Category 2"));
chart.getChartData().getCategories().add(wb.getCell(0, "A3", "Category 3"));
chart.getChartData().getCategories().add(wb.getCell(0, "A4", "Category 4"));
chart.getChartData().getCategories().add(wb.getCell(0, "A5", "Category 5"));
chart.getChartData().getCategories().add(wb.getCell(0, "A6", "Category 6"));
IChartSeries series = chart.getChartData().getSeries().add(ChartType.Funnel);
series.getDataPoints().addDataPointForFunnelSeries(wb.getCell(0, "B1", 50));
series.getDataPoints().addDataPointForFunnelSeries(wb.getCell(0, "B2", 100));
series.getDataPoints().addDataPointForFunnelSeries(wb.getCell(0, "B3", 200));
series.getDataPoints().addDataPointForFunnelSeries(wb.getCell(0, "B4", 300));
series.getDataPoints().addDataPointForFunnelSeries(wb.getCell(0, "B5", 400));
series.getDataPoints().addDataPointForFunnelSeries(wb.getCell(0, "B6", 500));
pres.save("Funnel.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Güneş Patlaması (Sunburst) Grafiklerini Oluşturma
- Bir Presentation sınıfının örneğini oluşturun.
- Dizini kullanarak bir slayta referans alın.
- Varsayılan veri ile bir grafik ekleyin ve ChartType.Sunburst tipini belirtin.
- Değiştirilmiş sunumu PPTX dosyası olarak kaydedin.
Bu Java kodu, bir güneş patlaması grafiği oluşturmayı gösterir:
import com.aspose.slides.*;
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Sunburst, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
//dal 1
IChartCategory leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C1", "Leaf1"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem1");
leaf.getGroupingLevels().setGroupingItem(2, "Branch1");
chart.getChartData().getCategories().add(wb.getCell(0, "C2", "Leaf2"));
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C3", "Leaf3"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem2");
chart.getChartData().getCategories().add(wb.getCell(0, "C4", "Leaf4"));
//dal 2
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C5", "Leaf5"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem3");
leaf.getGroupingLevels().setGroupingItem(2, "Branch2");
chart.getChartData().getCategories().add(wb.getCell(0, "C6", "Leaf6"));
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C7", "Leaf7"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem4");
chart.getChartData().getCategories().add(wb.getCell(0, "C8", "Leaf8"));
IChartSeries series = chart.getChartData().getSeries().add(ChartType.Sunburst);
series.getLabels().getDefaultDataLabelFormat().setShowCategoryName(true);
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D1", 4));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D2", 5));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D3", 3));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D4", 6));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D5", 9));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D6", 9));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D7", 4));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D8", 3));
pres.save("Sunburst.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Histogram Grafiklerini Oluşturma
- Bir Presentation sınıfının örneğini oluşturun.
- Dizini kullanarak bir slayta referans alın.
- Varsayılan veri ile bir grafik ekleyin ve ChartType.Histogram tipini belirtin.
- Grafik veri çalışma kitabı IChartDataWorkbook erişin.
- Varsayılan serileri ve kategorileri temizleyin.
- Yeni seriler ve kategoriler ekleyin.
- Değiştirilmiş sunumu PPTX dosyası olarak kaydedin.
Bu Java kodu, bir histogram grafiği oluşturmayı gösterir:
import com.aspose.slides.*;
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Histogram, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
IChartSeries series = chart.getChartData().getSeries().add(ChartType.Histogram);
series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A1", 15));
series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A2", -41));
series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A3", 16));
series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A4", 10));
series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A5", -23));
series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A6", 16));
chart.getAxes().getHorizontalAxis().setAggregationType(AxisAggregationType.Automatic);
pres.save("Histogram.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Radar Grafiklerini Oluşturma
- Bir Presentation sınıfının örneğini oluşturun.
- Dizini kullanarak bir slayta referans alın.
- Bazı veri ile bir grafik ekleyin ve tercih ettiğiniz grafik tipini (ChartType.Radar bu örnekte) belirtin.
- Değiştirilmiş sunumu PPTX dosyası olarak kaydedin.
Bu Java kodu, bir radar grafiği oluşturmayı gösterir:
import com.aspose.slides.*;
Presentation pres = new Presentation();
try {
pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Radar, 20, 20, 400, 300);
pres.save("Radar-chart.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Çok Kategorili Grafikler Oluşturma
- Bir Presentation sınıfının örneğini oluşturun.
- Dizini kullanarak bir slayta referans alın.
- Varsayılan veri ile bir grafik ekleyin ve ChartType.ClusteredColumn tipini belirtin.
- Grafik veri çalışma kitabı IChartDataWorkbook erişin.
- Varsayılan serileri ve kategorileri temizleyin.
- Yeni seriler ve kategoriler ekleyin.
- Grafik serileri için yeni grafik verileri ekleyin.
- Değiştirilmiş sunumu PPTX dosyası olarak kaydedin.
Bu Java kodu, çok kategorili bir grafik oluşturmayı gösterir:
import com.aspose.slides.*;
Presentation pres = new Presentation();
try {
IChart ch = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.ClusteredColumn, 100, 100, 600, 450);
ch.getChartData().getSeries().clear();
ch.getChartData().getCategories().clear();
IChartDataWorkbook fact = ch.getChartData().getChartDataWorkbook();
fact.clear(0);
int defaultWorksheetIndex = 0;
IChartCategory category = ch.getChartData().getCategories().add(fact.getCell(0, "c2", "A"));
category.getGroupingLevels().setGroupingItem(1, "Group1");
category = ch.getChartData().getCategories().add(fact.getCell(0, "c3", "B"));
category = ch.getChartData().getCategories().add(fact.getCell(0, "c4", "C"));
category.getGroupingLevels().setGroupingItem(1, "Group2");
category = ch.getChartData().getCategories().add(fact.getCell(0, "c5", "D"));
category = ch.getChartData().getCategories().add(fact.getCell(0, "c6", "E"));
category.getGroupingLevels().setGroupingItem(1, "Group3");
category = ch.getChartData().getCategories().add(fact.getCell(0, "c7", "F"));
category = ch.getChartData().getCategories().add(fact.getCell(0, "c8", "G"));
category.getGroupingLevels().setGroupingItem(1, "Group4");
category = ch.getChartData().getCategories().add(fact.getCell(0, "c9", "H"));
// Seri ekleniyor
IChartSeries series = ch.getChartData().getSeries().add(fact.getCell(0, "D1", "Series 1"),
ChartType.ClusteredColumn);
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D2", 10));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D3", 20));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D4", 30));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D5", 40));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D6", 50));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D7", 60));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D8", 70));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D9", 80));
// Grafikli sunumu kaydet
pres.save("AsposeChart_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Harita Grafiklerini Oluşturma
Harita grafikleri coğrafi verileri görselleştirir ve bölgeler arasındaki değerleri karşılaştırmanıza yardımcı olur.
Bu Java kodu, bir harita grafiği oluşturmayı gösterir:
import com.aspose.slides.*;
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Map, 50, 50, 500, 400);
pres.save("mapChart.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Kombinasyon Grafiklerini Oluşturma
Kombinasyon grafiği (veya combo grafiği), tek bir grafikte iki ya da daha fazla grafik tipini birleştirir. Bu grafik, iki ya da daha fazla veri kümesini vurgulamanıza, karşılaştırmanıza veya farklarını incelemenize olanak tanır ve aralarındaki ilişkileri tanımlamanıza yardımcı olur.

Aşağıdaki Java kodu, yukarıda gösterilen kombinasyon grafiğini bir PowerPoint sunumunda oluşturmayı gösterir:
import com.aspose.slides.*;
import java.awt.Color;
static void createComboChart() {
Presentation presentation = new Presentation();
ISlide slide = presentation.getSlides().get_Item(0);
try {
IChart chart = createChartWithFirstSeries(slide);
addSecondSeriesToChart(chart);
addThirdSeriesToChart(chart);
setPrimaryAxesFormat(chart);
setSecondaryAxesFormat(chart);
presentation.save("combo-chart.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
}
static IChart createChartWithFirstSeries(ISlide slide) {
IChart chart = slide.getShapes().addChart(ChartType.ClusteredColumn, 50, 50, 600, 400);
// Grafik başlığını ayarlar.
chart.setTitle(true);
chart.getChartTitle().addTextFrameForOverriding("Chart Title");
chart.getChartTitle().setOverlay(false);
IParagraph titleParagraph = chart.getChartTitle().getTextFrameForOverriding().getParagraphs().get_Item(0);
IPortionFormat titleFormat = titleParagraph.getParagraphFormat().getDefaultPortionFormat();
titleFormat.setFontBold(NullableBool.False);
titleFormat.setFontHeight(18f);
// Grafik lejandını ayarlar.
chart.getLegend().setPosition(LegendPositionType.Bottom);
chart.getLegend().getTextFormat().getPortionFormat().setFontHeight(12f);
// Varsayılan oluşturulan serileri ve kategorileri siler.
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
int worksheetIndex = 0;
IChartDataWorkbook workbook = chart.getChartData().getChartDataWorkbook();
// Yeni kategoriler ekler.
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 1, 0, "Category 1"));
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 2, 0, "Category 2"));
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 3, 0, "Category 3"));
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 4, 0, "Category 4"));
// İlk seriyi ekler.
IChartDataCell seriesNameCell = workbook.getCell(worksheetIndex, 0, 1, "Series 1");
IChartSeries series = chart.getChartData().getSeries().add(seriesNameCell, chart.getType());
series.getParentSeriesGroup().setOverlap((byte)-25);
series.getParentSeriesGroup().setGapWidth(220);
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 1, 1, 4.3));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 2, 1, 2.5));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 3, 1, 3.5));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 4, 1, 4.5));
return chart;
}
static void addSecondSeriesToChart(IChart chart) {
IChartDataWorkbook workbook = chart.getChartData().getChartDataWorkbook();
final int worksheetIndex = 0;
IChartDataCell seriesNameCell = workbook.getCell(worksheetIndex, 0, 2, "Series 2");
IChartSeries series = chart.getChartData().getSeries().add(seriesNameCell, ChartType.ClusteredColumn);
series.getParentSeriesGroup().setOverlap((byte)-25);
series.getParentSeriesGroup().setGapWidth(220);
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 1, 2, 2.4));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 2, 2, 4.4));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 3, 2, 1.8));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 4, 2, 2.8));
}
static void addThirdSeriesToChart(IChart chart) {
IChartDataWorkbook workbook = chart.getChartData().getChartDataWorkbook();
final int worksheetIndex = 0;
IChartDataCell seriesNameCell = workbook.getCell(worksheetIndex, 0, 3, "Series 3");
IChartSeries series = chart.getChartData().getSeries().add(seriesNameCell, ChartType.Line);
series.getDataPoints().addDataPointForLineSeries(workbook.getCell(worksheetIndex, 1, 3, 2.0));
series.getDataPoints().addDataPointForLineSeries(workbook.getCell(worksheetIndex, 2, 3, 2.0));
series.getDataPoints().addDataPointForLineSeries(workbook.getCell(worksheetIndex, 3, 3, 3.0));
series.getDataPoints().addDataPointForLineSeries(workbook.getCell(worksheetIndex, 4, 3, 5.0));
series.setPlotOnSecondAxis(true);
}
static void setPrimaryAxesFormat(IChart chart) {
// Yatay ekseni ayarlar.
IAxis horizontalAxis = chart.getAxes().getHorizontalAxis();
horizontalAxis.getTextFormat().getPortionFormat().setFontHeight(12f);
horizontalAxis.getFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
setAxisTitle(horizontalAxis, "X Axis");
// Dikey ekseni ayarlar.
IAxis verticalAxis = chart.getAxes().getVerticalAxis();
verticalAxis.getTextFormat().getPortionFormat().setFontHeight(12f);
verticalAxis.getFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
setAxisTitle(verticalAxis, "Y Axis 1");
// Dikey ana ızgara çizgilerinin renkini ayarlar.
ILineFillFormat majorGridLinesFormat = verticalAxis.getMajorGridLinesFormat().getLine().getFillFormat();
majorGridLinesFormat.setFillType(FillType.Solid);
majorGridLinesFormat.getSolidFillColor().setColor(new Color(217, 217, 217));
}
static void setSecondaryAxesFormat(IChart chart) {
// İkincil yatay ekseni ayarlar.
IAxis secondaryHorizontalAxis = chart.getAxes().getSecondaryHorizontalAxis();
secondaryHorizontalAxis.setPosition(AxisPositionType.Bottom);
secondaryHorizontalAxis.setCrossType(CrossesType.Maximum);
secondaryHorizontalAxis.setVisible(false);
secondaryHorizontalAxis.getMajorGridLinesFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
secondaryHorizontalAxis.getMinorGridLinesFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
// İkincil dikey ekseni ayarlar.
IAxis secondaryVerticalAxis = chart.getAxes().getSecondaryVerticalAxis();
secondaryVerticalAxis.setPosition(AxisPositionType.Right);
secondaryVerticalAxis.getTextFormat().getPortionFormat().setFontHeight(12f);
secondaryVerticalAxis.getFormat().getLine().setFillType(FillType.NoFill);
secondaryVerticalAxis.getMajorGridLinesFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
secondaryVerticalAxis.getMinorGridLinesFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
setAxisTitle(secondaryVerticalAxis, "Y Axis 2");
}
static void setAxisTitle(IAxis axis, String axisTitle) {
axis.setTitle(true);
axis.getTitle().setOverlay(false);
IParagraph titleParagraph = axis.getTitle().addTextFrameForOverriding(axisTitle).getParagraphs().get_Item(0);
IPortionFormat titleFormat = titleParagraph.getParagraphFormat().getDefaultPortionFormat();
titleFormat.setFontBold(NullableBool.False);
titleFormat.setFontHeight(12f);
}
Grafikleri Güncelleme
- Güncellemek istediğiniz grafiği içeren sunumu temsil eden bir Presentation sınıfının örneğini oluşturun.
- Dizini kullanarak bir slayta referans alın.
- İstenen grafiği bulmak için tüm şekilleri dolaşın.
- Grafik veri çalışma sayfasına erişin.
- Seri değerlerini değiştirerek grafik veri serilerini düzenleyin.
- Yeni bir seri ekleyin ve verilerini doldurun.
- Değiştirilmiş sunumu PPTX dosyası olarak kaydedin.
Bu Java kodu, bir grafiği güncellemeyi gösterir:
import com.aspose.slides.*;
// Güncellenmesi gereken grafiği içeren sunumu açar
Presentation pres = new Presentation("ExistingChart.pptx");
try {
// İlk slayta erişir
ISlide sld = pres.getSlides().get_Item(0);
// Slayttan grafiği alır
IChart chart = (IChart)sld.getShapes().get_Item(0);
// Grafik veri sayfasının dizinini ayarlar
int defaultWorksheetIndex = 0;
// Grafik veri çalışma sayfasını alır
IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
// Grafik kategori adını değiştirir
fact.getCell(defaultWorksheetIndex, 1, 0, "Modified Category 1");
fact.getCell(defaultWorksheetIndex, 2, 0, "Modified Category 2");
// İlk grafik serisini alır
IChartSeries series = chart.getChartData().getSeries().get_Item(0);
// Şimdi seri verilerini güncelliyor
fact.getCell(defaultWorksheetIndex, 0, 1, "New_Series1"); // Seri adını değiştiriyor
series.getDataPoints().get_Item(0).getValue().setData(90);
series.getDataPoints().get_Item(1).getValue().setData(123);
series.getDataPoints().get_Item(2).getValue().setData(44);
// İkinci grafik serisini alır
series = chart.getChartData().getSeries().get_Item(1);
// Şimdi seri verilerini güncelliyor
fact.getCell(defaultWorksheetIndex, 0, 2, "New_Series2"); // Seri adını değiştiriyor
series.getDataPoints().get_Item(0).getValue().setData(23);
series.getDataPoints().get_Item(1).getValue().setData(67);
series.getDataPoints().get_Item(2).getValue().setData(99);
// Şimdi yeni bir seri ekliyor
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 3, "Series 3"), chart.getType());
// Üçüncü grafik serisini alır
series = chart.getChartData().getSeries().get_Item(2);
// Şimdi seri verilerini dolduruyor
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 3, 20));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 3, 50));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 3, 30));
chart.setType(ChartType.ClusteredCylinder);
// Grafikli sunumu kaydeder
pres.save("AsposeChartModified_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Bir Grafik İçin Veri Aralığını Ayarlama
Bir grafik için veri aralığını ayarlamak için şu adımları izleyin:
- Grafiği içeren sunumu temsil eden bir Presentation sınıfının örneğini oluşturun.
- Dizini kullanarak bir slayta referans alın.
- İstenen grafiği bulmak için tüm şekilleri dolaşın.
- Grafik verilerine erişin ve aralığı ayarlayın.
- Değiştirilmiş sunumu PPTX dosyası olarak kaydedin.
Bu Java kodu, bir grafik için veri aralığını ayarlamayı gösterir:
import com.aspose.slides.*;
// Grafiği içeren sunumu açar
Presentation pres = new Presentation("ExistingChart.pptx");
try {
ISlide slide = pres.getSlides().get_Item(0);
IChart chart = (IChart)slide.getShapes().get_Item(0);
chart.getChartData().setRange("Sheet1!A1:B4");
pres.save("SetDataRange_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Grafiklerde Varsayılan İşaretçileri Kullanma
Grafiklerde varsayılan işaretçileri kullandığınızda, her grafik serisi otomatik olarak farklı bir işaretçi sembolü alır.
Bu Java kodu, bir grafik serisi işaretçisini otomatik olarak ayarlamayı gösterir:
import com.aspose.slides.*;
// Grafiği içeren sunumu açar
Presentation pres = new Presentation();
try {
ISlide slide = pres.getSlides().get_Item(0);
IChart chart = slide.getShapes().addChart(ChartType.LineWithMarkers, 10, 10, 400, 400);
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
chart.getChartData().getSeries().add(fact.getCell(0, 0, 1, "Series 1"), chart.getType());
IChartSeries series = chart.getChartData().getSeries().get_Item(0);
chart.getChartData().getCategories().add(fact.getCell(0, 1, 0, "C1"));
series.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 1, 1, 24));
chart.getChartData().getCategories().add(fact.getCell(0, 2, 0, "C2"));
series.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 2, 1, 23));
chart.getChartData().getCategories().add(fact.getCell(0, 3, 0, "C3"));
series.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 3, 1, -10));
chart.getChartData().getCategories().add(fact.getCell(0, 4, 0, "C4"));
series.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 4, 1, null));
chart.getChartData().getSeries().add(fact.getCell(0, 0, 2, "Series 2"), chart.getType());
// İkinci grafik serisini al
IChartSeries series2 = chart.getChartData().getSeries().get_Item(1);
// Şimdi seri verilerini dolduruyor
series2.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 1, 2, 30));
series2.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 2, 2, 10));
series2.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 3, 2, 60));
series2.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 4, 2, 40));
chart.setLegend(true);
chart.getLegend().setOverlay(false);
pres.save("DefaultMarkersInChart.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
SSS
Aspose.Slides hangi grafik tiplerini destekliyor?
Aspose.Slides, çubuk, çizgi, pasta, alan, dağılım, histogram, radar ve daha birçok grafik tipi dahil geniş bir yelpazeyi destekler. Bu esneklik, veri görselleştirme ihtiyaçlarınıza en uygun grafik tipini seçmenizi sağlar.
Bir slayda yeni bir grafik nasıl eklenir?
Bir grafik eklemek için önce bir Presentation sınıfının örneğini oluşturur, istediğiniz slaytı dizin kullanarak alır ve ardından grafik ekleme metodunu çağırarak grafik tipini ve başlangıç verilerini belirtirsiniz. Bu işlem, grafiği doğrudan sunumunuza entegre eder.
Bir grafikte gösterilen veriler nasıl güncellenir?
Grafiğin verilerini, veri çalışma kitabına (IChartDataWorkbook) erişerek, varsayılan serileri ve kategorileri temizleyip kendi özel verilerinizi ekleyerek güncelleyebilirsiniz. Bu sayede grafik, en son verileri yansıtacak şekilde yenilenir.
Grafiğin görünümü özelleştirilebilir mi?
Evet, Aspose.Slides kapsamlı özelleştirme seçenekleri sunar. Renkler, yazı tipleri, etiketler, açıklamalar ve diğer biçimlendirme öğeleri gibi öğeleri değiştirerek grafiğin görünümünü tasarım gereksinimlerinize göre şekillendirebilirsiniz.