Excelize
स्प्रेडशीट के लिए ओपन सोर्स गो लाइब्रेरी
एक्सेल एक्सएलएसएक्स / एक्सएलएसएम / एक्सएलटीएम स्प्रेडशीट फाइलों में डेटा को पढ़ें, बनाएं, मर्ज करें और फ़िल्टर करें गो एपीआई के माध्यम से।
एक्सेलाइज़ एक ओपन सोर्स प्योर गो लाइब्रेरी है जो माइक्रोसॉफ्ट एक्सेल एक्सएलएसएक्स / एक्सएलएसएम / एक्सएलटीएम स्प्रेडशीट फाइलों को पढ़ने और लिखने की कार्यक्षमता प्रदान करती है। डेवलपर्स Microsoft Excel™ 2007 और बाद में अपने स्वयं के अनुप्रयोगों के अंदर उत्पन्न स्प्रेडशीट दस्तावेज़ों को पढ़ और लिख सकते हैं। पुस्तकालय बहुत उपयोगकर्ता के अनुकूल है और बड़ी स्प्रेडशीट फ़ाइलों को पढ़ने का समर्थन करता है। इसने बड़ी मात्रा में डेटा के साथ वर्कशीट से डेटा उत्पन्न करने या पढ़ने के लिए एक स्ट्रीमिंग एपीआई प्रदान की है।
पुस्तकालय एक्सेल स्प्रेडशीट फाइलों के हेरफेर और प्रसंस्करण से संबंधित कई महत्वपूर्ण विशेषताओं का पूरी तरह से समर्थन करता है, जैसे एक्सेल फाइलों को पढ़ना और लिखना, सेल श्रेणियों के साथ काम करना, एक्सेल पंक्तियों का प्रबंधन, टिप्पणियों को जोड़ना, कोशिकाओं को मर्ज करना, पंक्तियों की प्रतिलिपि बनाना, सशर्त स्वरूपण, पाठ सम्मिलित करना, तालिकाओं का प्रबंधन करना। एक्सेल फाइलों में, चित्र जोड़ें, नई शीट जोड़ें और बहुत कुछ।
एक्सेलाइज़ के साथ शुरुआत करना
एक्सेलिज़ को स्थापित करने का अनुशंसित तरीका गिटहब से है, कृपया तेजी से स्थापना के लिए निम्न आदेश का उपयोग करें।
GitHub कमांड के माध्यम से इंस्टॉल करें
go get github.com/360EntSecGroup-Skylar/excelize
गो लाइब्रेरी के माध्यम से एक्सेल एक्सएलएसएक्स फाइल जेनरेट करें
एक्सेलाइज प्रोग्रामर्स को अपने गो एप्लिकेशन के अंदर एक्सेल एक्सएलएसएक्स स्प्रेडशीट जेनरेट करने में सक्षम बनाता है। एक बार जब आप शीट बना लेते हैं तो आप एक नई शीट भी बना सकते हैं, सेल का मान सेट कर सकते हैं, पंक्तियों और स्तंभों की संख्या निर्धारित कर सकते हैं, कार्यपुस्तिका की एक सक्रिय शीट सेट कर सकते हैं, और बहुत कुछ। आप एक शीट को एक नाम भी निर्दिष्ट कर सकते हैं और फ़ाइल को अपनी पसंद के पथ पर सहेज सकते हैं, बनाई गई शीट के लिए फ़ॉन्ट प्रकार और टेक्स्ट आकार सेट कर सकते हैं।
Go API के माध्यम से एक्सेल LS फ़ाइल बनाएं
package main
import (
"fmt"
"github.com/xuri/excelize/v2"
)
func main() {
f := excelize.NewFile()
// Create a new sheet.
index := f.NewSheet("Sheet2")
// Set value of a cell.
f.SetCellValue("Sheet2", "A2", "Hello world.")
f.SetCellValue("Sheet1", "B2", 100)
// Set active sheet of the workbook.
f.SetActiveSheet(index)
// Save spreadsheet by the given path.
if err := f.SaveAs("Book1.xlsx"); err != nil {
fmt.Println(err)
}
}
XLSX फ़ाइल में चार्ट डालें
एक्सेल चार्ट एक वर्कशीट से डेटा का दृश्य प्रतिनिधित्व है जो आपके वर्कशीट के एक छोटे से हिस्से में बड़ी मात्रा में डेटा को सारांशित करके डेटा की अधिक समझ को व्यक्त कर सकता है। चार्ट उपयोगकर्ताओं को बार, कॉलम, पाई, लाइन, एरिया, या रडार, आदि जैसे विभिन्न स्वरूपों में डेटा को नेत्रहीन रूप से प्रदर्शित करने की अनुमति देते हैं। एक्सेलाइज़ लाइब्रेरी चार्ट निर्माण के साथ-साथ आपके स्वयं के अनुप्रयोगों के अंदर कोड की कुछ पंक्तियों के साथ नियंत्रण का समर्थन करती है। यह किसी वर्कशीट में डेटा के आधार पर चार्ट बनाने या बिना किसी डेटा के चार्ट बनाने की अनुमति देता है।
एक्सेल स्प्रेडशीट में चार्ट जोड़ें Go API के माध्यम से फ़ाइल
package main
import (
"fmt"
"github.com/xuri/excelize/v2"
)
func main() {
categories := map[string]string{
"A2": "Small", "A3": "Normal", "A4": "Large",
"B1": "Apple", "C1": "Orange", "D1": "Pear"}
values := map[string]int{
"B2": 2, "C2": 3, "D2": 3, "B3": 5, "C3": 2, "D3": 4, "B4": 6, "C4": 7, "D4": 8}
f := excelize.NewFile()
for k, v := range categories {
f.SetCellValue("Sheet1", k, v)
}
for k, v := range values {
f.SetCellValue("Sheet1", k, v)
}
if err := f.AddChart("Sheet1", "E1", `{
"type": "col3DClustered",
"series": [
{
"name": "Sheet1!$A$2",
"categories": "Sheet1!$B$1:$D$1",
"values": "Sheet1!$B$2:$D$2"
},
{
"name": "Sheet1!$A$3",
"categories": "Sheet1!$B$1:$D$1",
"values": "Sheet1!$B$3:$D$3"
},
{
"name": "Sheet1!$A$4",
"categories": "Sheet1!$B$1:$D$1",
"values": "Sheet1!$B$4:$D$4"
}],
"title":
{
"name": "Fruit 3D Clustered Column Chart"
}
}`); err != nil {
fmt.Println(err)
return
}
// Save spreadsheet by the given path.
if err := f.SaveAs("Book1.xlsx"); err != nil {
fmt.Println(err)
}
}
एक्सेल फाइल में पिवोटटेबल बनाना
एक्सेलाइज़ आसानी से एक्सेल स्प्रेडशीट के अंदर पिवट टेबल बनाने की क्षमता प्रदान करता है। पिवट टेबल माइक्रोसॉफ्ट एक्सेल की सबसे शक्तिशाली विशेषताओं में से एक है। एक्सेल शीट में अपने डेटा की गणना, सारांश और विश्लेषण करने के लिए यह एक शक्तिशाली उपकरण है। आप AddPivotTable फ़ंक्शन का उपयोग करके एक साधारण पिवट तालिका बना सकते हैं। इसके अलावा, आप आसानी से डेटा स्रोत को पिवट टेबल पर असाइन या संपादित कर सकते हैं।
Go Apps के अंदर एक्सेल फाइल में PivotTable जेनरेट करें
func main() {
f := excelize.NewFile()
// Create some data in a sheet
month := []string{"Jan", "Feb", "Mar", "Apr", "May",
"Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}
year := []int{2017, 2018, 2019}
types := []string{"Meat", "Dairy", "Beverages", "Produce"}
region := []string{"East", "West", "North", "South"}
f.SetSheetRow("Sheet1", "A1", &[]string{"Month", "Year", "Type", "Sales", "Region"})
for row := 2; row < 32; row++ {
f.SetCellValue("Sheet1", fmt.Sprintf("A%d", row), month[rand.Intn(12)])
f.SetCellValue("Sheet1", fmt.Sprintf("B%d", row), year[rand.Intn(3)])
f.SetCellValue("Sheet1", fmt.Sprintf("C%d", row), types[rand.Intn(4)])
f.SetCellValue("Sheet1", fmt.Sprintf("D%d", row), rand.Intn(5000))
f.SetCellValue("Sheet1", fmt.Sprintf("E%d", row), region[rand.Intn(4)])
}
if err := f.AddPivotTable(&excelize.PivotTableOptions{
DataRange: "Sheet1!$A$1:$E$31",
PivotTableRange: "Sheet1!$G$2:$M$34",
Rows: []excelize.PivotTableField{
{Data: "Month", DefaultSubtotal: true}, {Data: "Year"}},
Filter: []excelize.PivotTableField{
{Data: "Region"}},
Columns: []excelize.PivotTableField{
{Data: "Type", DefaultSubtotal: true}},
Data: []excelize.PivotTableField{
{Data: "Sales", Name: "Summarize", Subtotal: "Sum"}},
RowGrandTotals: true,
ColGrandTotals: true,
ShowDrill: true,
ShowRowHeaders: true,
ShowColHeaders: true,
ShowLastColumn: true,
}); err != nil {
fmt.Println(err)
}
if err := f.SaveAs("Book1.xlsx"); err != nil {
fmt.Println(err)
}
}
XLSX स्प्रेडशीट में चित्र जोड़ें
एक्सेलाइज़ लाइब्रेरी एक्सेल एक्सएलएसएक्स स्प्रैडशीट में छवियों को जोड़ने के लिए कार्यक्षमता प्रदान करती है, जिसमें गो कमांड की केवल कुछ पंक्तियाँ होती हैं। आप अपनी आवश्यकताओं के अनुसार छवियों को संशोधित भी कर सकते हैं। आप स्केलिंग के साथ-साथ प्रिंटिंग सपोर्ट के साथ एक चित्र सम्मिलित कर सकते हैं।
Go API के माध्यम से एक्सेल वर्कशीट फ़ाइल में छवि जोड़ें
package main
import (
"fmt"
_ "image/gif"
_ "image/jpeg"
_ "image/png"
"github.com/xuri/excelize/v2"
)
func main() {
f, err := excelize.OpenFile("Book1.xlsx")
if err != nil {
fmt.Println(err)
return
}
defer func() {
// Close the spreadsheet.
if err := f.Close(); err != nil {
fmt.Println(err)
}
}()
// Insert a picture.
if err := f.AddPicture("Sheet1", "A2", "image.png", ""); err != nil {
fmt.Println(err)
}
// Insert a picture to worksheet with scaling.
if err := f.AddPicture("Sheet1", "D2", "image.jpg",
`{"x_scale": 0.5, "y_scale": 0.5}`); err != nil {
fmt.Println(err)
}
// Insert a picture offset in the cell with printing support.
if err := f.AddPicture("Sheet1", "H2", "image.gif", `{
"x_offset": 15,
"y_offset": 10,
"print_obj": true,
"lock_aspect_ratio": false,
"locked": false
}`); err != nil {
fmt.Println(err)
}
// Save the spreadsheet with the origin path.
if err = f.Save(); err != nil {
fmt.Println(err)
}
}