Skip to content

developer.axis_auto_property

Jeremy Faden edited this page Jun 14, 2024 · 3 revisions

Purpose: propose addition of auto property to dom axes that would explicitly control if the axis can/should be automatically set for autoranging. This would solve a problem where the vap files contains timerange that was autoranged for a dataset, but autoranging needs to be done because the dataset has changed. If the user doesn't change the range before saving the vap file, then it is marked as remaining in the automatic. Further, this may clean up some of the autoranging/syncing stuff that has always been a problem by adding more information.

Use Cases

looking at the tail of a streaming dataset

vap+dat:/home/jbf/temperatureMonitors/rm718.dat?tail=100 returns the last 100 measurements of a sensor. This is included in a vap file that has a stack of sensors. Autoplot reads in the vap, which will always contain a timeRange bacause the default 0 to 100 is rarely used. This makes the vap useless, because the timerange of the dataset is always updating.

VMO Omni product

Jan wants to have his VO dynamically produce vap files to display a stack of parameters. Presently he cannot use Autoplot to autorange the datasets after loading.

Autoplot internal bookkeeping

Autoplot currently uses registers in the panel controller to keep track of whether or not to do autoranging. When a new URI is entered, the panel controller gets the message and sets the flag resetRanges so that when the new dataset is loaded autoranging is done. When a vap file is loaded, we clear this flag, and hope that the flag is cleared before the data is finished loading. (This could be ensured with Mutex objects.) I suspect that having flags on each axis would really clean up this code.

Autorange on Scan

Bob has proposed that for long time series, Autoplot should re-autorange when the time axis is scanned to the next frame. This property would be useful in implementing this. Clearly sometimes it is useful to autorange on Y but not on X.

Applet/Servlet API

The applet and servlet API allow the user to autorange on Y but explicitly set X. Presently this requires that the data be downloaded outside of Autoplot's DataSourceController/PanelController mechanism to effectively bypass the 100% automatic mechanism.

Proposal

The Axis nodes get an additional property "autorange". What should its default setting be? If it is "false" by default then XMLEncoder will indicate in the vap file when it is set to "true" which is desirable because it's consistent with legacy vaps. Also a good rule of thumb is to be conservative with "auto" features that take control from the user.

What about Autolabelling? How does it relate to this?

Table Of Contents

URIs that Point to Data Files

Download a CDF and Plot it with Autoplot

Load a CDF directly from a website

URIs that Point to Data Servers

Saving to vap files

Loading vap files

Data Sources

CDF Files

HDF/NetCDF Files

Aggregation

CDAWeb

HAPI Servers

Exporting Data

Export Types

Additional controls

Aggregation

Tools

PNGWalk Tool

Data Mash Up

Events List

Run Batch

Advanced Topics

TimeSeriesBrowse and other Capabilities

Events Lists

Caching

Autoranging

Managing Autoplot's Data Cache

Using Autoplot with Python, IDL, and Matlab

Reading data into Python

Reading data into IDL

Reading data into Matlab

QDataSet Data Model

Clone this wiki locally