C3图表y2轴无法正确显示指定数据问题求助
C3图表y2轴无法正确显示指定数据问题求助
各位好,我是C3图表的新手,最近遇到一个头疼的问题:我明明已经在代码里开启了y2轴,并且把data14(对应“Delovanje ventilatorja”,也就是风扇运行状态系列)指定到y2轴,但实际渲染出来的图表里,这个系列的数值好像还是跟着y轴(温度轴)走,完全没关联到我设置的y2轴。我翻了不少资料,甚至找ChatGPT帮忙排查,都没解决问题,麻烦大家帮我看看代码里哪里出错了?
先上我的图表截图:
我的完整代码如下(里面有一些斯洛文尼亚语的变量名,提前跟大家说声抱歉,不影响逻辑理解):
function parseData(createGraph) { Papa.parse("log.csv", { download: true, complete: function(results) { createGraph(results.data); }, error: function(err) { console.error("Napaka pri nalaganju podatkov:", err); } }); } function createGraph(data) { //var cas = []; var dateTimeLabels = []; var data2 = ["Temperatura CPU"]; var data10 = ["Temperatura okolica"]; var data14 = ["Delovanje ventilatorja"]; data = data.filter(row => row.length > 1); var totalRows = data.length; console.log("Skupno število vrstic po filtriranju:", totalRows); var startIndex = Math.max(0, totalRows -288 ); for (var i = startIndex; i < totalRows; i++) { console.log("Vrsta " + i + ": ", data[i]); var date = data[i][0]; var time = data[i][1]; if (time && time.trim()) { time = time.trim(); var formattedDateTime = `${date.split('-').reverse().join('-')}/${time.substring(0, 5)}`; dateTimeLabels.push(formattedDateTime); } else { console.warn("čas ni definiran ali prazen za vrstico:", data[i]); } data2.push(data[i][2] !== undefined ? data[i][2] : null); data10.push(data[i][3] !== undefined ? data[i][3] : null); data14.push(data[i][4] !== undefined ? data[i][4] : null); } console.log("Oznake za datum in čas:", dateTimeLabels); console.log("Temperatura CPU:", data2); console.log("Temperatura okolica:", data10); console.log("Delovanje ventilatorja (data14):", data14); var chart = c3.generate({ bindto: '#chart', size: { height: 400, width: window.innerWidth - 100 }, data: { x: 'x', columns: [ ['x'].concat(dateTimeLabels), data2, data10, data14 ], axes: { data2: 'y', data10: 'y', data14: 'y2' }, types:{ data2: 'line', data10: 'line', data14: 'line' } }, axis: { x: { type: 'category', tick: { rotate: 40, multiline: false, culling: {max: 12} }, label: 'Čas' }, y: { label: 'Temperatura (°C)', tick: { format: d3.format(".1f") } }, y2: { show: true, label: 'Delovanje ventilatorja', tick: { format: d3.format(".0f"), values: [0, 10] } } }, zoom: { enabled: true }, grid: { x: { show: true }, y: { show: true }, y2: { show: true } } }); } parseData(createGraph);
我已经通过控制台确认data14的数值是正常读取的,但就是无法和y2轴绑定,实在找不到问题点了,恳请各位大佬帮忙看看,谢谢!
备注:内容来源于stack exchange,提问作者29587
相关产品推荐
相关产品推荐

