GraphPanel.tsx 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. // Libraries
  2. import _ from 'lodash';
  3. import React, { PureComponent } from 'react';
  4. // Utils
  5. import { processTimeSeries } from '@grafana/ui/src/utils';
  6. // Components
  7. import { Graph } from '@grafana/ui';
  8. // Types
  9. import { PanelProps, NullValueMode, TimeSeriesVMs } from '@grafana/ui/src/types';
  10. import { Options } from './types';
  11. interface Props extends PanelProps<Options> {}
  12. export class GraphPanel extends PureComponent<Props> {
  13. render() {
  14. const { panelData, timeRange, width, height } = this.props;
  15. const { showLines, showBars, showPoints } = this.props.options;
  16. let vmSeries: TimeSeriesVMs;
  17. if (panelData.timeSeries) {
  18. vmSeries = processTimeSeries({
  19. timeSeries: panelData.timeSeries,
  20. nullValueMode: NullValueMode.Ignore,
  21. });
  22. }
  23. return (
  24. <Graph
  25. timeSeries={vmSeries}
  26. timeRange={timeRange}
  27. showLines={showLines}
  28. showPoints={showPoints}
  29. showBars={showBars}
  30. width={width}
  31. height={height}
  32. />
  33. );
  34. }
  35. }