.NET में प्रस्तुतियों में चार्ट वर्कशीट फ़ॉर्मूले लागू करें
परिचय
एक चार्ट वर्कशीट प्रस्तुति में चार्ट के पीछे का डेटा स्रोत है। यह श्रेणी और श्रृंखला के नामों को चार्ट द्वारा दिखाए गए संख्यात्मक मानों के साथ संग्रहीत करता है। Aspose.Slides में, यह वर्कशीट चार्ट डेटा वर्कबुक के माध्यम से उपलब्ध है, जिससे आप प्रोग्रामेटिक रूप से चार्ट डेटा के साथ काम कर सकते हैं।
यह लेख बताता है कि चार्ट डेटा में वर्कशीट फ़ॉर्मूले कैसे उपयोग करें ताकि सेल मानों की गणना और अद्यतन स्वतः हो सके, मैन्युअल रूप से दर्ज करने के बजाय। यह दिखाता है कि फ़ॉर्मूले कैसे असाइन करें, A1‑स्टाइल और R1C1‑स्टाइल दोनों संदर्भों का उपयोग करें, वर्कबुक फ़ॉर्मूले को पुनः गणना करें, और प्रस्तुतियों में चार्ट वर्कशीट के लिए उपलब्ध समर्थित कॉन्स्टेंट, ऑपरेटर, सेल रेफ़रेंस और प्री‑डिफाइंड फ़ंक्शन के साथ कैसे काम करें।
प्रस्तुति में चार्ट स्प्रेडशीट फ़ॉर्मूले के बारे में
Chart spreadsheet (या chart worksheet) प्रस्तुति में चार्ट का डेटा स्रोत है। Chart spreadsheet में डेटा होता है, जिसे ग्राफ़िक रूप में चार्ट पर प्रदर्शित किया जाता है। जब आप PowerPoint में एक चार्ट बनाते हैं, तो इस चार्ट से जुड़ी वर्कशीट भी स्वचालित रूप से बनाई जाती है। Chart worksheet सभी प्रकार के चार्ट्स के लिए बनाई जाती है: लाइन चार्ट, बार चार्ट, सनबर्स्ट चार्ट, पाई चार्ट आदि। PowerPoint में chart spreadsheet देखने के लिए आपको चार्ट पर डबल‑क्लिक करना चाहिए:

Chart spreadsheet में चार्ट तत्वों के नाम (Category Name: Category1, Serie Name) और इन श्रेणियों एवं श्रृंखलाओं से संबंधित संख्यात्मक डेटा वाली तालिका होती है। डिफ़ॉल्ट रूप से, जब आप नया चार्ट बनाते हैं – चार्ट स्प्रेडशीट डेटा डिफ़ॉल्ट डेटा के साथ सेट होता है। फिर आप वर्कशीट में डेटा को मैन्युअल रूप से बदल सकते हैं।
आमतौर पर, चार्ट जटिल डेटा को दर्शाता है (जैसे वित्तीय विश्लेषक, वैज्ञानिक विश्लेषक), जिसमें ऐसे सेल होते हैं जो अन्य सेल्स के मानों या अन्य डायनामिक डेटा से गणना होते हैं। सेल का मान मैन्युअल रूप से गणना करके उसे हार्ड‑कोड करने से भविष्य में उसे बदलना कठिन हो जाता है। यदि आप किसी विशिष्ट सेल का मान बदलते हैं, तो उस पर निर्भर सभी सेल्स को भी अपडेट करना पड़ेगा। इसके अलावा, तालिका डेटा अन्य तालिकाओं के डेटा पर निर्भर हो सकता है, जिससे प्रस्तुति डेटा स्कीमा जटिल हो जाता है और उसे आसान एवं लचीले तरीके से अपडेट करने की आवश्यकता होती है।
Chart spreadsheet formula प्रस्तुति में एक अभिव्यक्ति है जो चार्ट स्प्रेडशीट डेटा को स्वचालित रूप से गणना और अपडेट करती है। स्प्रेडशीट फ़ॉर्मूला किसी विशिष्ट सेल या सेल्स के सेट के लिए डेटा गणना लॉजिक को परिभाषित करता है। यह एक गणितीय फ़ॉर्मूला या लॉजिकल फ़ॉर्मूला हो सकता है, जिसमें उपयोग होते हैं: सेल रेफ़रेंसेज़, गणितीय फ़ंक्शन, लॉजिकल ऑपरेटर, अंकगणितीय ऑपरेटर, रूपांतरण फ़ंक्शन, स्ट्रिंग कॉन्स्टेंट आदि। फ़ॉर्मूला की परिभाषा एक सेल में लिखी जाती है, और वह सेल केवल एक साधारण मान नहीं रखता। स्प्रेडशीट फ़ॉर्मूला मान की गणना करता है और उसे वापस लौटाता है, फिर यह मान सेल को असाइन किया जाता है। प्रस्तुति में चार्ट स्प्रेडशीट फ़ॉर्मूले वास्तव में Excel फ़ॉर्मूले के समान होते हैं, और उनके कार्यान्वयन के लिए वही डिफ़ॉल्ट फ़ंक्शन, ऑपरेटर और कॉन्स्टेंट समर्थित होते हैं।
In Aspose.Slides chart spreadsheet is represented with Chart.ChartData.ChartDataWorkbook property of the IChartDataWorkbook type. Spreadsheet formula can be assigned and changed with IChartDataCell.Formula property. The following functionality is supported for formulas in Aspose.Slides:
- लॉजिकल कॉन्स्टेंट
- न्यूमेरिकल कॉन्स्टेंट
- स्ट्रिंग कॉन्स्टेंट
- एरर कॉन्स्टेंट
- अंकगणितीय ऑपरेटर
- तुलना ऑपरेटर
- A1‑स्टाइल सेल रेफ़रेंसेज़
- R1C1‑स्टाइल सेल रेफ़रेंसेज़
- प्री‑डिफाइंड फ़ंक्शन
आम तौर पर, स्प्रेडशीट अंतिम गणना किए गए फ़ॉर्मूला मानों को संग्रहीत करता है। यदि प्रस्तुति लोड करने के बाद चार्ट डेटा नहीं बदला गया – IChartDataCell.Value property उन मानों को पढ़ते समय लौटाता है। लेकिन यदि स्प्रेडशीट डेटा बदला गया, तो ChartDataCell.Value property पढ़ते समय CellUnsupportedDataException फेंकती है क्योंकि असमर्थित फ़ॉर्मूले मौजूद होते हैं। यह इसलिए है क्योंकि फ़ॉर्मूले सफलतापूर्वक पार्स होने पर सेल निर्भरताएँ निर्धारित हो जाती हैं और अंतिम मानों की शुद्धता तय की जाती है। यदि फ़ॉर्मूला पार्स नहीं किया जा सकता, तो सेल मान की शुद्धता गारंटी नहीं की जा सकती।
प्रस्तुति में चार्ट स्प्रेडशीट फ़ॉर्मूला जोड़ें
पहले, नई प्रस्तुति की पहली स्लाइड में कुछ नमूना डेटा के साथ एक चार्ट जोड़ें IShapeCollection.Shapes.AddChart। चार्ट की वर्कशीट स्वचालित रूप से बनाई जाती है और इसे एक्सेस किया जा सकता है Chart.ChartData.ChartDataWorkbook property से:
using (var presentation = new Presentation())
{
IChart chart = presentation.Slides[0].Shapes.AddChart(ChartType.ClusteredColumn, 150, 150, 500, 300);
IChartDataWorkbook workbook = chart.ChartData.ChartDataWorkbook;
// ...
}
आइए Object प्रकार की IChartDataCell.Value property में कुछ मान लिखें, जिसका अर्थ है आप इस प्रॉपर्टी में कोई भी मान सेट कर सकते हैं:
workbook.GetCell(0, "F2").Value = -2.5;
workbook.GetCell(0, "G3").Value = 6.3;
workbook.GetCell(0, "H4").Value = 3;
अब सेल में फ़ॉर्मूला लिखने के लिए आप IChartDataCell.Formula property का उपयोग कर सकते हैं:
workbook.GetCell(0, "B2").Formula = "F2+G3+H4+1";
Note: IChartDataCell.Formula property A1‑स्टाइल सेल रेफ़रेंसेज़ सेट करने के लिए उपयोग की जाती है।
R1C1 फ़ॉर्मूला सेट करने के लिए, आप IChartDataCell.R1C1Formula प्रॉपर्टी का उपयोग कर सकते हैं:
workbook.GetCell(0, "C2").R1C1Formula = "R[1]C[4]/R[2]C[5]";
फिर वर्कबुक के सभी फ़ॉर्मूले गणना करने और संबंधित सेल मानों को अपडेट करने के लिए IChartDataWorkbook.CalculateFormulas मेथड का उपयोग करें:
workbook.CalculateFormulas();
object value1 = workbook.GetCell(0, "B2"); // 7.8
object value2 = workbook.GetCell(0, "C2"); // 2.1
लॉजिकल कॉन्स्टेंट
आप सेल फ़ॉर्मूले में FALSE और TRUE जैसे लॉजिकल कॉन्स्टेंट का उपयोग कर सकते हैं:
न्यूमेरिकल कॉन्स्टेंट
संख्याएँ सामान्य या वैज्ञानिक संकेतन में उपयोग की जा सकती हैं ताकि चार्ट स्प्रेडशीट फ़ॉर्मूला बनाया जा सके:
स्ट्रिंग कॉन्स्टेंट
स्ट्रिंग (या लिटरल) कॉन्स्टेंट एक विशिष्ट मान है जिसे जैसा है वैसा उपयोग किया जाता है और यह बदलता नहीं है। स्ट्रिंग कॉन्स्टेंट में तिथियाँ, पाठ, संख्याएँ आदि शामिल हो सकते हैं:
एरर कॉन्स्टेंट
कभी‑कभी फ़ॉर्मूले से परिणाम निकालना संभव नहीं रहता। ऐसे में मूल्य के बजाय सेल में एरर कोड दिखाया जाता है। प्रत्येक एरर प्रकार का एक विशिष्ट कोड होता है:
- #DIV/0! - फ़ॉर्मूला शून्य से भाग देने की कोशिश करता है।
- #GETTING_DATA - सेल पर दिख सकता है, जबकि उसका मान अभी गणना हो रहा है।
- #N/A - सूचना अनुपलब्ध या गायब है। कुछ कारण हो सकते हैं: फ़ॉर्मूले में प्रयुक्त सेल खाली है, अतिरिक्त स्पेस कैरेक्टर, टाइपो आदि।
- #NAME? - किसी सेल या फ़ॉर्मूला ऑब्जेक्ट को उसके नाम से खोजा नहीं जा सका।
- #NULL! - फ़ॉर्मूले में गलत सिंटैक्स, जैसे (,) या कोलन (:) की जगह स्पेस या अन्य कैरेक्टर।
- #NUM! - फ़ॉर्मूले में संख्या अमान्य, बहुत बड़ी या बहुत छोटी है।
- #REF! - अमान्य सेल रेफ़रेंस।
- #VALUE! - अनपेक्षित वैल्यू टाइप। उदाहरण के लिए, स्ट्रिंग वैल्यू को संख्यात्मक सेल में सेट करना।
अंकगणितीय ऑपरेटर
आप चार्ट वर्कशीट फ़ॉर्मूले में सभी अंकगणितीय ऑपरेटर का उपयोग कर सकते हैं:
| ऑपरेटर | अर्थ | उदाहरण |
|---|---|---|
| + (प्लस) | जोड़ या यूनरी प्लस | 2 + 3 |
| - (माइनस) | घटाव या नकारात्मक | 2 - 3 -3 |
| * (एस्टेरिस्क) | गुणन | 2 * 3 |
| / (फॉरवर्ड स्लैश) | भाजन | 2 / 3 |
| % (प्रतिशत) | प्रतिशत | 30% |
| ^ (केरेट) | घातांक | 2 ^ 3 |
Note: मूल्यांकन क्रम बदलने के लिए फ़ॉर्मूले के उस हिस्से को कोष्ठकों में घीरेँ जिसे पहले गणना करना है।
तुलना ऑपरेटर
आप इन ऑपरेटरों का उपयोग करके सेल मानों की तुलना कर सकते हैं। जब दो मान इन ऑपरेटरों से तुलना होते हैं, तो परिणाम एक लॉजिकल मान होता है, TRUE या FALSE:
| ऑपरेटर | अर्थ | अर्थ |
|---|---|---|
| = (इक्वल साइन) | समान | A2 = 3 |
| <> (नॉट इक्वल) | असमान | A2 <> 3 |
| > (ग्रेटर दैन) | बड़ा | A2 > 3 |
| >= (ग्रेटर दैन or इक्क्वल) | बड़ा या बराबर | A2 >= 3 |
| < (लेस दैन) | छोटा | A2 < 3 |
| <= (लेस दैन or इक्क्वल) | छोटा या बराबर | A2 <= 3 |
A1‑स्टाइल सेल रेफ़रेंसेज़
A1‑स्टाइल सेल रेफ़रेंसेज़ उन वर्कशीट्स के लिए उपयोग होते हैं जहाँ कॉलम का पहचानकर्ता अक्षर (जैसे “A") और पंक्ति का पहचानकर्ता अंक (जैसे “1") होता है। A1‑स्टाइल सेल रेफ़रेंसेज़ को निम्नलिखित रूप में उपयोग किया जा सकता है:
| सेल रेफ़रेंस | उदाहरण | ||
|---|---|---|---|
| परिपूर्ण | सापेक्ष | मिश्रित | |
| सेल | $A$2 | A2 | A$2 $A2 |
| पंक्ति | $2:$2 | 2:2 | - |
| स्तंभ | $A:$A | A:A | - |
| रेंज | $A$2:$C$4 | A2:C4 | $A$2:C4 A$2:$C4 |
A1‑स्टाइल सेल रेफ़रेंस को फ़ॉर्मूले में उपयोग करने का एक उदाहरण:
R1C1‑स्टाइल सेल रेफ़रेंसेज़
R1C1‑स्टाइल सेल रेफ़रेंसेज़ उन वर्कशीट्स के लिए उपयोग होते हैं जहाँ पंक्ति और कॉलम दोनों का पहचानकर्ता अंकात्मक होता है। R1C1‑स्टाइल सेल रेफ़रेंसेज़ को निम्नलिखित रूप में उपयोग किया जा सकता है:
| सेल रेफ़रेंस | उदाहरण | ||
|---|---|---|---|
| परिपूर्ण | सापेक्ष | मिश्रित | |
| सेल | R2C3 | R[2]C[3] | R2C[3] R[2]C3 |
| पंक्ति | R2 | R[2] | - |
| स्तंभ | C3 | C[3] | - |
| रेंज | R2C3:R5C7 | R[2]C[3]:R[5]C[7] | R2C3:R[5]C[7] R[2]C3:R5C[7] |
R1C1‑स्टाइल सेल रेफ़रेंस को फ़ॉर्मूले में उपयोग करने का एक उदाहरण:
प्री‑डिफाइंड फ़ंक्शन
फ़ॉर्मूले में उपयोग किए जा सकने वाले प्री‑डिफाइंड फ़ंक्शन हैं, जो कार्यान्वयन को सरल बनाते हैं। ये फ़ंक्शन सामान्यतः उपयोग किए जाने वाले ऑपरेशन्स को समेटते हैं, जैसे:
- ABS
- AVERAGE
- CEILING
- CHOOSE
- CONCAT
- CONCATENATE
- DATE (1900 डेट सिस्टम)
- DAYS
- FIND
- FINDB
- IF
- INDEX (रेफ़रेंस फ़ॉर्म)
- LOOKUP (वेक्टर फ़ॉर्म)
- MATCH (वेक्टर फ़ॉर्म)
- MAX
- SUM
- VLOOKUP
FAQ
क्या फ़ॉर्मूले वाले चार्ट के लिए बाहरी Excel फ़ाइलों को डेटा स्रोत के रूप में समर्थित है?
हाँ। Aspose.Slides एक चार्ट के डेटा स्रोत के रूप में बाहरी वर्कबुक को सपोर्ट करता है, जिससे आप प्रस्तुति के बाहर की XLSX फ़ाइल से फ़ॉर्मूले उपयोग कर सकते हैं।
क्या चार्ट फ़ॉर्मूले उसी वर्कबुक के भीतर शीट नाम द्वारा शीट्स को संदर्भित कर सकते हैं?
हाँ। फ़ॉर्मूले मानक Excel रेफ़रेंस मॉडल का पालन करते हैं, इसलिए आप उसी वर्कबुक में अन्य शीट्स या बाहरी वर्कबुक को संदर्भित कर सकते हैं। बाहरी रेफ़रेंस के लिए Excel सिंटैक्स के अनुसार पथ और वर्कबुक नाम शामिल करें।