@Reference(authors="Erich Achtert, Ahmed Hettab, Hans-Peter Kriegel, Erich Schubert, Arthur Zimek", title="Spatial Outlier Detection: Data, Algorithms, Visualizations", booktitle="Proc. 12th Int. Symp. Spatial and Temporal Databases (SSTD 2011)", url="https://doi.org/10.1007/978-3-642-22922-0_41", bibkey="DBLP:conf/ssd/AchtertHKSZ11") public class KMLOutputHandler extends java.lang.Object implements ResultHandler
Reference:
Erich Achtert, Ahmed Hettab, Hans-Peter Kriegel, Erich Schubert, Arthur
Zimek
Spatial Outlier Detection: Data, Algorithms, Visualizations
Proc. 12th Int. Symp. Spatial and Temporal Databases (SSTD 2011)
Note: This class - currently - is an ugly hack. This code needs to be modularized to make it more reusable, to support multiple results and different result types.
Modifier and Type | Class and Description |
---|---|
static class |
KMLOutputHandler.Parameterizer
Parameterization class
|
Modifier and Type | Field and Description |
---|---|
private boolean |
autoopen
Automatically open at the end
|
private boolean |
compat
Compatibility mode.
|
(package private) java.io.File |
filename
Output file name
|
private static Logging |
LOG
Logger class to use.
|
private static int |
NUMSTYLES
Number of styles to use (lower reduces rendering complexity a bit)
|
(package private) OutlierScaling |
scaling
Scaling function
|
Constructor and Description |
---|
KMLOutputHandler(java.io.File filename,
OutlierScaling scaling,
boolean compat,
boolean autoopen)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
private DoubleObjPair<Polygon> |
buildHullsRecursively(Cluster<Model> clu,
Hierarchy<Cluster<Model>> hier,
java.util.Map<java.lang.Object,DoubleObjPair<Polygon>> hulls,
Relation<? extends NumberVector> coords)
Recursively step through the clusters to build the hulls.
|
static java.awt.Color |
getColorForValue(double val)
Get color from a simple heatmap.
|
private java.lang.StringBuilder |
makeDescription(Cluster<?> c)
Make an HTML description.
|
private java.lang.StringBuilder |
makeDescription(java.util.Collection<Relation<?>> relations,
DBIDRef id)
Make an HTML description.
|
void |
processNewResult(ResultHierarchy hier,
Result newResult)
Process a result.
|
private void |
writeClusteringResult(javax.xml.stream.XMLStreamWriter xmlw,
Clustering<Model> clustering,
Database database) |
private void |
writeNewlineOnDebug(javax.xml.stream.XMLStreamWriter out)
Print a newline when debugging.
|
private void |
writeOutlierResult(javax.xml.stream.XMLStreamWriter xmlw,
OutlierResult outlierResult,
Database database) |
private static final Logging LOG
private static final int NUMSTYLES
java.io.File filename
OutlierScaling scaling
private boolean compat
private boolean autoopen
public KMLOutputHandler(java.io.File filename, OutlierScaling scaling, boolean compat, boolean autoopen)
filename
- Output filenamescaling
- Scaling functioncompat
- Compatibility modeautoopen
- Automatically openpublic void processNewResult(ResultHierarchy hier, Result newResult)
ResultProcessor
processNewResult
in interface ResultProcessor
hier
- The base of the result tree.newResult
- Newly added result subtree.private void writeOutlierResult(javax.xml.stream.XMLStreamWriter xmlw, OutlierResult outlierResult, Database database) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void writeClusteringResult(javax.xml.stream.XMLStreamWriter xmlw, Clustering<Model> clustering, Database database) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private DoubleObjPair<Polygon> buildHullsRecursively(Cluster<Model> clu, Hierarchy<Cluster<Model>> hier, java.util.Map<java.lang.Object,DoubleObjPair<Polygon>> hulls, Relation<? extends NumberVector> coords)
clu
- Current clusterhier
- Clustering hierarchyhulls
- Hull mapprivate java.lang.StringBuilder makeDescription(java.util.Collection<Relation<?>> relations, DBIDRef id)
relations
- Relationsid
- Object IDprivate java.lang.StringBuilder makeDescription(Cluster<?> c)
c
- Clusterprivate void writeNewlineOnDebug(javax.xml.stream.XMLStreamWriter out) throws javax.xml.stream.XMLStreamException
out
- Output XML streamjavax.xml.stream.XMLStreamException
public static final java.awt.Color getColorForValue(double val)
val
- Score valueCopyright © 2019 ELKI Development Team. License information.