自动生成颜色在 Flot 中不起作用

Auto-Generate Color in Flot not working

本文关键字:不起作用 Flot 颜色 自动生成      更新时间:2023-09-26

当我动态地向图表添加新系列时,应用了相同的初始颜色,它应该根据文档生成新颜色,但事实并非如此,这是一个错误还是我做错了什么?

我正在使用 flot 0.8.2。

更新:我刚刚看到这个,可能与:Flot 0.8.2折线图-颜色错误

var serie1 ={label:"test",data:[[12,123],[15,125]]};
var serie2 ={label:"jonas",data:[[12,125],[15,123]]};
var flot = $.plot($("#container"),[serie1]);
var allData = flot.getData();
allData.push(serie2);
flot.setData(allData);
flot.setupGrid();
flot.draw();

Fiddle:http://jsfiddle.net/luisvsilva/knj8c/1/

是的,如果你以这种方式使用 flot,这是一个有点错误。当您使用 setData() 添加第二个系列时,flot 不会添加新颜色,因为它从已用于第一个系列的自动颜色数组的开头重新开始。(我将在您打开的错误票中添加更多详细信息。
如果您改用flot = $.plot($("#container"), [serie1, serie2]);,您将获得所需的正常行为。
或者,您可以在数据中指定颜色,例如

var serie1 = { label: "test", data: [[12, 123], [15, 125]], color: 0 };
var serie2 = { label: "jonas", data: [[12, 125], [15, 123]], color: 1 };