У меня есть следующая функция для выполнения PCA и отображения результатов в соответствии с меткой данных ...
double [][] data = ReadInData.mat("/datasets/iris.mat", "data");
PrincipalComponentAnalysis pca = new PrincipalComponentAnalysis();
double[][] Y = pca.pca(X, 2);
Plot2DPanel plot = new Plot2DPanel();
Plot clusterPlot = null;
int[] labels = ReadInData.labelread("/datasets/iris.mat", "gold");
if (gold != null) {
for (int i = 0; i < Y.length; i++) {
clusterPlot = new ScatterPlot("", PlotPanel.COLORLIST[labels[i]], Y[i]);
}
} else {
clusterPlot = new ScatterPlot("", PlotPanel.COLORLIST[0], Y);
}
plot.plotCanvas.setNotable(true);
plot.plotCanvas.setNoteCoords(true);
plot.plotCanvas.addPlot(clusterPlot);
FrameView plotframe = new FrameView(plot);
plotframe.setVisible(true);
Я получаю ошибку в этой строке на Y [i] в первом для l oop, говоря
Конструктор ScatterPlot (String, Color, double []) не определен
Я попытался удалить [i] здесь, но тогда он просто появляется того же цвета. Я полагаю, что это связано с тем, что ScatterPlot ищет double [] [], но я предоставил double []. Кто-нибудь может предложить что-нибудь еще, например, как преобразовать одномерный двойной в двухмерный двойной?