# For complete examples and data files, please go to https://github.com/aspose-cells-cloud/aspose-cells-cloud-ruby
require 'aspose_cells_cloud'

class Chart

  include AsposeCellsCloud

  def initialize
     #Get client_id and client_secret from https://cloud.aspose.com
   
    @instance =  AsposeCellsCloud::CellsApi.new($client_id,$client_secret,$api_version,$baseurl) 
  end
  # Add new chart to worksheet.
  def add_new_chart_to_worksheet
    name = $MYDOC
    sheet_name = $SHEET3
    chart_type = 'Pie'
    upper_left_row = 5
    upper_left_column = 5
    lower_right_row = 10
    lower_right_column = 10
    area = $CELLAREA
    is_vertical = true
    category_data = nil
    is_auto_get_serial_name = nil
    title = nil
    folder = $TEMPFOLDER
    result = @instance.upload_file( folder+"/"+name,  ::File.open(File.expand_path("data/"+name),"r") {|io| io.read(io.size) })
    expect(result.uploaded.size).to  be > 0
    result = @instance.cells_charts_put_worksheet_add_chart(name, sheet_name, chart_type, { :upper_left_row=>upper_left_row, :upper_left_column=>upper_left_column, :lower_right_row=>lower_right_row, :lower_right_column=>lower_right_column, :area=>area, :is_vertical=>is_vertical,  :folder=>folder})
    expect(result.code).to eql(200)
  end

end

chart = Chart.new()
puts chart.add_new_chart_to_worksheet