'Insert an chart with its top-left corner in a worksheet cell.
Args:
row:     The cell row (zero indexed).
col:     The cell column (zero indexed).
chart:   Chart object.
options: Position and scale of the chart.
Returns:
0:  Success.'

@convert_cell_args
def insert_chart(self, row, col, chart, options=None):

    if (options is None):
        options = {}
    if (chart.already_inserted or (chart.combined and chart.combined.already_inserted)):
        warn('Chart    cannot    be    inserted    in    a    worksheet    more    than    once.')
        return
    else:
        chart.already_inserted = True
        if chart.combined:
            chart.combined.already_inserted = True
    x_offset = options.get('x_offset', 0)
    y_offset = options.get('y_offset', 0)
    x_scale = options.get('x_scale', 1)
    y_scale = options.get('y_scale', 1)
    if (chart.x_scale != 1):
        x_scale = chart.x_scale
    if (chart.y_scale != 1):
        y_scale = chart.y_scale
    if chart.x_offset:
        x_offset = chart.x_offset
    if chart.y_offset:
        y_offset = chart.y_offset
    self.charts.append([row, col, chart, x_offset, y_offset, x_scale, y_scale])
