农业网格条件格式
Ag-grid conditional formatting
是否可以使用 JS 中的框架 ag-grid 根据单元格的值应用条件背景颜色格式,例如 Excel 条件格式(例如第二个 table 格式link 是我正在努力实现的一个很好的例子。
基本上,包含最高值的单元格是绿色的,当它们降低时趋向于红色,当它们达到中值时趋向于黄色(在上面应用倒数link)
如您所见,它不是简单的 CellClassRules,因为单元格颜色取决于 table 中的单元格值,而不仅仅是特定的行或列。
我在 ag-grid 文档中没有找到这样的选项。
为 cellStyle
编写一个函数,让这个函数查看 table 中的每个值,确定它的排名,然后让它 return 的相关颜色单元格,即它越低,return 颜色越“偏红”,它越高,return 颜色越“绿”。像这样:
function myCellStyleFunction(params) {
const totalCellCount = params.api.getDisplayedRowCount() * columnsCount;
let allValuesInTable = [];
rowData.forEach((x) => {
const valuesForRow = Object.keys(x).map(function (k) {
return x[k];
});
allValuesInTable = allValuesInTable.concat(valuesForRow);
});
const valuesForTableOrdered = allValuesInTable.sort(function (a, b) {
return a - b;
});
const valueIndex = valuesForTableOrdered.indexOf(params.value);
console.log(valueIndex)
debugger;
const bgColour = generateColor('#FF0000','#00FF00',totalCellCount,valueIndex)
return { backgroundColor: '#' + bgColour };
}
并在 defaultColDef
中应用此 cellStyle
,以便它应用于每个单元格。
Demo.
您为什么不使用渐变列功能,只需单击几下它就会为您完成这一切?
https://demo.adaptabletools.com/style/aggridgradientcolumndemo
是否可以使用 JS 中的框架 ag-grid 根据单元格的值应用条件背景颜色格式,例如 Excel 条件格式(例如第二个 table 格式link 是我正在努力实现的一个很好的例子。
基本上,包含最高值的单元格是绿色的,当它们降低时趋向于红色,当它们达到中值时趋向于黄色(在上面应用倒数link)
如您所见,它不是简单的 CellClassRules,因为单元格颜色取决于 table 中的单元格值,而不仅仅是特定的行或列。
我在 ag-grid 文档中没有找到这样的选项。
为 cellStyle
编写一个函数,让这个函数查看 table 中的每个值,确定它的排名,然后让它 return 的相关颜色单元格,即它越低,return 颜色越“偏红”,它越高,return 颜色越“绿”。像这样:
function myCellStyleFunction(params) {
const totalCellCount = params.api.getDisplayedRowCount() * columnsCount;
let allValuesInTable = [];
rowData.forEach((x) => {
const valuesForRow = Object.keys(x).map(function (k) {
return x[k];
});
allValuesInTable = allValuesInTable.concat(valuesForRow);
});
const valuesForTableOrdered = allValuesInTable.sort(function (a, b) {
return a - b;
});
const valueIndex = valuesForTableOrdered.indexOf(params.value);
console.log(valueIndex)
debugger;
const bgColour = generateColor('#FF0000','#00FF00',totalCellCount,valueIndex)
return { backgroundColor: '#' + bgColour };
}
并在 defaultColDef
中应用此 cellStyle
,以便它应用于每个单元格。
Demo.
您为什么不使用渐变列功能,只需单击几下它就会为您完成这一切? https://demo.adaptabletools.com/style/aggridgradientcolumndemo