de.gsi.chart.axes.AxisTransform Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of chartfx-chart Show documentation
Show all versions of chartfx-chart Show documentation
This charting library ${project.artifactId}- is an extension
in the spirit of Oracle's XYChart and performance/time-proven JDataViewer charting functionalities.
Emphasis was put on plotting performance for both large number of data points and real-time displays,
as well as scientific accuracies leading to error bar/surface plots, and other scientific plotting
features (parameter measurements, fitting, multiple axes, zoom, ...).
package de.gsi.chart.axes;
/**
* Small interface for defining axis transforms (e.g. logarithmic-base 10, 2, other transforms etc.
*
* @author rstein
*/
public interface AxisTransform {
/**
* default forward transform
* for affine functions: backward(forward(val)) = forward(backward(val)) = val;
*
* @param val input value
* @return output value
*/
double forward(double val);
/**
* default backward transform
* for affine functions: backward(forward(val)) = forward(backward(val)) = val;
*
* @param val input value
* @return output value
*/
double backward(double val);
void setMinimumRange(double val);
double getMinimumRange();
double getRoundedMinimumRange(double val);
void setMaximumRange(double val);
double getMaximumRange();
double getRoundedMaximumRange(double val);
}