at.tuwien.ifs.somtoolbox.visualization
Class PMatrix
java.lang.Object
at.tuwien.ifs.somtoolbox.visualization.AbstractBackgroundImageVisualizer
at.tuwien.ifs.somtoolbox.visualization.AbstractMatrixVisualizer
at.tuwien.ifs.somtoolbox.visualization.UMatrix
at.tuwien.ifs.somtoolbox.visualization.PMatrix
- All Implemented Interfaces:
- BackgroundImageVisualizer, MatrixVisualizer, Comparable<BackgroundImageVisualizer>
public class PMatrix
- extends UMatrix
This visualizer implements:
- Ultsch, A. Maps for the Visualization of high-dimensional Data Spaces. In Proceedings Workshop on Self-Organizing
Maps (WSOM 2003), Kyushu, Japan
- Ultsch, A. U*-Matrix: a Tool to visualize Clusters in high dimensional Data. Technical Report No. 36, Dept. of
Mathematics and Computer Science, University of Marburg, Germany, 2003
- Version:
- $Id: PMatrix.java 3874 2010-11-02 14:14:38Z mayer $
- Author:
- Rudolf Mayer
Field Summary |
private InputVectorDistanceMatrix |
distanceMatrix
|
static double |
PARETO_SIZE
pareto-optimal size, as dervied in the paper "Maps for the Visualization of high-dimensional Data Space" |
(package private) cern.colt.matrix.DoubleMatrix1D |
percentiles
|
private static HashMap<org.apache.commons.collections.keyvalue.MultiKey,cern.colt.matrix.DoubleMatrix2D> |
pMatrixCache
|
private double |
radius
The radius for the density calculation |
Fields inherited from class at.tuwien.ifs.somtoolbox.visualization.AbstractBackgroundImageVisualizer |
cache, CACHE_KEY_SECTION_SEPARATOR, CACHE_KEY_SEPARATOR, contourInterpolationMode, contourMode, controlPanel, currentZDimSlice, inputObjects, interpolate, log, map, MAX_CACHE_SIZE_MB, neededInputObjects, NUM_VISUALIZATIONS, numberOfContours, opacity, preferredScaleFactor, VISUALIZATION_DESCRIPTIONS, VISUALIZATION_NAMES, VISUALIZATION_SHORT_NAMES, visualizationUpdateListener, zSize |
Method Summary |
private int |
calculateParetoRadiusPercentile(InputVectorDistanceMatrix distances,
cern.colt.matrix.DoubleMatrix1D percentiles)
|
static int |
coordinates2index(int row,
int col,
int columns)
|
private cern.colt.matrix.DoubleMatrix1D |
createPercentiles(InputVectorDistanceMatrix distances)
|
cern.colt.matrix.DoubleMatrix2D |
createPMatrix(GrowingSOM gsom)
|
cern.colt.matrix.DoubleMatrix2D |
createUStarMatrix(GrowingSOM gsom)
|
BufferedImage |
createVisualization(int index,
GrowingSOM gsom,
int width,
int height)
Creates a visualisation image. |
private cern.colt.matrix.DoubleMatrix1D |
getAllDensities(InputVectorDistanceMatrix distances,
double radius)
|
protected String |
getCacheKey(GrowingSOM gsom,
int index,
int width,
int height)
The key of a cache is created as follows: VisualisationShortName + Hashcode of the SOM + Width + Height +
Opacity.
Sub-classes might add more information to the cache, if needed. |
String[] |
needsAdditionalFiles()
Checks whether this visualisation still needs some input files to generate an image. |
private void |
setOptimalRadius()
|
private void |
updateRadiusTextField()
|
Methods inherited from class at.tuwien.ifs.somtoolbox.visualization.AbstractMatrixVisualizer |
computeHitHistogram, computeSpline, constrainWithinPalette, createImage, drawContour, getCurrentPalette, getMaximumMatrixValue, getMinimumMatrixValue, getPalette, getVisualization, invalidateCache, reversePalette, setInterpolate, setPalette |
Methods inherited from class at.tuwien.ifs.somtoolbox.visualization.AbstractBackgroundImageVisualizer |
appendToCacheKey, buildCacheKey, checkNeededObjectsAvailable, checkVariantIndex, clearVisualisationCache, compareTo, createVisualization, drawBackground, getControlPanel, getHTMLVisualisationControl, getNumberOfVisualizations, getPreferredScaleFactor, getVariantException, getVisualizationDescription, getVisualizationDescriptions, getVisualizationFlavours, getVisualizationFlavours, getVisualizationFlavours, getVisualizationName, getVisualizationNames, getVisualizationShortName, getVisualizationShortNames, invalidateCache, logImageCache, setInputObjects, setMap, setSOMData, setVisualizationUpdateListener |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface at.tuwien.ifs.somtoolbox.visualization.BackgroundImageVisualizer |
getControlPanel, getHTMLVisualisationControl, getNumberOfVisualizations, getPreferredScaleFactor, getVisualization, getVisualizationDescription, getVisualizationDescriptions, getVisualizationFlavours, getVisualizationFlavours, getVisualizationFlavours, getVisualizationName, getVisualizationNames, getVisualizationShortName, getVisualizationShortNames, setInputObjects, setMap, setSOMData, setVisualizationUpdateListener |
pMatrixCache
private static final HashMap<org.apache.commons.collections.keyvalue.MultiKey,cern.colt.matrix.DoubleMatrix2D> pMatrixCache
PARETO_SIZE
public static final double PARETO_SIZE
- pareto-optimal size, as dervied in the paper "Maps for the Visualization of high-dimensional Data Space"
- See Also:
- Constant Field Values
distanceMatrix
private InputVectorDistanceMatrix distanceMatrix
radius
private double radius
- The radius for the density calculation
percentiles
cern.colt.matrix.DoubleMatrix1D percentiles
PMatrix
public PMatrix()
needsAdditionalFiles
public String[] needsAdditionalFiles()
- Description copied from interface:
BackgroundImageVisualizer
- Checks whether this visualisation still needs some input files to generate an image.
- Specified by:
needsAdditionalFiles
in interface BackgroundImageVisualizer
- Overrides:
needsAdditionalFiles
in class AbstractBackgroundImageVisualizer
- Returns:
- an array containing the names of the input objects needed
getCacheKey
protected String getCacheKey(GrowingSOM gsom,
int index,
int width,
int height)
- Description copied from class:
AbstractBackgroundImageVisualizer
- The key of a cache is created as follows: VisualisationShortName + Hashcode of the SOM + Width + Height +
Opacity.
Sub-classes might add more information to the cache, if needed.
- Overrides:
getCacheKey
in class AbstractMatrixVisualizer
setOptimalRadius
private void setOptimalRadius()
updateRadiusTextField
private void updateRadiusTextField()
createVisualization
public BufferedImage createVisualization(int index,
GrowingSOM gsom,
int width,
int height)
throws SOMToolboxException
- Description copied from class:
AbstractBackgroundImageVisualizer
- Creates a visualisation image. Subclasses must implement this method.
- Overrides:
createVisualization
in class UMatrix
- Parameters:
index
- the index of the variant to usegsom
- the GrowingSOM to take build the visualisation forwidth
- the desired width of the image, in pixelsheight
- the desired height of the image, in pixels.
- Returns:
- an image for this visualisation.
- Throws:
SOMToolboxException
createPMatrix
public cern.colt.matrix.DoubleMatrix2D createPMatrix(GrowingSOM gsom)
throws MetricException,
LayerAccessException
- Throws:
MetricException
LayerAccessException
coordinates2index
public static int coordinates2index(int row,
int col,
int columns)
createPercentiles
private cern.colt.matrix.DoubleMatrix1D createPercentiles(InputVectorDistanceMatrix distances)
getAllDensities
private cern.colt.matrix.DoubleMatrix1D getAllDensities(InputVectorDistanceMatrix distances,
double radius)
calculateParetoRadiusPercentile
private int calculateParetoRadiusPercentile(InputVectorDistanceMatrix distances,
cern.colt.matrix.DoubleMatrix1D percentiles)
createUStarMatrix
public cern.colt.matrix.DoubleMatrix2D createUStarMatrix(GrowingSOM gsom)
throws MetricException,
LayerAccessException
- Throws:
MetricException
LayerAccessException