From 71c4d1e04b0b5afc09048192d07d081d87725ed6 Mon Sep 17 00:00:00 2001 From: Thomas Nordquist Date: Sun, 20 Jan 2019 13:27:29 +0100 Subject: [PATCH] Improve plot --- app/src/components/Sidebar/History.tsx | 2 ++ app/src/components/Sidebar/MessageHistory.tsx | 17 +++++++------- app/src/components/Sidebar/PlotHistory.tsx | 22 +++++++++++++++++-- 3 files changed, 30 insertions(+), 11 deletions(-) diff --git a/app/src/components/Sidebar/History.tsx b/app/src/components/Sidebar/History.tsx index 416114c..b6b055b 100644 --- a/app/src/components/Sidebar/History.tsx +++ b/app/src/components/Sidebar/History.tsx @@ -13,6 +13,7 @@ interface Props { items: HistoryItem[] onClick?: (index: number, element: EventTarget) => void classes: any + contentTypeIndicator?: String } interface State { @@ -65,6 +66,7 @@ class MessageHistory extends React.Component { > {this.state.collapsed ? '▶' : '▼'} History +
{this.state.collapsed ? this.props.contentTypeIndicator : null}
{this.state.collapsed ? null : this.props.children} diff --git a/app/src/components/Sidebar/MessageHistory.tsx b/app/src/components/Sidebar/MessageHistory.tsx index f8eb6e7..a03e114 100644 --- a/app/src/components/Sidebar/MessageHistory.tsx +++ b/app/src/components/Sidebar/MessageHistory.tsx @@ -2,7 +2,7 @@ import * as React from 'react' import * as q from '../../../../backend/src/Model' import { Theme, withTheme } from '@material-ui/core/styles' - +import BarChart from '@material-ui/icons/BarChart' import DateFormatter from '../DateFormatter' import History from './History' import PlotHistory from './PlotHistory' @@ -55,25 +55,24 @@ class MessageHistory extends React.Component { value: message.value, })) + const numericMessages = history.filter(message => !isNaN(message.value)) + const showPlot = numericMessages.length >= 2 + return (
: null} onClick={this.displayMessage} > - {this.renderPlot(history)} + {showPlot ? this.renderPlot(history) : null}
) } - public renderPlot(history: q.Message[]) { - const numbers = history.filter(message => !isNaN(message.value)) - if (numbers.length < 3) { - return null - } - - return + public renderPlot(numericMessages: q.Message[]) { + return } private displayMessage = (index: number, eventTarget: EventTarget) => { diff --git a/app/src/components/Sidebar/PlotHistory.tsx b/app/src/components/Sidebar/PlotHistory.tsx index e83e3d8..887c45f 100644 --- a/app/src/components/Sidebar/PlotHistory.tsx +++ b/app/src/components/Sidebar/PlotHistory.tsx @@ -1,4 +1,4 @@ -const { XYPlot, XAxis, YAxis, HorizontalGridLines, LineSeries } = require('react-vis') +const { XYPlot, XAxis, LineMarkSeries, Hint, YAxis, HorizontalGridLines, LineSeries } = require('react-vis') import { default as ReactResizeDetector } from 'react-resize-detector' import * as React from 'react' @@ -12,6 +12,7 @@ interface Props { interface Stats { width: number + value?: any } class PlotHistory extends React.Component { @@ -36,13 +37,30 @@ class PlotHistory extends React.Component {
- + + {this.state.value ? : null}
) } + + private _forgetValue = () => { + this.setState({ + value: undefined, + }) + } + + private _rememberValue = (value: any) => { + this.setState({ value }) + } } export default withStyles({}, { withTheme: true })(PlotHistory)