XlsxWriter-এ চার্টে ডেটা টুলস যোগ করা যায়—যেমন: আপ-ডাউন বারস (Up-Down Bars), হাই-লো লাইনস, ড্রপ লাইনস ইত্যাদি। এটি স্টক চার্ট বা তুলনামূলক অ্যানালাইসিসে খুব কার্যকর। নিচে আপ-ডাউন বারস সহ লাইন চার্টের উদাহরণ দেওয়া হলো।
সম্পূর্ণ উদাহরণ
import xlsxwriter
workbook = xlsxwriter.Workbook('updown_chart.xlsx')
worksheet = workbook.add_worksheet()
italic = workbook.add_format({'italic': True})
# ডেটা: সাবজেক্ট, মিড এক্সাম, এন্ড এক্সাম
Data1 = ['Subject', 'Mid Exam Score', 'End Exam Score']
Data2 = [
["Math", "Physics", "Computer", "Hindi", "English", "Chemistry"],
[90, 78, 60, 80, 60, 90], # Mid
[45, 39, 30, 40, 30, 60] # End
]
worksheet.write_row('A1', Data1, italic)
worksheet.write_column('A2', Data2[0])
worksheet.write_column('B2', Data2[1])
worksheet.write_column('C2', Data2[2])
worksheet.set_column('B:C', 15)
# লাইন চার্ট অবজেক্ট
chart1 = workbook.add_chart({'type': 'line'})
# আপ-ডাউন বারস চালু করুন (দুই সিরিজের পার্থক্য দেখাবে)
chart1.set_up_down_bars()
# প্রথম সিরিজ (Mid Exam)
chart1.add_series({
'categories': '=Sheet1!$A$2:$A$7',
'values': '=Sheet1!$B$2:$B$7',
})
# দ্বিতীয় সিরিজ (End Exam)
chart1.add_series({
'categories': '=Sheet1!$A$2:$A$7',
'values': '=Sheet1!$C$2:$C$7',
})
chart1.set_title({'name': 'Exam Score Distribution'})
chart1.set_x_axis({'name': 'Subjects'})
chart1.set_y_axis({'name': 'Marks'})
chart1.set_style(11)
worksheet.insert_chart('D2', chart1, {'x_offset': 20, 'y_offset': 5})
workbook.close()
print("আপ-ডাউন বারস চার্ট তৈরি হয়েছে: updown_chart.xlsx")
আপ-ডাউন বারস কী?
দুই লাইন সিরিজের মধ্যে প্রতিটি পয়েন্টে উর্ধ্বমুখী (আপ) এবং অধোমুখী (ডাউন) বার আঁকে, যা পার্থক্য (ডিফারেন্স) ভিজ্যুয়ালাইজ করে। হরেই বার = প্রথম সিরিজ > দ্বিতীয় সিরিজ, লাল/নিচের বার = دوم সিরিজ > প্রথম সিরিজ।
অন্যান্য ডেটা টুলস
| মেথড | বিবরণ | প্রযোজ্য চার্ট |
|---|---|---|
set_up_down_bars() | দুই সিরিজের পার্থক্য বার | Line, Stock |
set_high_low_lines() | হাই-লো লাইন (ভের্টিক্যাল) | Line, Stock |
set_drop_lines() | পয়েন্ট থেকে X-অ্যাক্সিসে লাইন | Line, Area |
set_series_lines() | স্ট্যাকড সিরিজের মধ্যে লাইন | Stacked Column/Bar |
আপ-ডাউন বারস কাস্টমাইজেশন
# আপ বার (পজিটিভ ডিফারেন্স) ফরম্যাট
chart1.set_up_down_bars({
'up': {
'fill': {'color': '#00B050'}, # গ্রিন
'border': {'color': '#006100'}
},
'down': {
'fill': {'color': '#FF0000'}, # রেড
'border': {'color': '#9C0006'}
},
'gap': 100 # বার চাঙা
})
ব্যবহারিক উদাহরণ: বাজেট vs আকচুয়াল
# বাজেট (সিরিজ ১) vs আকচুয়াল (সিরিজ ২)
# আপ-ডাউন বারস দেখাবে: কোথায় ওভার বাজেট (রেড), কোথায় আন্ডার বাজেট (গ্রিন)
chart1.set_up_down_bars()
chart1.set_title({'name': 'Budget vs Actual Variance'})