use rust_xlsxwriter::{
Chart, ChartGradientFill, ChartGradientStop, ChartType, Workbook, XlsxError,
};
fn main() -> Result<(), XlsxError> {
let mut workbook = Workbook::new();
let worksheet = workbook.add_worksheet();
worksheet.write(0, 0, 10)?;
worksheet.write(1, 0, 40)?;
worksheet.write(2, 0, 50)?;
worksheet.write(3, 0, 20)?;
worksheet.write(4, 0, 10)?;
worksheet.write(5, 0, 50)?;
let mut chart = Chart::new(ChartType::Column);
let gradient_stops = [
ChartGradientStop::new("#156B13", 0),
ChartGradientStop::new("#9CB86E", 50),
ChartGradientStop::new("#DDEBCF", 100),
];
chart
.add_series()
.set_values("Sheet1!$A$1:$A$6")
.set_format(ChartGradientFill::new().set_gradient_stops(&gradient_stops));
worksheet.insert_chart(0, 2, &chart)?;
workbook.save("chart.xlsx")?;
Ok(())
}