주식 차트는 일정 기간 동안 표시된 주식 가격을 보여주는 가격 차트이며 몇 가지 주요 정보 집합을 보여줍니다. −
- 주식 기호 및 교환
- 차트 기간
- 가격 변동
- 마지막 변경 사항
- 볼륨
예
# from datetime libraray import datetime method from datetime import datetime # import xlsxwriter library import xlsxwriter # Workbook() takes one, non-optional, argument which is the filename #that we want to create. workbook = xlsxwriter.Workbook('chart_stock.xlsx') # The workbook object is then used to add new worksheet via the #add_worksheet() method. worksheet = workbook.add_worksheet() # Create a new Format object to formats cells in worksheets using #add_format() method . # here we create bold format object . bold = workbook.add_format({'bold': 1}) # here we create date format object date_format = workbook.add_format({'num_format': 'dd/mm/yyyy'}) # Create a chart object that can be added to a worksheet using #add_chart() method. # here we create a stock chart object . chart = workbook.add_chart({'type': 'stock'}) # Add the worksheet data that the charts will refer to. 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], [23.49, 19.55, 15.12, 17.84, 16.34], [25.45, 23.05, 17.32, 20.45, 17.34], ] # Write a row of data starting from 'A1' with bold format . worksheet.write_row('A1', headings, bold) # Filling the data in an excel sheet for row in range(5): # convert a string type date into date of rspective format. date = datetime.strptime(data[0][row], "% Y-% m-% d") # apply a date_format object on this particular cell worksheet.write(row + 1, 0, date, date_format) # write data in the respective cells worksheet.write(row + 1, 1, data[1][row]) worksheet.write(row + 1, 2, data[2][row]) worksheet.write(row + 1, 3, data[3][row]) # width of A to D column set to 11. worksheet.set_column('A:D', 11) # Add a series for each of the High-Low-Close columns. # using add_series method. # note : spaces is not inserted in b / w # = and Sheet1, Sheet1 and ! # if space is inserted it throws warning. # data take from A2 to A6 and B2 to B6 respectively. chart.add_series({ 'categories': '= Sheet1 !$A$2:$A$6', 'values': '= Sheet1 !$B$2:$B$6', }) # data take from A2 to A6 and C2 to C6 respectively. chart.add_series({ 'categories': '= Sheet1 !$A$2:$A$6', 'values': '= Sheet1 !$C$2:$C$6', }) # data take from A2 to A6 and D2 to D6 respectively. chart.add_series({ 'categories': '= Sheet1 !$A$2:$A$6', 'values': '= Sheet1 !$D$2:$D$6', }) # Add a chart title chart.set_title ({'name': 'High-Low-Close'}) # Add x-axis label chart.set_x_axis({'name': 'Date'}) # Add y-axis label chart.set_y_axis({'name': 'Share price'}) # add chart to the worksheet with given offset values at the top-#left corner of a chart is anchored to cell E9 worksheet.insert_chart('E9', chart) # Finally, close the Excel file via the close() method. workbook.close()