来自纯 Java API 的 Elki 图

Elki plots from pure Java API

我一直在寻找一种方法将 ELKI 生成的可视化导出到 SVG 文件中,稍后可以在我的应用程序中显示。但是,我找不到任何使用典型 java 构造函数的示例代码。我的目标是:

例如,假设我已经有一个 OutlierResult 实例,现在我想使用 BubbleVisualization 绘制分数并生成一个 SVG 文件?我怎样才能使用纯 Java API?

有些 class 像 VisualizerParameterizer 手动设置 可能有点烦人,因为这涉及从服务加载器中找到所有需要的可视化工厂- 那里有一个 plug-in 层,允许添加新的可视化效果以自动呈现。

因此,最简单的方法是使用参数化API,例如(git样式):

ExportVisualizations export = new ELKIBuilder<>(ExportVisualizations.class)
    .with(ExportVisualizations.Parameterizer.FOLDER_ID, "folder")
    .build();

或者如果您仍在使用旧版本/不喜欢构建器:

ListParameterization params = new ListParameterization();
params.addParameter(ExportVisualizations.Parameterizer.FOLDER_ID, "folder");
ExportVisualizations export = ClassGenericsUtil.parameterizeOrAbort(
                                  ExportVisualizations.class, params);

因为你只需要给强制参数,就可以构造嵌套对象。在这种情况下,它还会构造VisualizerParameterizer,因此您还可以为class添加选项,例如

.with(VisualizerParameterizer.Parameterizer.ENABLEVIS_ID, "scatter")

仅启用散点图可视化。