Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Mini grafikler, bir veri satırının veya sütununun yanında tam boyutlu bir grafiğin kaplayacağı alanı işgal etmeden hızlı bir trend göstermek istediğinizde kullanışlı olan küçük hücre içi grafiklerdir. Excel üç tür mini grafiği destekler: çizgi, sütun ve kazanma/kayıp. Aspose.Cells, bu yeteneği Aspose.Cells.Charts ad alanında bulunan SparklineGroup ve SparklineGroupCollection API’leri aracılığıyla yansıtır.
Aspose.Cells’de eklediğiniz her mini grafik worksheet.SparklineGroups.Add(...) çağrısıyla oluşturulur ve bu çağrı bir SparklineGroup nesnesi döndürür. Ardından bu nesneyi mini grafik türünü, veri aralığını, hedef hücreyi ve çizgi rengi, çizgi kalınlığı, işaretleyiciler ve yüksek/düşük nokta göstergeleri gibi görsel özellikleri ayarlamak için kullanabilirsiniz.
SparklineGroup, aynı stili paylaşan bir veya daha fazla mini grafik içerebilir. Add çağrısını yapıp bir veri satırı ve tek bir hedef hücre geçtiğinizde, o hücrenin içinde tek bir mini grafik elde edersiniz. Hedef aralığınız bir hücreden genişse, her hedef hücrede aynı stili ve veri aralığını kullanan ayrı bir mini grafik çizilir.
Bu makale, Aspose.Cells tarafından desteklenen üç mini grafik türünün — Çizgi, Sütun ve Kazanma/Kayıp — her birini ele alır ve bunların nasıl ekleneceğini, renklerinin nasıl özelleştirileceğini ve elde edilen çalışma kitabının nasıl kaydedileceğini gösterir.
Çizgi mini grafiği, bir serideki veri noktalarının içinden geçen sürekli bir çizgi çizer; bu da onu zaman içindeki trendleri göstermek için en doğal seçim yapar. Aspose.Cells’de çizgi mini grafiği, SparklineGroups.Add yöntemine SparklineType.Line geçirilerek oluşturulur.
İş akışı, diğer tüm mini grafik türleriyle aynıdır:
Workbook oluşturun ve ilk çalışma sayfasına erişin.CellArea oluşturun.worksheet.SparklineGroups.Add(SparklineType.Line, "A1:E1", false, dest) çağrısını yapın. Üçüncü argüman olan false, Aspose.Cells’e veri aralığının yatay (bir satır) olduğunu, dikey (bir sütun) olmadığını bildirir.SparklineGroup nesnesini özelleştirin. Çizgi mini grafiği için group.Line.Color kullanarak çizgi rengini ayarlayabilirsiniz (bu, Aspose.Cells.Drawing ad alanından bir CellsColor bekler), çizgi kalınlığını ayarlayabilir ve yüksek/düşük nokta işaretleyicilerini açıp kapatabilirsiniz.Aşağıdaki örnek bir çalışma kitabı oluşturur, A1’den E1’e kadar olan hücrelere 5, -3, 8, -2, 6 değerlerini yazar ve bu değerleri izleyen F1 hücresine bir çizgi mini grafiği ekler. Ayrıca çizgi rengini kırmızı olarak özelleştirir ve yüksek ile düşük noktalar için işaretleyicileri etkinleştirir.
using System;
using Aspose.Cells;
using Aspose.Cells.Charts;
using Aspose.Cells.Drawing;
namespace SparklineDemo
{
public class Program
{
public static void Main()
{
// Adım 1: Bir Çalışma Kitabı oluşturun ve ilk çalışma sayfasını alın
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.Worksheets[0];
Cells cells = worksheet.Cells;
// Adım 2: A1:E1 hücrelerine örnek değerler 5, -3, 8, -2, 6 yazın
cells["A1"].PutValue(5);
cells["B1"].PutValue(-3);
cells["C1"].PutValue(8);
cells["D1"].PutValue(-2);
cells["E1"].PutValue(6);
// Adım 3: Hedef hücre F1'e işaret eden bir CellArea oluşturun
CellArea dest = new CellArea();
dest.StartColumn = 5; // sütun F (0-indeksli)
dest.EndColumn = 5;
dest.StartRow = 0; // satır 1 (0-indeksli)
dest.EndRow = 0;
// Adım 4: A1:E1'den F1'e bir Çizgi sparkline ekleyin
// SparklineGroups.Add, yeni eklenen grubun indeksini döndürür
int index = worksheet.SparklineGroups.Add(SparklineType.Line, "A1:E1", false, dest);
SparklineGroup group = worksheet.SparklineGroups[index];
// Adım 5: Kırmızı bir CellsColor oluşturun ve onu sparkline çizgi rengine atayın
CellsColor red = workbook.CreateCellsColor();
red.Color = System.Drawing.Color.Red;
group.SeriesColor = red;
// Adım 6: Yüksek nokta ve düşük nokta işaretçilerini etkinleştirin
group.ShowHighPoint = true;
group.ShowLowPoint = true;
// Adım 7: Çalışma kitabını kaydedin
workbook.Save("output_line.xlsx");
}
}
}
Sütun mini grafiği, her veri noktasını dikey bir çubuk olarak işler. Bu, onu büyüklüğün anlamlı olduğu veriler için — örneğin aylık satış rakamları veya sayımlar — uygun hale getirir. Aspose.Cells’de sütun mini grafiğini SparklineGroups.Add yöntemine SparklineType.Column geçirerek oluşturursunuz.
Prosedür, çizgi mini grafiği örneğini yansıtır:
Workbook oluşturun ve ilk çalışma sayfasına erişin.CellArea oluşturun.worksheet.SparklineGroups.Add(SparklineType.Column, "A1:E1", false, dest) çağrısını yapın.SparklineGroup nesnesini özelleştirin — örneğin group.Type ayarlayarak türü doğrulayın veya çubuk renginde ince ayar yapın.Aşağıdaki örnek A1:E1’e 5, -3, 8, -2, 6 değerlerini yazar ve F1’de bir sütun mini grafiği işler. Negatif değerler aşağı yönde çubuklar, pozitif değerler ise yukarı yönde çubuklar olarak çizilir; bu da pozitif ve negatif katkıların bir bakışta kolayca fark edilmesini sağlar.
using System;
using Aspose.Cells;
using Aspose.Cells.Charts;
using Aspose.Cells.Drawing;
namespace SparklineDemo
{
class Program
{
static void Main(string[] args)
{
// Adım 1: Bir Workbook oluşturun ve ilk çalışma sayfasını alın
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.Worksheets[0];
// Adım 2: A1:E1 aralığına örnek değerler yazın
int[] values = { 5, -3, 8, -2, 6 };
for (int i = 0; i < values.Length; i++)
{
worksheet.Cells[0, i].PutValue(values[i]);
}
// Adım 3: F1 hücresini (sütun indeksi 5, satır indeksi 0) işaret eden bir CellArea oluşturun
CellArea dest = new CellArea();
dest.StartColumn = 5;
dest.EndColumn = 5;
dest.StartRow = 0;
dest.EndRow = 0;
// Adım 4: Hedef hücreye bir Sütun mini grafiği ekleyin
int idx = worksheet.SparklineGroups.Add(
SparklineType.Column, "A1:E1", false, dest);
SparklineGroup group = worksheet.SparklineGroups[idx];
// Adım 5: group.Type okuyarak mini grafik türünü doğrulayın
Console.WriteLine("Eklenen mini grafik türü: " + group.Type);
// Adım 6: Çalışma kitabını kaydedin
workbook.Save("output_column.xlsx");
Console.WriteLine("Çalışma kitabı output_column.xlsx olarak kaydedildi");
}
}
}
Kazanma/kayıp mini grafiği, yalnızca iki sonucu göstermek için tasarlanmış sütun mini grafiğinin özel bir çeşididir: pozitif bir değer “yukarı” çubuk (kazanma) olarak, sıfır veya negatif bir değer ise “aşağı” çubuk (kayıp) olarak çizilir. Kazanma/kayıp mini grafikleri, genellikle kazanma ve kaybetme dizilerini, geçer/kalır sonuçlarını veya zaman içindeki herhangi bir ikili sonucu görselleştirmek için kullanılır.
Aspose.Cells’de kazanma/kayıp mini grafiği, SparklineGroups.Add yöntemine SparklineType.Stacked geçirilerek oluşturulur. (Adına rağmen, SparklineType.Stacked kazanma/kayıp işlemesini istemek için kullanılan enum değeridir.)
Prosedür, diğer iki türle aynıdır:
Workbook oluşturun ve ilk çalışma sayfasına erişin.CellArea oluşturun.worksheet.SparklineGroups.Add(SparklineType.Stacked, "A1:E1", false, dest) çağrısını yapın.SparklineGroup nesnesini özelleştirin; örneğin kazanma ve kayıp çubukları için vurgu renklerini ayarlayın.Aşağıdaki örnek, önceki iki bölümle aynı girdi verilerini kullanır. 5, -3, 8, -2, 6 değerleri kazanma, kayıp, kazanma, kayıp, kazanma olarak yorumlanır — ve F1’de çizilen mini grafik tam olarak bu örüntüyü yansıtır.
using System;
using Aspose.Cells;
using Aspose.Cells.Charts;
using Aspose.Cells.Drawing;
namespace SparklineDemo
{
class Program
{
static void Main(string[] args)
{
// Adım 1: Bir Workbook oluşturun ve ilk çalışma sayfasını alın
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.Worksheets[0];
worksheet.Name = "WinLoss";
// Adım 2: 1. satıra örnek verileri doldurun: A1=5, B1=-3, C1=8, D1=-2, E1=6
worksheet.Cells["A1"].PutValue(5);
worksheet.Cells["B1"].PutValue(-3);
worksheet.Cells["C1"].PutValue(8);
worksheet.Cells["D1"].PutValue(-2);
worksheet.Cells["E1"].PutValue(6);
// Adım 3: F1 hücresini (5. sütun, 0. satır) işaret eden bir CellArea oluşturun
CellArea dest = new CellArea();
dest.StartColumn = 5; // F
dest.EndColumn = 5;
dest.StartRow = 0; // 1. satır
dest.EndRow = 0;
// Adım 4: Bir Kazanma/Kaybetme sparkline (SparklineType.Stacked) ekleyin
int groupIndex = worksheet.SparklineGroups.Add(
SparklineType.Stacked,
"A1:E1",
false,
dest);
SparklineGroup group = worksheet.SparklineGroups[groupIndex];
// Adım 5: Sparkline grubunu özelleştirin
// Yüksek nokta ve düşük nokta işaretçilerini etkinleştirin
group.ShowHighPoint = true;
group.ShowLowPoint = true;
group.ShowNegativePoints = true;
// Yüksek nokta rengini yeşil olarak ayarlayın
CellsColor highColor = workbook.CreateCellsColor();
highColor.Color = System.Drawing.Color.Green;
group.HighPointColor = highColor;
// Düşük nokta rengini kırmızı olarak ayarlayın
CellsColor lowColor = workbook.CreateCellsColor();
lowColor.Color = System.Drawing.Color.Red;
group.LowPointColor = lowColor;
// Negatif nokta rengini turuncu olarak ayarlayın
CellsColor negColor = workbook.CreateCellsColor();
negColor.Color = System.Drawing.Color.Orange;
group.NegativePointsColor = negColor;
// Varsayılan seri rengini ayarlayın (pozitif çubuklar için kullanılır)
CellsColor seriesColor = workbook.CreateCellsColor();
seriesColor.Color = System.Drawing.Color.SteelBlue;
group.SeriesColor = seriesColor;
// Adım 6: Çalışma kitabını kaydedin
workbook.Save("output_winloss.xlsx");
Console.WriteLine("Workbook saved successfully: output_winloss.xlsx");
}
}
}
Önceki üç örneğin her biri, çıktı dosyalarının ayrı ayrı incelenmesini kolaylaştırmak için kendi çalışma kitabını üretir. Bununla birlikte, gerçek dünya senaryosunda, genellikle birkaç veri serisini yan yana karşılaştırmak isteyeceksiniz. Bunu yapmanın en temiz yolu, aynı çalışma sayfasına, her biri farklı bir stili işleyen birden fazla mini grafik grubu yerleştirmektir.
Aynı SparklineGroupCollection öğesine birden fazla SparklineGroup nesnesi ekleyebilirsiniz ve her grup farklı bir hedef hücreyi veya farklı bir aralığı hedef alabilir. Örneğin, F1’e bir çizgi mini grafiği, F2’ye bir sütun mini grafiği ve F3’e bir kazanma/kayıp mini grafiği yerleştirebilirsiniz — hepsi 1. satırdaki aynı kaynak verilerden okuyarak — böylece okuyucu aynı sayıların üç farklı görsel işlemesini görebilir.
Aşağıdaki birleşik örnek, tek bir çalışma kitabı oluşturur, 1. satırı 5, -3, 8, -2, 6 değerleriyle doldurur ve ardından F1, F2 ve F3 hücrelerine her türden bir tane olmak üzere üç mini grafik grubu ekler — böylece elde edilen dosya üç mini grafik stilini birden gösterir.
using System;
using Aspose.Cells;
using Aspose.Cells.Charts;
// Adım 1: Bir Çalışma Kitabı oluşturun ve ilk çalışma sayfasını alın
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.Worksheets[0];
// Adım 2: 1. satıra (A1:E1) örnek veriler doldurun
worksheet.Cells["A1"].PutValue(5);
worksheet.Cells["B1"].PutValue(-3);
worksheet.Cells["C1"].PutValue(8);
worksheet.Cells["D1"].PutValue(-2);
worksheet.Cells["E1"].PutValue(6);
// Adım 3: F1'e bir Çizgi mini grafik grubu ekleyin
CellArea lineArea = new CellArea();
lineArea.StartColumn = 5;
lineArea.EndColumn = 5;
lineArea.StartRow = 0;
lineArea.EndRow = 0;
int lineIdx = worksheet.SparklineGroups.Add(SparklineType.Line, "A1:E1", false, lineArea);
SparklineGroup lineGroup = worksheet.SparklineGroups[lineIdx];
// CellsColor aracılığıyla çizgi mini grafik rengini özelleştirin
CellsColor lineColor = workbook.CreateCellsColor();
lineColor.Color = System.Drawing.Color.Blue;
lineGroup.SeriesColor = lineColor;
// Adım 4: F2'ye bir Sütun mini grafik grubu ekleyin
CellArea columnArea = new CellArea();
columnArea.StartColumn = 5;
columnArea.EndColumn = 5;
columnArea.StartRow = 1;
columnArea.EndRow = 1;
int columnIdx = worksheet.SparklineGroups.Add(SparklineType.Column, "A1:E1", false, columnArea);
SparklineGroup columnGroup = worksheet.SparklineGroups[columnIdx];
// Sütun mini grafik seri rengini özelleştirin
CellsColor columnColor = workbook.CreateCellsColor();
columnColor.Color = System.Drawing.Color.Green;
columnGroup.SeriesColor = columnColor;
// Adım 5: F3'e bir Kazanma/Kaybetme (Yığılmalı) mini grafik grubu ekleyin
CellArea stackedArea = new CellArea();
stackedArea.StartColumn = 5;
stackedArea.EndColumn = 5;
stackedArea.StartRow = 2;
stackedArea.EndRow = 2;
int stackedIdx = worksheet.SparklineGroups.Add(SparklineType.Stacked, "A1:E1", false, stackedArea);
SparklineGroup stackedGroup = worksheet.SparklineGroups[stackedIdx];
// Kazanma/kaybetme mini grafik seri rengini özelleştirin
CellsColor stackedColor = workbook.CreateCellsColor();
stackedColor.Color = System.Drawing.Color.DarkOrange;
stackedGroup.SeriesColor = stackedColor;
// Adım 6: Çalışma kitabını kaydedin
workbook.Save("output_all.xlsx");
Bir SparklineGroup oluşturulup worksheet.SparklineGroups öğesine eklendikten sonra, çalışma kitabını kaydetmeden önce çeşitli görsel özelliklerini okuyabilir veya değiştirebilirsiniz. En sık özelleştirilen özellikler şunlardır:
group.Type — SparklineType (Line, Column veya Stacked). Grup eklendiğinde ayarlanır, ancak doğrulamak için geri okuyabilirsiniz.group.Line.Color — çizgi rengi, workbook.CreateCellsColor() ile oluşturulan bir CellsColor olarak ifade edilir. Bu, çizgi mini grafik kontur rengi için kullanılacak özelliktir.group.Line.Weight — çizgi kalınlığı, punto cinsinden. Daha yüksek değerler daha kalın çizgiler üretir.Bir rengi değiştirmek için her zaman bir CellsColor örneği oluşturun ve bunu ilgili özelliğe atayın. Mini grafik renk özelliklerine doğrudan bir System.Drawing.Color atamayın — bunlar Aspose.Cells.Drawing ad alanından CellsColor türünü bekler. SparklineGroups.Add yönteminin kendisi tam türde belirlenmiş bir SparklineGroup nesnesi döndürür; dolayısıyla dönüş değeri üzerinde özellik atamalarını zincirleyebilir veya onu yerel bir değişkende saklayıp kaydetmeden önce özelleştirebilirsiniz.
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.