powerpoint ppt C# ile grafikler oluşturun

Grafikler, PowerPoint sunumlarındaki verileri özetlemek ve görsel olarak temsil etmek için kullanılır. Bu nedenle PowerPoint, verileri görselleştirmek için çok çeşitli grafik türleri sağlar. Bunların arasında en sık kullanılan grafik türleri arasında pasta grafikler, çizgi grafikler, çubuk grafikler, histogramlar, stok grafikler vb. yer alır. Bu makalede, C# kullanarak PowerPoint sunumlarında bu grafikleri nasıl oluşturacağınızı öğreneceksiniz.

PowerPoint’te Grafikler Oluşturmak için C# API’si

Aspose.Slides for .NET, .NET uygulamalarının içinden PowerPoint sunumları oluşturmanıza ve yönetmenize izin veren bir C# sınıf kitaplığıdır. Ayrıca API, grafikler oluşturmanıza ve sunumlara sorunsuz bir şekilde eklemenize olanak tanır. Aspose.Slides for .NET, DLL olarak indirilebilir veya NuGet aracılığıyla kurulabilir.

PM> Install-Package Aspose.Slides

C# kullanarak PowerPoint PPT’de Sütun Grafiği Oluşturun

Bu bölümde, bir sütun grafiği oluşturmayı ve bu grafiği doldurmak için kategorileri ve serileri nasıl ekleyeceğinizi öğreneceksiniz. Aşağıda bu işlemi gerçekleştirmek için adımlar verilmiştir.

Gösterim amacıyla, aşağıdaki kod örneği, C# kullanarak PowerPoint sunusunda bir sütun grafiğinin nasıl oluşturulacağını gösterir.

// PPTX dosyasını temsil eden Sunum sınıfını oluşturun
Presentation pres = new Presentation();

// İlk slayda erişin
ISlide sld = pres.Slides[0];

// Varsayılan verilerle grafik ekle
IChart chart = sld.Shapes.AddChart(ChartType.ClusteredColumn, 0, 0, 500, 500);

// Ayar tablosu Başlık
chart.ChartTitle.AddTextFrameForOverriding("Sample Title");
chart.ChartTitle.TextFrameForOverriding.TextFrameFormat.CenterText = NullableBool.True;
chart.ChartTitle.Height = 20;
chart.HasTitle = true;

// İlk seriyi Değerleri Göster olarak ayarla
chart.ChartData.Series[0].Labels.DefaultDataLabelFormat.ShowValue = true;

// Grafik veri sayfasının dizinini ayarlama
int defaultWorksheetIndex = 0;

// Grafik verileri çalışma sayfasını alma
IChartDataWorkbook fact = chart.ChartData.ChartDataWorkbook;

// Oluşturulan varsayılan serileri ve kategorileri silin
chart.ChartData.Series.Clear();
chart.ChartData.Categories.Clear();
int s = chart.ChartData.Series.Count;
s = chart.ChartData.Categories.Count;

// Yeni dizi ekleme
chart.ChartData.Series.Add(fact.GetCell(defaultWorksheetIndex, 0, 1, "Series 1"), chart.Type);
chart.ChartData.Series.Add(fact.GetCell(defaultWorksheetIndex, 0, 2, "Series 2"), chart.Type);

// Yeni kategoriler ekleme
chart.ChartData.Categories.Add(fact.GetCell(defaultWorksheetIndex, 1, 0, "Caetegoty 1"));
chart.ChartData.Categories.Add(fact.GetCell(defaultWorksheetIndex, 2, 0, "Caetegoty 2"));
chart.ChartData.Categories.Add(fact.GetCell(defaultWorksheetIndex, 3, 0, "Caetegoty 3"));

// İlk grafik serisini al
IChartSeries series = chart.ChartData.Series[0];

// Şimdi seri verileri dolduruluyor
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 1, 1, 20));
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 2, 1, 50));
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 3, 1, 30));

// Seri için dolgu rengini ayarlama
series.Format.Fill.FillType = FillType.Solid;
series.Format.Fill.SolidFillColor.Color = System.Drawing.Color.Blue;


// İkinci grafik serisini alın
series = chart.ChartData.Series[1];

// Şimdi seri verileri dolduruluyor
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 1, 2, 30));
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 2, 2, 10));
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 3, 2, 60));

// Seri için dolgu rengini ayarlama
series.Format.Fill.FillType = FillType.Solid;
series.Format.Fill.SolidFillColor.Color = Color.Orange;

// İlk etiket Kategori adını gösterecek
IDataLabel lbl = series.DataPoints[0].Label;
lbl.DataLabelFormat.ShowCategoryName = true;

lbl = series.DataPoints[1].Label;
lbl.DataLabelFormat.ShowSeriesName = true;

// Üçüncü etiket için değer göster
lbl = series.DataPoints[2].Label;
lbl.DataLabelFormat.ShowValue = true;
lbl.DataLabelFormat.ShowSeriesName = true;
lbl.DataLabelFormat.Separator = "/";

// Sunumu grafikle kaydet
pres.Save("column-chart.pptx", SaveFormat.Pptx);

Elde edilen sütun grafiğinin ekran görüntüsü aşağıdadır.

C# ile powerpoint'te sütun grafiği oluşturma

C# kullanarak PowerPoint PPT’de Dağılım Grafiği oluşturun

C# kullanarak PowerPoint sunumunda dağılım grafiği oluşturma adımları aşağıda verilmiştir.

  • Sunum sınıfını kullanarak yeni bir sunu oluşturun.
  • ISlide nesnesindeki slaytların referansını alın.
  • Varsayılan verilerle bir ScatterWithSmoothLines grafik türü ekleyin ve ICart nesnesindeki referansını alın.
  • Grafik verileri çalışma kitabına ICartDataWorkbook nesnesine erişin ve varsayılan seriyi silin.
  • Grafik verilerine yeni seriler ekleyin.
  • Her seriye ICartSeries nesnesine erişin ve seriye veri noktaları ekleyin.
  • ICartSeries.Marker özelliğini kullanarak seri için işaretçiyi ayarlayın.
  • Sunumu Presentation.Save(String, SaveFormat) yöntemini kullanarak kaydedin.

Aşağıdaki kod örneği, C# kullanarak PowerPoint sunularında bir dağılım grafiğinin nasıl oluşturulacağını gösterir.

// PPTX dosyasını temsil eden Sunum sınıfını oluşturun
Presentation pres = new Presentation();

// İlk slayda erişin
ISlide sld = pres.Slides[0];

// Varsayılan verilerle grafik ekle
IChart chart = sld.Shapes.AddChart(ChartType.ScatterWithSmoothLines, 0, 0, 400, 400);

// Varsayılan grafik verileri çalışma sayfası dizinini alma
int defaultWorksheetIndex = 0;

// Grafik verileri çalışma sayfasını alma
IChartDataWorkbook fact = chart.ChartData.ChartDataWorkbook;

// Demo serisini sil
chart.ChartData.Series.Clear();

// Yeni dizi ekle
chart.ChartData.Series.Add(fact.GetCell(defaultWorksheetIndex, 1, 1, "Series 1"), chart.Type);
chart.ChartData.Series.Add(fact.GetCell(defaultWorksheetIndex, 1, 3, "Series 2"), chart.Type);

// İlk grafik serisini al
IChartSeries series = chart.ChartData.Series[0];

// Buraya yeni nokta (1:3) ekleyin.
series.DataPoints.AddDataPointForScatterSeries(fact.GetCell(defaultWorksheetIndex, 2, 1, 1), fact.GetCell(defaultWorksheetIndex, 2, 2, 3));

// Yeni nokta ekle (2:10)
series.DataPoints.AddDataPointForScatterSeries(fact.GetCell(defaultWorksheetIndex, 3, 1, 2), fact.GetCell(defaultWorksheetIndex, 3, 2, 10));

// Seri türünü düzenleyin
series.Type = ChartType.ScatterWithStraightLinesAndMarkers;

// Grafik serisi işaretçisini değiştirme
series.Marker.Size = 10;
series.Marker.Symbol = MarkerStyleType.Star;

// İkinci grafik serisini alın
series = chart.ChartData.Series[1];

// Buraya yeni nokta (5:2) ekleyin.
series.DataPoints.AddDataPointForScatterSeries(fact.GetCell(defaultWorksheetIndex, 2, 3, 5), fact.GetCell(defaultWorksheetIndex, 2, 4, 2));

// Yeni nokta ekle (3:1)
series.DataPoints.AddDataPointForScatterSeries(fact.GetCell(defaultWorksheetIndex, 3, 3, 3), fact.GetCell(defaultWorksheetIndex, 3, 4, 1));

// Yeni nokta ekle (2:2)
series.DataPoints.AddDataPointForScatterSeries(fact.GetCell(defaultWorksheetIndex, 4, 3, 2), fact.GetCell(defaultWorksheetIndex, 4, 4, 2));

// Yeni nokta ekle (5:1)
series.DataPoints.AddDataPointForScatterSeries(fact.GetCell(defaultWorksheetIndex, 5, 3, 5), fact.GetCell(defaultWorksheetIndex, 5, 4, 1));

// Grafik serisi işaretçisini değiştirme
series.Marker.Size = 10;
series.Marker.Symbol = MarkerStyleType.Circle;

// Sunumu grafikle kaydet
pres.Save("scattered-chart.pptx", SaveFormat.Pptx);

Aşağıdaki ekran görüntüsü, ortaya çıkan dağılım grafiğini göstermektedir.

C# ile powerpoint'te dağınık grafik oluşturma

C# kullanarak PowerPoint PPT’de Pasta Grafiği oluşturun

C# kullanarak bir PowerPoint sunusunda pasta grafik oluşturma adımları aşağıda verilmiştir.

Aşağıdaki kod örneği, C# kullanarak PowerPoint sunusunda bir pasta grafiğin nasıl oluşturulacağını gösterir.

// PPTX dosyasını temsil eden Sunum sınıfını oluşturun
Presentation presentation = new Presentation();

// İlk slayda erişin
ISlide slides = presentation.Slides[0];

// Varsayılan verilerle grafik ekle
IChart chart = slides.Shapes.AddChart(ChartType.Pie, 100, 100, 400, 400);

// Ayar tablosu Başlık
chart.ChartTitle.AddTextFrameForOverriding("Sample Title");
chart.ChartTitle.TextFrameForOverriding.TextFrameFormat.CenterText = NullableBool.True;
chart.ChartTitle.Height = 20;
chart.HasTitle = true;

// İlk seriyi Değerleri Göster olarak ayarla
chart.ChartData.Series[0].Labels.DefaultDataLabelFormat.ShowValue = true;

// Grafik veri sayfasının dizinini ayarlama
int defaultWorksheetIndex = 0;

// Grafik verileri çalışma sayfasını alma
IChartDataWorkbook fact = chart.ChartData.ChartDataWorkbook;

// Oluşturulan varsayılan serileri ve kategorileri silin
chart.ChartData.Series.Clear();
chart.ChartData.Categories.Clear();

// Yeni kategoriler ekleme
chart.ChartData.Categories.Add(fact.GetCell(0, 1, 0, "First Qtr"));
chart.ChartData.Categories.Add(fact.GetCell(0, 2, 0, "2nd Qtr"));
chart.ChartData.Categories.Add(fact.GetCell(0, 3, 0, "3rd Qtr"));

// Yeni dizi ekleme
IChartSeries series = chart.ChartData.Series.Add(fact.GetCell(0, 0, 1, "Series 1"), chart.Type);

// Şimdi seri verileri dolduruluyor
series.DataPoints.AddDataPointForPieSeries(fact.GetCell(defaultWorksheetIndex, 1, 1, 20));
series.DataPoints.AddDataPointForPieSeries(fact.GetCell(defaultWorksheetIndex, 2, 1, 50));
series.DataPoints.AddDataPointForPieSeries(fact.GetCell(defaultWorksheetIndex, 3, 1, 30));

// Yeni sürümde çalışmıyor
// Yeni noktalar ekleme ve sektör rengini ayarlama
// series.IsColorVaried = true;
chart.ChartData.SeriesGroups[0].IsColorVaried = true;

IChartDataPoint point = series.DataPoints[0];
point.Format.Fill.FillType = FillType.Solid;
point.Format.Fill.SolidFillColor.Color = Color.Orange;
// Sektör sınırını ayarlama
point.Format.Line.FillFormat.FillType = FillType.Solid;
point.Format.Line.FillFormat.SolidFillColor.Color = Color.Gray;
point.Format.Line.Width = 3.0;
//point.Format.Line.Style = LineStyle.ThinThick;
//point.Format.Line.DashStyle = LineDashStyle.DashDot;

IChartDataPoint point1 = series.DataPoints[1];
point1.Format.Fill.FillType = FillType.Solid;
point1.Format.Fill.SolidFillColor.Color = Color.BlueViolet;

// Sektör sınırını ayarlama
point1.Format.Line.FillFormat.FillType = FillType.Solid;
point1.Format.Line.FillFormat.SolidFillColor.Color = Color.Blue;
point1.Format.Line.Width = 3.0;
//point1.Format.Line.Style = LineStyle.Single;
//point1.Format.Line.DashStyle = LineDashStyle.LargeDashDot;

IChartDataPoint point2 = series.DataPoints[2];
point2.Format.Fill.FillType = FillType.Solid;
point2.Format.Fill.SolidFillColor.Color = Color.YellowGreen;

// Sektör sınırını ayarlama
point2.Format.Line.FillFormat.FillType = FillType.Solid;
point2.Format.Line.FillFormat.SolidFillColor.Color = Color.Red;
point2.Format.Line.Width = 2.0;
//point2.Format.Line.Style = LineStyle.ThinThin;
//point2.Format.Line.DashStyle = LineDashStyle.LargeDashDotDot;

// Yeni seriler için kategorilerin her biri için özel etiketler oluşturun
IDataLabel lbl1 = series.DataPoints[0].Label;

// lbl.ShowCategoryName = doğru;
lbl1.DataLabelFormat.ShowValue = true;

IDataLabel lbl2 = series.DataPoints[1].Label;
lbl2.DataLabelFormat.ShowValue = true;
lbl2.DataLabelFormat.ShowLegendKey = true;
lbl2.DataLabelFormat.ShowPercentage = true;

IDataLabel lbl3 = series.DataPoints[2].Label;
lbl3.DataLabelFormat.ShowSeriesName = true;
lbl3.DataLabelFormat.ShowPercentage = true;

// Grafik için Öncü Çizgileri Gösterme
//series.Labels.DefaultDataLabelFormat.ShowLeaderLines = true;

// Pasta Grafik Sektörleri için Dönme Açısını Ayarlama
chart.ChartData.SeriesGroups[0].FirstSliceAngle = 180;

// Sunumu grafikle kaydet
presentation.Save("pie-chart.pptx", SaveFormat.Pptx);

Oluşturulan pasta grafiğin ekran görüntüsü aşağıdadır.

C# ile powerpoint'te pasta grafik oluşturma

C# kullanarak PowerPoint PPTX’te Histogram Grafiği Ekleme

Aspose.Slides for .NET kullanarak PowerPoint sunumlarında histogram grafiği oluşturma adımları aşağıdadır.

  • Sunum sınıfının bir örneğini oluşturun.
  • ISlide nesnesindeki bir slaydın referansını dizinine göre edinin.
  • Varsayılan verilerle bir Histogram grafiği ekleyin.
  • Varsayılan dizileri ve kategorileri temizleyin.
  • ICartDataWorkbook nesnesindeki grafik verileri çalışma kitabına erişin.
  • Yeni seri ekleyin ve referansını ICartSeries nesnesinde alın.
  • Seriye veri noktaları ekleyin.
  • Grafik ekseninin toplama türünü ayarlayın.
  • Sunumu Presentation.Save(String, SaveFormat) yöntemini kullanarak kaydedin.

Aşağıdaki kod örneği, C# kullanarak bir histogram grafiğinin nasıl oluşturulacağını gösterir.

// Sunu yükleyin veya oluşturun
using (Presentation pres = new Presentation())
{
    // Histogram grafiği ekle
    IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.Histogram, 50, 50, 500, 400);
    chart.ChartData.Categories.Clear();
    chart.ChartData.Series.Clear();

    // Erişim grafiği verileri çalışma kitabı
    IChartDataWorkbook wb = chart.ChartData.ChartDataWorkbook;

    // Çalışma kitabını temizle
    wb.Clear(0);

    // Grafik serisi ekle
    IChartSeries series = chart.ChartData.Series.Add(ChartType.Histogram);
    series.DataPoints.AddDataPointForHistogramSeries(wb.GetCell(0, "A1", 15));
    series.DataPoints.AddDataPointForHistogramSeries(wb.GetCell(0, "A2", -41));
    series.DataPoints.AddDataPointForHistogramSeries(wb.GetCell(0, "A3", 16));
    series.DataPoints.AddDataPointForHistogramSeries(wb.GetCell(0, "A4", 10));
    series.DataPoints.AddDataPointForHistogramSeries(wb.GetCell(0, "A5", -23));
    series.DataPoints.AddDataPointForHistogramSeries(wb.GetCell(0, "A6", 16));

    chart.Axes.HorizontalAxis.AggregationType = AxisAggregationType.Automatic;

    // Sunumu kaydet
    pres.Save("histogram-chart.pptx", SaveFormat.Pptx);
}

Oluşturulan histogram grafiğin ekran görüntüsü aşağıdadır.

C# ile powerpoint'te histogram grafiği oluşturun

C# kullanarak PowerPoint’te Hisse Senedi Grafiği oluşturun

Hisse senedi grafiği, PowerPoint sunumlarında yaygın olarak kullanılan grafik türlerinden biridir. Bir hisse senedi grafiği oluşturmak için adımlar aşağıdadır.

  • Sunum sınıfını kullanarak yeni bir PowerPoint sunusu oluşturun.
  • Slaydın indeksini kullanarak bir ISlide nesnesinde slaydın referansını edinin.
  • OpenHighLowClose grafiğini slayda ekleyin ve ICart nesnesindeki referansını alın.
  • Varsayılan dizileri ve kategorileri temizleyin.
  • ICartDataWorkbook nesnesindeki grafik verilerine erişin.
  • Grafiğe yeni seriler ve kategoriler ekleyin.
  • Her grafik serisine erişin ve veri noktaları ekleyin.
  • HiLowLines biçimini belirtin.
  • Sunumu Presentation.Save(String, SaveFormat) yöntemini kullanarak kaydedin.

Aşağıdaki kod örneği, C# kullanarak bir hisse senedi grafiğinin PowerPoint sunumuna nasıl ekleneceğini gösterir.

// Sunu yükleyin veya oluşturun
using (Presentation pres = new Presentation())
{
    // Grafik ekle
    IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.OpenHighLowClose, 50, 50, 600, 400, false);

    // Kategorileri ve serileri temizle
    chart.ChartData.Series.Clear();
    chart.ChartData.Categories.Clear();

    // Erişim grafiği verileri çalışma kitabı
    IChartDataWorkbook wb = chart.ChartData.ChartDataWorkbook;

    // kategori ekle
    chart.ChartData.Categories.Add(wb.GetCell(0, 1, 0, "A"));
    chart.ChartData.Categories.Add(wb.GetCell(0, 2, 0, "B"));
    chart.ChartData.Categories.Add(wb.GetCell(0, 3, 0, "C"));

    // Seri ekle
    chart.ChartData.Series.Add(wb.GetCell(0, 0, 1, "Open"), chart.Type);
    chart.ChartData.Series.Add(wb.GetCell(0, 0, 2, "High"), chart.Type);
    chart.ChartData.Series.Add(wb.GetCell(0, 0, 3, "Low"), chart.Type);
    chart.ChartData.Series.Add(wb.GetCell(0, 0, 4, "Close"), chart.Type);

    // Veri noktaları ekle
    IChartSeries series = chart.ChartData.Series[0];

    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 1, 1, 72));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 2, 1, 25));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 3, 1, 38));

    series = chart.ChartData.Series[1];
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 1, 2, 172));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 2, 2, 57));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 3, 2, 57));

    series = chart.ChartData.Series[2];
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 1, 3, 12));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 2, 3, 12));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 3, 3, 13));

    series = chart.ChartData.Series[3];
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 1, 4, 25));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 2, 4, 38));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 3, 4, 50));

    // Grafiğin yukarı/aşağı çubukları olup olmadığını ayarlayın
    chart.ChartData.SeriesGroups[0].UpDownBars.HasUpDownBars = true;

    // yüksek/düşük çizgi biçimini belirtin
    chart.ChartData.SeriesGroups[0].HiLowLinesFormat.Line.FillFormat.FillType = FillType.Solid;

    foreach (IChartSeries ser in chart.ChartData.Series)
    {
        ser.Format.Line.FillFormat.FillType = FillType.NoFill;
    }

    // Sunumu kaydet
    pres.Save("stock-chart.pptx", SaveFormat.Pptx);
}

Oluşturulan hisse senedi grafiğinin ekran görüntüsü aşağıdadır.

C# ile powerpoint'te hisse senedi grafiği oluşturun

Daha Fazla Grafik Türü

Yukarıda belirtilen grafiklere ek olarak, PowerPoint sunumlarına ekleyebileceğiniz başka grafik türleri de vardır. Desteklenen grafik türleri hakkında daha fazla bilgi edinmek için bu dokümantasyon makalesini ziyaret edebilirsiniz.

Ücretsiz API Lisansı Alın

API’yi değerlendirme sınırlamaları olmaksızın denemek için ücretsiz bir geçici lisans alabilirsiniz.

Çözüm

Bu makalede, C# kullanarak PowerPoint sunumlarında nasıl grafik oluşturulacağını öğrendiniz. Ayrıca, adım adım kılavuz ve kod örnekleri, sütun grafiklerinin, dağılım grafiklerinin, pasta grafiklerinin, histogramların ve hisse senedi grafiklerinin nasıl ekleneceğini göstermiştir. Aspose.Slides for .NET hakkında daha fazlasını dokümantasyon kullanarak keşfedebilirsiniz.

Ayrıca bakınız