Çizim Oluştur ve Yönet
Grafikler Oluşturma
Basitçe bir Grafik Oluşturma
Aspose.Cells for Python via .NET ile grafik oluşturmak oldukça basittir; aşağıdaki örnek kodlarla yapılabilir:
from aspose.cells import Workbook | |
from aspose.cells.charts import ChartType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Instantiating a Workbook object | |
workbook = Workbook() | |
# Obtaining the reference of the first worksheet | |
worksheet = workbook.worksheets[0] | |
# Adding sample values to cells | |
worksheet.cells.get("A2").put_value("Category1") | |
worksheet.cells.get("A3").put_value("Category2") | |
worksheet.cells.get("A4").put_value("Category3") | |
worksheet.cells.get("B1").put_value("Column1") | |
worksheet.cells.get("B2").put_value(4) | |
worksheet.cells.get("B3").put_value(20) | |
worksheet.cells.get("B4").put_value(50) | |
worksheet.cells.get("C1").put_value("Column2") | |
worksheet.cells.get("C2").put_value(50) | |
worksheet.cells.get("C3").put_value(100) | |
worksheet.cells.get("C4").put_value(150) | |
# Adding a chart to the worksheet | |
chartIndex = worksheet.charts.add(ChartType.COLUMN, 5, 0, 15, 5) | |
# Accessing the instance of the newly added chart | |
chart = worksheet.charts[chartIndex] | |
# Setting chart data source as the range "A1:C4" | |
chart.set_chart_data_range("A1:C4", True) | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |
Bir Grafik Oluşturmak için Bilinmesi Gerekenler
Grafik oluşturmadan önce, Aspose.Cells for Python via .NET kullanarak grafik oluştururken yararlı olacak bazı temel kavramları anlamak önemlidir.
Grafikleme Nesneleri
Aspose.Cells for Python via .NET, desteklenen grafiklerin oluşturulmasında kullanılan Aspose.Cells.Charts isim alanında özel bir sınıf kümesi sağlar. Bu sınıflar, grafik nesneleri oluşturmak için kullanılır ve grafik yapım blokları görevi görür. Grafik nesneleri aşağıda listelenmiştir:
- Seri, bir grafikte tek veri serisi.
- Eksen, bir grafik eksenleri.
- Grafik, tek bir Excel grafiği.
- GrafikAlanı, çalışma sayfasındaki grafik alanı.
- GrafikVeriTablosu, bir grafik veri tablosu.
- GrafikÇerçeve, bir grafikteki çerçeve nesnesi.
- GrafikNokta, bir grafikteki seri içindeki tek bir nokta.
- GrafikNoktaKoleksiyonu, bir serideki tüm noktaları içeren bir koleksiyon.
- Grafikler, Grafik nesnelerinin bir koleksiyonu.
- VeriEtiketleri, belirtilen seri için tüm VeriEtiketi nesnelerinin bir koleksiyonu.
- DoldurBiçimi, bir şeklin doldurulma biçimi.
- Zemin, 3B bir grafik zemini.
- Efsane, grafik efsanesi.
- Çizgi, grafik çizgisi.
- SeriKoleksiyonu, Seri nesnelerinin bir koleksiyonu.
- İşaretEtiketleri, bir grafik eksenindeki işaret etiketleri ile ilişkili olan işaret etiketi etiketleri.
- Başlık, bir grafik veya eksenin başlığı.
- Trend Çizgisi, bir grafikteki bir trend çizgisi.
- Trend Çizgisi Koleksiyonu, belirtilen veri serisi için tüm Trend Çizgisi nesnelerinin bir koleksiyonu.
- Duvarlar, 3D bir grafikte duvarlar.
Grafik Nesneleri Kullanma
Yukarıda belirtildiği gibi, tüm grafik nesneleri, ilgili sınıfların örnekleridir ve belirli görevleri yerine getirmek için belirli özellikler ve metotlar sağlar. Grafik nesnelerini kullanarak grafikler oluşturun.
Herhangi bir türde bir grafik, charts koleksiyonunu kullanarak bir çalışma sayfasına ekleyin. charts koleksiyonundaki her öğe bir Chart nesnesini temsil eder. Bir Chart nesnesi, grafik görünümünü özelleştirmek için gereken diğer tüm grafik nesnelerini kapsar. Sonraki bölüm, basit bir grafik oluşturmak için birkaç temel grafik nesnesini nasıl kullanacağınızı gösterir.
Aspose.Cells for Python via .NET kullanarak Grafik Oluşturma
Adımlar:
- Çalışma sayfası hücrelerine biraz veri ekleyin Cell nesnesinin put_value metodu ile. Bu, grafik veri kaynağı olarak kullanılacaktır.
- add nesnesine kapsüllenmiş olan charts koleksiyonunun add metodu çağrılarak bir grafik çalışma sayfasına ekleyin.
- Grafik türünü ChartType numaralandırma ile belirtin. Örneğin, aşağıdaki örnek, grafik türü olarak ChartType.PYRAMID değerini kullanır.
- Yeni Chart nesnesine, endeksini geçirerek charts koleksiyonundan erişin.
- Grafiği yönetmek için Chart nesnesine kapsüllenmiş olan herhangi bir grafik nesnesini kullanın. Aşağıdaki örnek, SeriesCollection grafik nesnesini grafik veri kaynağını belirtmek için kullanır.
Grafik verisini eklerken, veri kaynağı hücre aralığı (örneğin “A1:C3”) veya ardışık olmayan hücrelerin dizisi (örneğin “A1, A3, A5”) veya değerlerin dizisi (örneğin “1,2,3”) olabilir.
Bu genel adımlar, herhangi bir türde bir grafik oluşturmanıza olanak tanır. Farklı grafikler oluşturmak için farklı grafik nesnelerini kullanın.
Aspose.Cells for Python via .NET ile birçok farklı türde grafik oluşturmak mümkündür. Aspose.Cells for Python via .NET tarafından desteklenen tüm standart grafikler, Aspose.Cells.Charts.ChartType adlı bir enumda önceden tanımlanmıştır.
Önceden tanımlanmış grafik tipleri:
Grafik Tipleri | Açıklama |
---|---|
Column | Temsil Edilen Kümeleme Sutun Grafiği |
ColumnStacked | Tasvir Yığılmış Sutun Grafiği |
Column100PercentStacked | Tasvir 100% Yığılmış Sutun Grafiği |
Column3DClustered | Tasvir 3D Küme Sutun Grafiği |
Column3DStacked | Tasvir 3D Yığılmış Sutun Grafiği |
Column3D100PercentStacked | Tasvir 3D 100% Yığılmış Sutun Grafiği |
Column3D | Tasvir 3D Sutun Grafiği |
Bar | Tasvir Kümeleme Çubuk Grafiği |
BarStacked | Yığın Çubuk Grafiğini Temsil Eder |
Bar100PercentStacked | 100% Yığılmış Çubuk Grafiğini Temsil Eder |
Bar3DClustered | 3D Küme Çubuk Grafiğini Temsil Eder |
Bar3DStacked | 3D Yığılmış Çubuk Grafiğini Temsil Eder |
Bar3D100PercentStacked | 3D 100% Yığılmış Çubuk Grafiğini Temsil Eder |
Line | Çizgi Grafiğini Temsil Eder |
LineStacked | Yığılmış Çizgi Grafiğini Temsil Eder |
Line100PercentStacked | 100% Yığılmış Çizgi Grafiğini Temsil Eder |
LineWithDataMarkers | Veri İşaretleri Bulunan Çizgi Grafiğini Temsil Eder |
LineStackedWithDataMarkers | Veri İşaretleri Bulunan Yığılmış Çizgi Grafiğini Temsil Eder |
Line100PercentStackedWithDataMarkers | 100% Yığılmış Veri İşaretleri Bulunan Çizgi Grafiğini Temsil Eder |
Line3D | 3D Çizgi Grafiğini Temsil Eder |
Pie | Pasta Grafiğini Temsil Eder |
Pie3D | 3D Pasta Grafiğini Temsil Eder |
PiePie | Pasta Grafiğinde Pasta Temsil Eder |
PieExploded | Patlamış Pasta Grafiğini Temsil Eder |
Pie3DExploded | 3D Patlamış Pasta Grafiğini Temsil Eder |
PieBar | Pasta Grafiğinde Çubuk Temsil Eder |
Scatter | Saçılma Grafiğini Temsil Eder |
ScatterConnectedByCurvesWithDataMarker | Eğrilerle Bağlı Veri İşaretleri Bulunan Saçılma Grafiğini Temsil Eder |
ScatterConnectedByCurvesWithoutDataMarker | Eğrilerle Bağlı Veri İşaretleri Bulunmayan Saçılma Grafiğini Temsil Eder |
ScatterConnectedByLinesWithDataMarker | Çizgilerle Bağlı Veri İşaretleri Bulunan Saçılma Grafiğini Temsil Eder |
ScatterConnectedByLinesWithoutDataMarker | Çizgilerle Bağlı Veri İşaretleri Bulunmayan Saçılma Grafiğini Temsil Eder |
Area | Alan Grafiğini Temsil Eder |
AreaStacked | Yığılmış Alan Grafiğini Temsil Eder |
Area100PercentStacked | 100% Yığılmış Alan Grafiğini Temsil Eder |
Area3D | 3D Alan Grafiğini Temsil Eder |
Area3DStacked | 3D Yığılmış Alan Grafiğini Temsil Eder |
Area3D100PercentStacked | 3D 100% Yığılmış Alan Grafiğini Temsil Eder |
Doughnut | Donut Grafiğini Temsil Eder |
DoughnutExploded | Exploded Doughnut Chartını Temsil Ediyor |
Radar | Radar Grafiğini Temsil Ediyor |
RadarWithDataMarkers | Veri İşaretçileri olan Radar Grafiğini Temsil Ediyor |
RadarFilled | Dolu Radar Grafiğini Temsil Ediyor |
Surface3D | 3 boyutlu Yüzey Grafiğini Temsil Ediyor |
SurfaceWireframe3D | Tel Kafesli 3 Boyutlu Yüzey Grafiğini Temsil Ediyor |
SurfaceContour | Kontur Grafiğini Temsil Ediyor |
SurfaceContourWireframe | Tel Kafesli Kontur Grafiğini Temsil Ediyor |
Bubble | Balon Grafiğini Temsil Ediyor |
Bubble3D | 3 Boyutlu Balon Grafiğini Temsil Ediyor |
Cylinder | Silindir Grafiğini Temsil Ediyor |
CylinderStacked | Yığılmış Silindir Grafiğini Temsil Ediyor |
Cylinder100PercentStacked | 100% Yığılmış Silindir Grafiğini Temsil Ediyor |
CylindericalBar | Silindirik Çubuk Grafiğini Temsil Ediyor |
CylindericalBarStacked | Yığılmış Silindirik Çubuk Grafiğini Temsil Ediyor |
CylindericalBar100PercentStacked | 100% Yığılmış Silindirik Çubuk Grafiğini Temsil Ediyor |
CylindericalColumn3D | 3 Boyutlu Silindirik Sütun Grafiğini Temsil Ediyor |
Cone | Konik Grafiğini Temsil Ediyor |
ConeStacked | Yığılmış Konik Grafiğini Temsil Ediyor |
Cone100PercentStacked | 100% Yığılmış Konik Grafiğini Temsil Ediyor |
ConicalBar | Konik Çubuk Grafiğini Temsil Ediyor |
ConicalBarStackedStacked Konik Çubuk Grafiğini Temsil Ediyor | |
ConicalBar100PercentStacked | 100% Yığılmış Konik Çubuk Grafiğini Temsil Ediyor |
ConicalColumn3D | 3 Boyutlu Konik Sütun Grafiğini Temsil Ediyor |
Pyramid | Piramit Grafiğini Temsil Ediyor |
PyramidStacked | Yığılmış Piramit Grafiğini Temsil Ediyor |
Pyramid100PercentStacked | 100% Yığılmış Piramit Grafiğini Temsil Ediyor |
PyramidBar | Piramit Çubuk Grafiğini Temsil Ediyor |
PyramidBarStacked | Stacked Piramit Çubuk Grafiğini Temsil Ediyor |
PyramidBar100PercentStacked | 100% Yığılmış Piramit Çubuk Grafiğini Temsil Ediyor |
PyramidColumn3D | 3D Piramit Sutun Grafiğini Temsil Eder |
Hücre aralığını veri kaynağı olarak atadığınızda, yalnızca sol üstten sağ alta doğru aralığı belirleyebilirsiniz. Örneğin, “A1:C3” geçerli iken “C3:A1” geçersizdir.
|
Piramit Grafiği
Örnek kod çalıştırıldığında, bir piramit grafiği çalışma sayfasına eklenir.
from aspose.cells import Workbook | |
from aspose.cells.charts import ChartType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Instantiating a Workbook object | |
workbook = Workbook() | |
# Adding a new worksheet to the Excel object | |
sheetIndex = workbook.worksheets.add() | |
# Obtaining the reference of the newly added worksheet by passing its sheet index | |
worksheet = workbook.worksheets[sheetIndex] | |
# Adding sample values to cells | |
worksheet.cells.get("A1").put_value(50) | |
worksheet.cells.get("A2").put_value(100) | |
worksheet.cells.get("A3").put_value(150) | |
worksheet.cells.get("B1").put_value(4) | |
worksheet.cells.get("B2").put_value(20) | |
worksheet.cells.get("B3").put_value(50) | |
# Adding a chart to the worksheet | |
chartIndex = worksheet.charts.add(ChartType.PYRAMID, 5, 0, 15, 5) | |
# Accessing the instance of the newly added chart | |
chart = worksheet.charts[chartIndex] | |
# Adding SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B3" | |
chart.n_series.add("A1:B3", True) | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |
Çizgi Grafiği
Yukarıdaki örnekte, ChartType yalnızca Çizgi olarak değiştirilerek bir çizgi grafiği oluşturulur. Tam kod aşağıda verilmiştir. Kod çalıştırıldığında, çalışma sayfasına bir çizgi grafiği eklenir.
from aspose.cells import Workbook | |
from aspose.cells.charts import ChartType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Instantiating a Workbook object | |
workbook = Workbook() | |
# Adding a new worksheet to the Excel object | |
sheetIndex = workbook.worksheets.add() | |
# Obtaining the reference of the newly added worksheet by passing its sheet index | |
worksheet = workbook.worksheets[sheetIndex] | |
# Adding sample values to cells | |
worksheet.cells.get("A1").put_value(50) | |
worksheet.cells.get("A2").put_value(100) | |
worksheet.cells.get("A3").put_value(150) | |
worksheet.cells.get("B1").put_value(4) | |
worksheet.cells.get("B2").put_value(20) | |
worksheet.cells.get("B3").put_value(50) | |
# Adding a chart to the worksheet | |
chartIndex = worksheet.charts.add(ChartType.LINE, 5, 0, 15, 5) | |
# Accessing the instance of the newly added chart | |
chart = worksheet.charts[chartIndex] | |
# Adding SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B3" | |
chart.n_series.add("A1:B3", True) | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |
Kabarcık Grafiği
Bir kabarcık grafiği oluşturmak için, ChartType ChartType.BUBBLE olarak ayarlanmalı ve BubbleSizes, Values & XValues gibi ekstra özellikler uygun şekilde ayarlanmalıdır. Aşağıdaki kod çalıştırıldığında, bir kabarcık grafiği çalışma sayfasına eklenir.
Veri İşaretçisi ile Çizgi Grafiği
Veri işaretçisi ile çizgi grafiği oluşturmak için, ChartType ChartType.LineWithDataMarkers olarak ayarlanmalı ve arka plan alanı, Seri İşaretçileri, Değerler & XDeğerler gibi ekstra özellikler uygun şekilde ayarlanmalıdır. Aşağıdaki kod çalıştırıldığında, veri işaretçili çizgi grafiği çalışma sayfasına eklenir.
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.charts import ChartType, FormattingType | |
from aspose.pydrawing import Color | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Instantiate a workbook | |
workbook = Workbook() | |
# Access first worksheet | |
worksheet = workbook.worksheets[0] | |
# Set columns title | |
worksheet.cells.get(0, 0).value = "X" | |
worksheet.cells.get(0, 1).value = "Y" | |
# Create random data and save in the cells | |
for i in range(1, 21): | |
worksheet.cells.get(i, 0).value = i | |
worksheet.cells.get(i, 1).value = 0.8 | |
for i in range(21, 41): | |
worksheet.cells.get(i, 0).value = i - 20 | |
worksheet.cells.get(i, 1).value = 0.9 | |
# Add a chart to the worksheet | |
idx = worksheet.charts.add(ChartType.LINE_WITH_DATA_MARKERS, 1, 3, 20, 20) | |
# Access the newly created chart | |
chart = worksheet.charts[idx] | |
# Set chart style | |
chart.style = 3 | |
# Set autoscaling value to true | |
chart.auto_scaling = True | |
# Set foreground color white | |
chart.plot_area.area.foreground_color = Color.white | |
# Set Properties of chart title | |
chart.title.text = "Sample Chart" | |
# Set chart type | |
chart.type = ChartType.LINE_WITH_DATA_MARKERS | |
# Set Properties of categoryaxis title | |
chart.category_axis.title.text = "Units" | |
# Set Properties of nseries | |
s2_idx = chart.n_series.add("A2: A2", True) | |
s3_idx = chart.n_series.add("A22: A22", True) | |
# Set IsColorVaried to true for varied points color | |
chart.n_series.is_color_varied = True | |
# Set properties of background area and series markers | |
chart.n_series[s2_idx].area.formatting = FormattingType.CUSTOM | |
chart.n_series[s2_idx].marker.area.foreground_color = Color.yellow | |
chart.n_series[s2_idx].marker.border.is_visible = False | |
# Set X and Y values of series chart | |
chart.n_series[s2_idx].x_values = "A2: A21" | |
chart.n_series[s2_idx].values = "B2: B21" | |
# Set properties of background area and series markers | |
chart.n_series[s3_idx].area.formatting = FormattingType.CUSTOM | |
chart.n_series[s3_idx].marker.area.foreground_color = Color.green | |
chart.n_series[s3_idx].marker.border.is_visible = False | |
# Set X and Y values of series chart | |
chart.n_series[s3_idx].x_values = "A22: A41" | |
chart.n_series[s3_idx].values = "B22: B41" | |
# Save the workbook | |
workbook.save(outputDir + r"LineWithDataMarkerChart.xlsx", SaveFormat.XLSX) |
Gelişmiş Konular
- Excel 2016 Grafiklerini Okuma ve Değiştirme
- Excel Grafik Eksenlerini Yönetme
- Grafik Görünümünü Ayarlama
- Grafik Türleri
- Grafikleri Özelleştirme
- Grafiğin Veri Kaynağını Ayarlama
- Excel Grafik Veri Etiketlerini Yönetme
- Zeki İşaretleyicileri İşleyerek Grafiği Oluşturma
- Grafiğin Çalışma Sayfasını Alma
- Excel Grafiklerinin Açıklamasını Yönetme
- Pozisyon Boyutunu ve Tasarımcı Grafiği Yönetme
- Lider Çizgili Pasta Grafiği Oluşturma
- Grafiplerde Şekiller
- Excel Grafik Başlıklarını Yönetme
- Grafik Rendeleme
- Grafik Eğrisi Trend Çizgisinin Denklem Metnini Alma