কম্পিউটার টিউটোরিয়াল

পাইথন - XlsxWriter দিয়ে এক্সেলে স্টক চার্ট প্লট করা

স্টক চার্ট শেয়ার বাজারের ডেটা ভিজ্যুয়ালাইজেশনের জন্য অত্যন্ত জনপ্রিয়। এটি হাই-লো-ক্লোজ (High-Low-Close) প্রাইস দেখায়। XlsxWriter লাইব্রেরি দিয়ে এক্সেল ফাইলে স্টক চার্ট তৈরি করার পূর্ণ উদাহরণ নিচে দেওয়া হলো।

প্রয়োজনীয় লাইব্রেরি

pip install xlsxwriter

সম্পূর্ণ উদাহরণ

from datetime import datetime
import xlsxwriter

# ১. ওয়ার্কবুক এবং ওয়ার্কশিট তৈরি
workbook = xlsxwriter.Workbook('chart_stock.xlsx')
worksheet = workbook.add_worksheet()

# ২. ফরম্যাট অবজেক্ট তৈরি
bold = workbook.add_format({'bold': True})
date_format = workbook.add_format({'num_format': 'dd/mm/yyyy'})

# ৩. স্টক চার্ট অবজেক্ট তৈরি
chart = workbook.add_chart({'type': 'stock'})

# ৪. ডেটা প্রস্তুতি
headings = ['Date', 'High', 'Low', 'Close']
data = [
    ['2018-01-01', '2018-01-02', '2018-01-03', '2018-01-04', '2018-01-05'],
    [27.2, 25.03, 19.05, 20.34, 18.5],      # High
    [23.49, 19.55, 15.12, 17.84, 16.34],    # Low
    [25.45, 23.05, 17.32, 20.45, 17.34]     # Close
]

# ৫. হেডার লিখুন
worksheet.write_row('A1', headings, bold)

# ৬. ডেটা লিখুন (ডেট কনভার্ট সহ)
for row in range(5):
    date = datetime.strptime(data[0][row], "%Y-%m-%d")
    worksheet.write(row + 1, 0, date, date_format)   # Date
    worksheet.write(row + 1, 1, data[1][row])        # High
    worksheet.write(row + 1, 2, data[2][row])        # Low
    worksheet.write(row + 1, 3, data[3][row])        # Close

# ৭. কলাম প্রস্থ সেট
worksheet.set_column('A:D', 11)

# ৮. চার্ট সিরিজ যোগ করুন (High, Low, Close)
chart.add_series({
    'categories': '=Sheet1!$A$2:$A$6',
    'values':     '=Sheet1!$B$2:$B$6',   # High
})
chart.add_series({
    'categories': '=Sheet1!$A$2:$A$6',
    'values':     '=Sheet1!$C$2:$C$6',   # Low
})
chart.add_series({
    'categories': '=Sheet1!$A$2:$A$6',
    'values':     '=Sheet1!$D$2:$D$6',   # Close
})

# ৯. চার্ট ফরম্যাটিং
chart.set_title({'name': 'High-Low-Close'})
chart.set_x_axis({'name': 'Date'})
chart.set_y_axis({'name': 'Share Price'})

# ১০. চার্ট ইনসার্ট করুন
worksheet.insert_chart('E9', chart)

# ১১. ফাইল বন্ধ করুন
workbook.close()
print("স্টক চার্ট তৈরি হয়েছে: chart_stock.xlsx")

গুরুত্বপূর্ণ নোটস

  • স্টক চার্ট টাইপ: 'stock' — এটি হাই-লো-ক্লোজ সিরিজ একসাথে প্লট করে।
  • ডেট ফরম্যাট: এক্সেলে ডেট সঠিকভাবে দেখানোর জন্য num_format: 'dd/mm/yyyy' ব্যবহার করুন।
  • রেফারেন্স সিনট্যাক্স: '=Sheet1!$A$2:$A$6' — স্পেস না দিন = এবং Sheet1 এর মাঝে।
  • ওপেন/হাই/লো/ক্লোজ (OHLC): ভলিউম সহ চার্টের জন্য type='stock' এর সাথে ৪টি সিরিজ যোগ করুন।

অন্যান্য স্টক চার্ট টাইপ

চার্ট টাইপবিবরণসিরিজ সংখ্যা
stockHigh-Low-Close৩
stockOpen-High-Low-Close৪
stockVolume-High-Low-Close৪
stockVolume-Open-High-Low-Close৫
  1. পাইথনে openpyxl ব্যবহার করে এক্সেলে চার্ট তৈরি করা

  2. পাইথনে xlsxwriter মডিউল ব্যবহার করে এক্সেল ফাইল তৈরি ও লেখা

  3. পাইথন XlsxWriter মডিউল দিয়ে এক্সেল শিটে চার্টশিট যোগ করা

  4. পাইথনে openpyxl ব্যবহার করে এক্সেল ফাইল পড়া ও লিখা