libxlsxwriter/test/functional/src/test_chart_layout03.c

53 lines
1.5 KiB
C
Raw Normal View History

/*****************************************************************************
* Test cases for libxlsxwriter.
*
* Test to compare output against Excel files.
*
* Copyright 2014-2025, John McNamara, jmcnamara@cpan.org
*
*/
#include "xlsxwriter.h"
int main() {
lxw_workbook *workbook = workbook_new("test_chart_layout03.xlsx");
lxw_worksheet *worksheet = workbook_add_worksheet(workbook, NULL);
lxw_chart *chart = workbook_add_chart(workbook, LXW_CHART_COLUMN);
/* For testing, copy the randomly generated axis ids in the target file. */
chart->axis_id_1 = 68312064;
chart->axis_id_2 = 69198592;
uint8_t data[5][3] = {
{1, 2, 3},
{2, 4, 6},
{3, 6, 9},
{4, 8, 12},
{5, 10, 15}
};
int row, col;
for (row = 0; row < 5; row++)
for (col = 0; col < 3; col++)
worksheet_write_number(worksheet, row, col, data[row][col], NULL);
chart_add_series(chart, NULL, "=Sheet1!$A$1:$A$5");
chart_add_series(chart, NULL, "=Sheet1!$B$1:$B$5");
chart_add_series(chart, NULL, "=Sheet1!$C$1:$C$5");
lxw_chart_layout layout = {
.x = 0.80197353455818,
.y = 0.37442403032954,
.width = 0.12858202099737,
.height = 0.25115157480314,
};
chart_legend_set_layout(chart, &layout);
chart_legend_set_position(chart, LXW_CHART_LEGEND_OVERLAY_RIGHT);
worksheet_insert_chart(worksheet, CELL("E9"), chart);
return workbook_close(workbook);
}