= ({ seriesName, color }) => {
+export const VizLegendSeriesIcon: React.FunctionComponent
= ({ seriesName, color, gradient }) => {
const { onSeriesColorChange } = usePanelContext();
const onChange = useCallback(
(color: string) => {
@@ -20,7 +21,7 @@ export const VizLegendSeriesIcon: React.FunctionComponent = ({ seriesName
[seriesName, onSeriesColorChange]
);
- if (seriesName && onSeriesColorChange) {
+ if (seriesName && onSeriesColorChange && color) {
return (
{({ ref, showColorPicker, hideColorPicker }) => (
@@ -35,7 +36,7 @@ export const VizLegendSeriesIcon: React.FunctionComponent = ({ seriesName
);
}
- return ;
+ return ;
};
VizLegendSeriesIcon.displayName = 'VizLegendSeriesIcon';
diff --git a/packages/grafana-ui/src/components/VizLegend/types.ts b/packages/grafana-ui/src/components/VizLegend/types.ts
index 55e03b6d97d..961615ae82e 100644
--- a/packages/grafana-ui/src/components/VizLegend/types.ts
+++ b/packages/grafana-ui/src/components/VizLegend/types.ts
@@ -31,7 +31,8 @@ export interface LegendProps extends VizLegendBaseProps, VizLegendTa
export interface VizLegendItem {
getItemKey?: () => string;
label: string;
- color: string;
+ color?: string;
+ gradient?: string;
yAxis: number;
disabled?: boolean;
// displayValues?: DisplayValue[];
diff --git a/public/app/plugins/datasource/jaeger/graphTransform.ts b/public/app/plugins/datasource/jaeger/graphTransform.ts
index 740492f42a2..e7a70992333 100644
--- a/public/app/plugins/datasource/jaeger/graphTransform.ts
+++ b/public/app/plugins/datasource/jaeger/graphTransform.ts
@@ -26,7 +26,11 @@ export function createGraphFrames(data: TraceResponse): DataFrame[] {
{ name: Fields.subTitle, type: FieldType.string },
{ name: Fields.mainStat, type: FieldType.string, config: { displayName: 'Total time (% of trace)' } },
{ name: Fields.secondaryStat, type: FieldType.string, config: { displayName: 'Self time (% of total)' } },
- { name: Fields.color, type: FieldType.number, config: { color: { mode: 'continuous-GrYlRd' } } },
+ {
+ name: Fields.color,
+ type: FieldType.number,
+ config: { color: { mode: 'continuous-GrYlRd' }, displayName: 'Self time / Trace duration' },
+ },
],
meta: {
preferredVisualisationType: 'nodeGraph',
diff --git a/public/app/plugins/datasource/tempo/graphTransform.ts b/public/app/plugins/datasource/tempo/graphTransform.ts
index a67ba295afe..20eacecc271 100644
--- a/public/app/plugins/datasource/tempo/graphTransform.ts
+++ b/public/app/plugins/datasource/tempo/graphTransform.ts
@@ -44,7 +44,11 @@ export function createGraphFrames(data: DataFrame): DataFrame[] {
{ name: Fields.subTitle, type: FieldType.string },
{ name: Fields.mainStat, type: FieldType.string, config: { displayName: 'Total time (% of trace)' } },
{ name: Fields.secondaryStat, type: FieldType.string, config: { displayName: 'Self time (% of total)' } },
- { name: Fields.color, type: FieldType.number, config: { color: { mode: 'continuous-GrYlRd' } } },
+ {
+ name: Fields.color,
+ type: FieldType.number,
+ config: { color: { mode: 'continuous-GrYlRd' }, displayName: 'Self time / Trace duration' },
+ },
],
meta: {
preferredVisualisationType: 'nodeGraph',
diff --git a/public/app/plugins/panel/nodeGraph/Legend.test.tsx b/public/app/plugins/panel/nodeGraph/Legend.test.tsx
new file mode 100644
index 00000000000..2fe9fddeb94
--- /dev/null
+++ b/public/app/plugins/panel/nodeGraph/Legend.test.tsx
@@ -0,0 +1,30 @@
+import React from 'react';
+import { render, screen } from '@testing-library/react';
+import { FieldColorModeId } from '@grafana/data';
+import { Legend } from './Legend';
+import { NodeDatum } from './types';
+
+describe('Legend', () => {
+ it('renders ok without nodes', () => {
+ render(