天涯888 发表于 2024-11-27 10:34:21

【17.1.4】图表曲线未显示,需要删除再添加才更新

var chart2 = devSheet.charts.get('图表 2')
const series = chart2.series()

// 变化值
let series1 = series.get(0)
series1.xValues = "='" + sheetName + "'!A4:A" + max_row_no // sample!$A$4:$A$100
series1.yValues = "='" + sheetName + "'!D4:D" + max_row_no // sample!$D$4:$D$100

// 温度
let series2 = series.get(1)
series2.xValues = "='" + sheetName + "'!A4:A" + max_row_no // sample!$A$4:$A$27
series2.yValues = "='" + sheetName + "'!C4:C" + max_row_no // sample!$C$4:$C$100

// 图表需要先删除再添加才能正确显示,这种是否是bug,还是设计如此?
chart2.series().remove(1)
chart2.series().remove(0)

chart2.series().add(series1)
chart2.series().add(series2)

Richard.Huang 发表于 2024-11-27 10:34:22

您好,您无需remove后再add,您只需要调用set方法更新您修改后的系列即可:https://demo.grapecity.com.cn/spreadjs/help/api/classes/GC.Spread.Sheets.Charts.SeriesCollection#set

这种设计通常被称为“属性控制”或“属性拦截”机制,常见的例如Java中的实现方式包括使用“getter”和“setter”方法(也叫访问器和修改器)来控制属性的访问和修改。在一些特定的设计模式或框架中,这种机制可以确保对象的状态在修改时能够得到有效的管理和控制

Wilson.Zhang 发表于 2024-11-29 11:19:03

您好!由于您较长时间未回复,且从跟帖回复中了解到问题已得到有效解答,那就结帖了。如有新问题,欢迎发新帖沟通。
{:5_110:}
页: [1]
查看完整版本: 【17.1.4】图表曲线未显示,需要删除再添加才更新