Plotly仪表reference值无法更新问题求助(ESP32环境)
解决Plotly湿度仪表delta.reference无法更新的问题
你的问题出在更新数据的结构不匹配Plotly的要求:reference是嵌套在delta对象下的属性,你直接把它和value平级写在更新对象里,Plotly没法识别到这个字段,自然不会更新初始的delta.reference值。
修正方法
把reference放到delta子对象里,保持和初始数据一致的嵌套结构:
修改后的updateGauge函数:
function updateGauge(temperature, humidity, humidity_soll) { var temperature_update = { value: temperature, }; var humidity_update = { value: humidity, delta: { reference: humidity_soll } // 将reference嵌套到delta对象内 }; Plotly.update(temperatureGaugeDiv, temperature_update); Plotly.update(humidityGaugeDiv, humidity_update); }
原理说明
Plotly更新图表数据时,要求更新对象的结构必须和初始trace的结构完全对应。你的初始湿度数据中,reference是delta的子属性,因此更新时必须通过delta.reference的层级路径指定,Plotly才能准确定位到要修改的字段完成更新。
内容的提问来源于stack exchange,提问作者venni
相关产品推荐
相关产品推荐

