.. raw:: html Data Explorer ============= .. image:: _static/explorer/screenshot.png Main Plot --------- The Main Plot interface supports pan and zoom on three axes (left-y, right-y and time). Click and drag to pan. Scroll or double click to zoom. The plot is divided into four regions as shown in the figure below. The zoom and pan controls operate differently depending on the cursor location. Plot Regions ************ .. image:: _static/explorer/axis_regions.png Axis Isolation *************************** When the cursor is in the center of the plot, pan and zoom operates simultaneously on all the axes. It is often more intuitive to manipulate one axis at a time. To isolate an axis move the cursor towards the desired axis until it is highlighted. **Left/Right Y Axes:** .. rst-class:: click-to-play .. image:: _static/explorer/left_axis_lock.png Both the left and right y-axes can be isolated. Adjust the offset between left and right axes by isolating one side and panning up or down. **Time:** .. rst-class:: click-to-play .. image:: _static/explorer/time_axis_lock.png Date Selector ************* .. image:: _static/explorer/date_selector.png :width: 400px :align: center Open the date selector by clicking the date text below the Main Plot. The selector overlay allows you to specify exact time bounds for the Main Plot. The Navigation Plot is unaffected. Plotting Errors *************** As you interact with the plot, you may encounter error messages like the following: .. rst-class:: plot-error |fa-exclamation-circle| some data could not be retrieved These errors may occur periodically due to a slow or unreliable connection with the remote installation. Pan or zoom the plot to retry the request. If an initial data request fails, the plot may zoom to an incorrect location. Use the autoscale buttons in the :ref:`explorer-tools-tab` to recenter the plot. .. rst-class:: plot-warning |fa-exclamation-triangle| some data cannot be displayed at this resolution If a continuous or discrete element is not sufficiently decimated or if an event element has too many samples the plot data will be replaced with a thick line and an asterix will appear next to the legend entry. Once you have zoomed in sufficiently the data will reappear. To avoid this problem make sure the data stream is fully decimated, then refresh the installation database. Navigation Plot --------------- The Navigation Plot shows a fixed overview of the data and highlights the portion displayed in the Main Plot. The y-axis is fixed to the autoscale values of the data (either the range of the plotted data or the ``Default Max`` and ``Default Min`` of the streams). Click and drag to select the range of data displayed in the Main Plot. Control Panel ------------- .. image:: _static/explorer/control_panel.png The control panel contains three tabs shown above. Use the :ref:`explorer-files-tab` to select data to plot. Use the :ref:`explorer-plot-tab` to see the currently plotted elements and customize the display. Use the :ref:`explorer-tools-tab` to open and save views, download data, and adjust the plot behavior. .. _explorer-files-tab: Files Tab ********* Each installation is an expandable file tree. Clicking the |fa-caret-right| icon expands or collapses a node. Expand an installation to see the list of root folders. Folders contain data streams and/or subfolders. Expand a data stream to see the list of plottable elements. Add an element to the plot by clicking the |add-element| button next to the element name. The plot color will appear as a square patch next to the name. Remove an element by clicking the |remove-element| button. Elements may only be plotted on an axis with matching units. If both left and right axes have elements with other units, the plot button will be disabled. Hover the cursor over the button to display the required axis units. If you have owner or administrator rights on an installation, click the |fa-gear| icon next to the installation name to open the Installation Settings page. .. _explorer-plot-tab: Plot Tab ******** This tab displays the currently plotted elements organized by axis. The axis headers show the current unit on the righthand side. Hover the cursor over an element to display the element stream and installation. The format is ``[stream_name] @ [installation_name]``. Click the |fa-close| icon next to the element entry to remove it from the plot. When all elements are removed the Plot Tab is disabled. Click the |fa-gear| icon next to the element entry to bring up the **Plot Settings Dialog** shown below: .. image:: _static/explorer/plot_settings.png :width: 400px :align: center Customization options are on the left and element information is displayed on the right. The Path and URL refer to the NilmDB location where this data is stored. All customizations are local to the browser- they are not persisted to the database. Customization is available for: +--------------+-------+-------------------------------------------------------+ | Option | Value | Description | +==============+=======+=======================================================+ | Display Name | Text | The legend entry, leave empty to use the element name | +--------------+-------+-------------------------------------------------------+ | Color | Hex | Click the color patch or type a custom value | +--------------+-------+-------------------------------------------------------+ | Axis | Left, | Override default axis assignment (units must match) | | | Right | | +--------------+-------+-------------------------------------------------------+ .. _explorer-tools-tab: Tools Tab ********* This tab displays various plot control options as well as the :ref:`explorer-dataviews` and :ref:`explorer-download` tools. .. _explorer-autoscale-axes: Autoscale Axes ++++++++++++++ These buttons adjust the time and y axis scales for the Main Plot and Navigation Plot. +-----------------------+---------------------------------------------+ | Button | Description | +=======================+=============================================+ | |sync-plots| | Rescale the Navigation Plot time axis to | | | match the Main Plot | +-----------------------+---------------------------------------------+ | |scale-left| | Rescale the Main Plot left axis to fit | | | the data | +-----------------------+---------------------------------------------+ | |scale-time| | Rescale the Main Plot time axis fit | | | all the data | +-----------------------+---------------------------------------------+ | |scale-right| | Rescale the Main Plot right axis to fit | | | the data | +-----------------------+---------------------------------------------+ Data Cursor +++++++++++ Display the plot value when the cursor is hovering over a datapoint in the Main Plot. Live Update +++++++++++ When checked the plots are synced to the current time. The Navigation Plot displays the last hour and the Main Plot displays the last twenty minutes. If the plotted elements have no data over this interval the plots will be empty. The plots automatically refresh to track the current time. To stop the auto refresh clear the checkbox or click the |fa-close| icon on the |live-update| label at the bottom of the Main Plot. Lock Selection Width ++++++++++++++++++++ When checked the Navigation Plot selection is locked to a fixed width. Click and drag to pan the selection along the time axis. When unchecked the Navigation Plot selection is variable width. Click and drag to scale the selection along the time axis. Data Envelope +++++++++++++ When checked the maximum and minimum bounds are displayed as shaded regions around the data mean. This shows the envelope of the data even though not all of the samples are available to plot. When unchecked only the mean of the data is plotted. This setting does not affect plots where the resolution is high enough to show the raw samples. .. _explorer-dataviews: Data Views ---------- Data views are saved plots that can be shared between users. Users may only open views if they have permissions on all the datasets used in the view. The open/save buttons are located at the top of the :ref:`explorer-tools-tab`. Open View ********* Click |open-view| to display the **Open View** dialog. This dialog lists all available data views. If you do not see a view you are expecting check to make sure you have permissions on all the installations involved with the view. .. image:: _static/explorer/open_view.png :width: 400px :align: center The search bar at the top of the dialog filters views by title and description. It updates as you type. Clear the **include public views?** check box to show only the views you have created. Views that are locked to the current time have a |live-update| label superimposed on the plot thumbnail. Click a thumbnail to load the view onto the plot. This will hide any currently plotted elements. Save View ********* Click |save-view| to display the **Save Current View** dialog. This dialog allows you to save the current plot so you can reload it later. See the :ref:`explorer-download` section for saving the plot data to your local computer. .. image:: _static/explorer/save_view.png :width: 400px :align: center The Main Plot is used as the thumbnail image. The name is required and the description is optional. Click **Set as Home View?** to automatically load this dataview when you open the website. This setting can be updated from the Account Page. Click **Private?** to hide the view from other users. The view will always be hidden from users who do not have permission on the datasets regardless of the check box setting. .. _explorer-download: Download -------- You can download the plot image as a high resolution png file or download the datasets directly. The download tools are located in the :ref:`explorer-tools-tab`. Image ***** Click the |plot-image| button to display a png image of the Main Plot. The picture resolution matches your display. To generate a higher resolution use the browser controls to zoom out on the web page before clicking the download button. Data **** Click the |plot-data| button to display the **Data Download Dialog** shown below. Streams with plotted elements are listed along with details about the NilmDB location (URL and path). .. image:: _static/explorer/data_download.png :width: 400px :align: center Click |download-data| to download the selected stream over the time range displayed in the Main Plot. The data will be decimated to fit within the maximum resolution of the host installation. For example if the installation has a maximum resolution of 3000, the downloaded dataset will have 3000 points or less. The data format is designed to be loaded into MATLAB or Excel. Instructions for loading the data into MATLAB are included in the file header along with information about the data source, time range, and elements. The file name referes to the selected date range as ``hhmm_DDMMYYYY__to__hhmm_DDMMYY``. **Download Example**: ``0725_28Sep2010__to__0811_14Apr2020.txt``:: ############################################### # Stream: Weather # Installation: USNA (USNA Datasets) # Path: /archive/bcil/sensors/weather # URL: http://benchtop.vpn.wattsworth.net/nilmdb # # start: 2010-09-28 07:25:29 -0400 # end: 2020-04-14 08:11:07 -0400 # total time: over 9 years # total rows: 1163 # decimation factor: 1024 # notes: # legend: # Column 1: time (us) # Column 2: Barometer (none) # Column 3: Outside Temp (°F) # Column 4: Dew Point (none) # Column 5: Wind Chill (none) # Column 6: Inside Humidity (none) # Column 7: Outside Humidity (none) # # --------- MATLAB INSTRUCTIONS ------------ # # this file can be loaded directly into MATLAB # # >> x = importdata('~/Downloads/filename.csv') # x = # data: [1737x15 double] % the data # textdata: {41x1 cell} % this help text # # --------- NILMTOOL INSTRUCTIONS ---------- # # raw data can be accessed using nilmtool, run: # # $> nilmtool -u http://benchtop.vpn.wattsworth.net/nilmdb extract -s @1285673129971000 -e @1586866267264000 /archive/bcil/sensors/weather # # ------------------------------------------ # 1322857034602538, 30.24609, 47.51152, 28.41116, 46.0334, 34.15723, 47.46582 1322867909921874, 30.31547, 43.41709, 30.82982, 42.68623, 38.76562,60.99707 1322878231684569, 30.39615, 40.28399, 28.69991, 39.25175, 40.0, 63.2002 ...more data...