本文整理汇总了TypeScript中@grafana/ui.FieldCache.getFields方法的典型用法代码示例。如果您正苦于以下问题:TypeScript FieldCache.getFields方法的具体用法?TypeScript FieldCache.getFields怎么用?TypeScript FieldCache.getFields使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@grafana/ui.FieldCache
的用法示例。
在下文中一共展示了FieldCache.getFields方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: getDisplayProcessor
export const getGraphSeriesModel = (
data: PanelData,
seriesOptions: SeriesOptions,
graphOptions: GraphOptions,
legendOptions: GraphLegendEditorLegendOptions
) => {
const graphs: GraphSeriesXY[] = [];
const displayProcessor = getDisplayProcessor({
field: {
decimals: legendOptions.decimals,
},
});
for (const series of data.series) {
const fieldCache = new FieldCache(series.fields);
const timeColumn = fieldCache.getFirstFieldOfType(FieldType.time);
if (!timeColumn) {
continue;
}
const numberFields = fieldCache.getFields(FieldType.number);
for (let i = 0; i < numberFields.length; i++) {
const field = numberFields[i];
// Use external calculator just to make sure it works :)
const points = getFlotPairs({
series,
xIndex: timeColumn.index,
yIndex: field.index,
nullValueMode: NullValueMode.Null,
});
if (points.length > 0) {
const seriesStats = reduceField({
series,
reducers: legendOptions.stats,
fieldIndex: field.index,
});
let statsDisplayValues: DisplayValue[];
if (legendOptions.stats) {
statsDisplayValues = legendOptions.stats.map<DisplayValue>(stat => {
const statDisplayValue = displayProcessor(seriesStats[stat]);
return {
...statDisplayValue,
text: statDisplayValue.text,
title: stat,
};
});
}
const seriesColor =
seriesOptions[field.name] && seriesOptions[field.name].color
? getColorFromHexRgbOrName(seriesOptions[field.name].color)
: colors[graphs.length % colors.length];
graphs.push({
label: field.name,
data: points,
color: seriesColor,
info: statsDisplayValues,
isVisible: true,
yAxis: (seriesOptions[field.name] && seriesOptions[field.name].yAxis) || 1,
});
}
}
}
return graphs;
};