Bir şelale grafiği, başlangıç değerinin bir dizi artış ve azalışla nasıl değiştiğini gösterir. Örneğin, bir finansal raporda satışların, giderlerin ve diğer gelirlerin kapanış bakiyesine nasıl katkıda bulunduğunu göstermek için bir şelale grafiği kullanabilirsiniz.
Bu öğreticide, Python ve Aspose.Words for Python via .NET kullanarak bir Word belgesinde şelale grafiği oluşturacaksınız. Ayrıca grafikteki toplam noktaları nasıl tanımlayacağınızı ve mevcut belgelerdeki şelale grafiklerini nasıl inceleyeceğinizi öğreneceksiniz.
Word’de Şelale Grafikleri Oluşturmak İçin Python Kütüphanesi
Aspose.Words for Python via .NET size Python’da Word belgeleri oluşturmanıza ve değiştirmenize olanak tanır. Raporlara grafik eklemek ve grafik serileri ile veri noktalarıyla çalışmak için kullanabilirsiniz.
Kütüphaneyi PyPI’dan yükleyin:
pip install aspose-words
Tam öğretici için Aspose.Words for Python via .NET 26.10 veya daha yeni bir sürüm kullanın. Bu sürüm, bir şelale grafiği noktasının toplam olup olmadığını kontrol etmek için kullanılan API’leri tanıttı.
Platform gereksinimleri ve diğer kurulum ayrıntıları için, kurulum belgelerine bakın.
Örnek Şelale Grafiğini Anlayın
Örnekler, açılış bakiyesinden kapanış bakiyesine kadar olan değişiklikleri göstermek için aşağıdaki verileri kullanır:
| Kategori | Değer | Nokta türü |
|---|---|---|
| Açılış bakiyesi | 100 | Toplam |
| Satışlar | +40 | Artış |
| Giderler | −20 | Azalış |
| Ara toplam | 120 | Toplam |
| Diğer gelir | +10 | Artış |
| Kapanış bakiyesi | 130 | Toplam |
Satış, gider ve diğer gelir noktaları değişiklikleri temsil eder. Açılış bakiyesi, ara toplam ve kapanış bakiyesi belirli aşamalardaki değerleri temsil eder.
Grafik serisini oluşturmak için aynı sırada üç liste sağlayacaksınız:
- Kategoriler: Grafik noktaları için etiketler.
- Değerler: Değişiklikler ve açıkça sağlanan toplam değerler.
- Toplam bayrakları: İlgili noktaları toplam olarak belirleyen Boolean değerler.
Bayraklar toplam puanları belirler; hesaplamaz. Bu örnekte, ara toplam 120 olarak sağlanmış ve kapanış bakiyesi 130 olarak sağlanmıştır.
Python Kullanarak Word’de Şelale Grafiği Oluşturma
Grafiği oluşturmak için bu adımları izleyin:
- Bir
Documentve birDocumentBuilderoluşturun. ChartType.WATERFALLkullanarak bir grafik ekleyin.- Grafik başlığını ayarlayın ve varsayılan seriyi temizleyin.
- Kategorileri, değerleri ve toplam bayraklarını ekleyin.
- Belgeyi DOCX dosyası olarak kaydedin.
Aşağıdaki örnek tam grafiği oluşturur:
import aspose.words as aw
# Create a document and document builder.
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
# Insert a waterfall chart.
shape = builder.insert_chart(
chart_type=aw.drawing.charts.ChartType.WATERFALL,
width=500,
height=350
)
chart = shape.chart
chart.title.text = "Balance Changes"
# Remove the default chart series.
chart.series.clear()
# Define categories, values, and total flags.
categories = [
"Opening balance",
"Sales",
"Expenses",
"Subtotal",
"Other income",
"Closing balance"
]
values = [100, 40, -20, 120, 10, 130]
total_flags = [True, False, False, True, False, True]
# Add the waterfall series.
series = chart.series.add(
series_name="Balance",
categories=categories,
values=values,
is_subtotal=total_flags
)
# Save the Word document.
doc.save("waterfall-chart.docx")
Waterfall-özel add() yöntemi, seri adını, kategorileri, değerleri ve Boolean bayraklarını kabul eder. Belirli bir indeksdeki her öğe aynı grafik noktasını tanımlar. Boolean argüman is_subtotal olarak adlandırılmış olsa da, belgelenen örnek bunu başlangıç değeri, ara bir ara toplam ve son değeri toplam olarak belirlemek için kullanır.
Oluşturulan waterfall-chart.docx dosyası, açılış bakiyesi, değişiklikler, ara toplam ve kapanış bakiyesini gösteren altı noktalı bir grafik içerir.

Python Kullanarak Word’de Şelale Grafiklerini Oluşturun.
Bir Şelale Grafiği Noktasının Toplam Olup Olmadığını Kontrol Et
Her bir noktanın atamasını series.is_total(index) ile kontrol edebilirsiniz. Önceki örnekteki chart.series.add(...) çağrısının ardından aşağıdaki döngüyü ekleyin:
for i in range(len(categories)):
point_type = "Total" if series.is_total(i) else "Not a total"
print(f"{categories[i]}: {values[i]} — {point_type}")
Örnek veri için beklenen çıktı:
Opening balance: 100 — Total
Sales: 40 — Not a total
Expenses: -20 — Not a total
Subtotal: 120 — Total
Other income: 10 — Not a total
Closing balance: 130 — Total
is_total() yöntemi sıfır tabanlı indeks alır ve nokta toplam olarak atanmışsa True döndürür. Noktanın açılış bakiyesi, ara ara toplamı veya son toplam olup olmadığını belirlemez.
ChartDataPoint.is_total Kullanarak Toplamı Kontrol Et
Zaten bir grafik veri noktanız varsa, onun is_total özelliğini okuyabilirsiniz. Aşağıdaki örnek, indeks 3‘teki alt toplamı kontrol eder:
is_subtotal = series.data_points[3].is_total
print(f"Subtotal is a total: {is_subtotal}")
Expected output:
Subtotal is a total: True
ChartDataPoint.is_total şelale grafikleri için bir salt okunur özelliktir. series.is_total(index) gibi, noktanın atamasını rapor eder; toplamı ayarlamaz veya hesaplamaz.
Mevcut bir Word Belgesindeki Waterfall Grafiğini İncele
Ayrıca mevcut bir Word belgesini yükleyebilir ve içinde şelale grafik serilerini arayabilirsiniz. Aşağıdaki bağımsız örnek her şekli kontrol eder, grafiği olmayan şekilleri atlar ve bulunan her şelale serisini inceler.
Belgenizin yolunu waterfall-chart.docx ile değiştirin:
import aspose.words as aw
# Load an existing Word document.
doc = aw.Document("waterfall-chart.docx")
found_waterfall_series = False
# Search the document's shapes.
shapes = doc.get_child_nodes(aw.NodeType.SHAPE, True)
for node in shapes:
shape = node.as_shape()
if not shape.has_chart:
continue
for series in shape.chart.series:
if series.series_type != aw.drawing.charts.ChartSeriesType.WATERFALL:
continue
found_waterfall_series = True
print(f"Waterfall series: {series.name}")
for i in range(series.y_values.count):
point_type = "Total" if series.is_total(i) else "Not a total"
print(f"Point {i}: {point_type}")
if not found_waterfall_series:
print("No waterfall chart series found.")
Örnek, her noktayı sıfır tabanlı indeksiyle raporlar. Varsa birden fazla şelale serisini işler ve hiç bulunamazsa bir mesaj yazdırır. series_type özelliği, is_total() çağrılmadan önce kodun ChartSeriesType.WATERFALL değerini kontrol etmesini sağlar.
Ücretsiz Lisans Al
Aspose.Words for Python via .NET’i değerlendirmek için ücretsiz geçici bir lisans talep edebilirsiniz. Örnekleri çalıştırmadan önce lisansı uygulamanıza ekleyin.
Sonuç
Python kullanarak bir Word belgesinde waterfall grafiği oluşturabilir ve toplam noktalarını programlı olarak belirleyebilirsiniz. Aynı yaklaşımı, oluşturulan raporlara grafik eklemek veya mevcut belgelerdeki waterfall serilerini incelemek için kullanın.
Sıkça Sorulan Sorular
Python kullanarak Word’de şelale grafiği nasıl oluştururum?
ChartType.WATERFALL kullanarak bir grafik ekleyin, kategoriler, değerler ve toplam bayrakları içeren bir seri ekleyin ve belgeyi DOCX dosyası olarak kaydedin.
Waterfall grafiğinde toplam puanları nasıl belirtirim?
Seriyi eklerken is_subtotal argümanı aracılığıyla bir Boolean listesi geçirin. Toplam olarak atanması gereken her nokta için bir girişi True olarak ayarlayın.
Bir şelale grafiği noktasının toplam olup olmadığını nasıl kontrol edebilirim?
Serinin series.is_total(index) metodunu noktanın sıfır tabanlı indeksiyle çağırın veya veri noktasının is_total özelliğini okuyun.
is_total API’leri toplamları ayarlar mı yoksa hesaplar mı?
Hayır. Bir noktanın toplam olarak işaretlenip işaretlenmediğini rapor ederler. Seriyi oluştururken değerleri ve toplam bayraklarını sağlayın.
Mevcut bir Word belgesindeki şelale grafiğini inceleyebilir miyim?
Evet. Belgeyi yükleyin, grafik içeren şekilleri bulun ve noktalarını incelemeden önce her seriyi ChartSeriesType.WATERFALL için kontrol edin.
