我正在使用 java 中的 JfreeChart 库,我正在为排序方法绘制图表,但我希望在执行时显示交换,我发生的事情是,在每次交换中,图表都会更新但在代码的末尾,图表没有向我显示其中正确排序的值。但是,我想了一会儿,错误的是气泡方法,但事实并非如此,该方法的顺序正确。有什么解决办法吗。。
示例图像: 图像
这是我制作的代码:
private void graficar(int vector[]) {
DefaultCategoryDataset datos = new DefaultCategoryDataset();
JFreeChart chart = null;
for (int i = 0; i < vector.length; i++) {
datos.addValue(vector[i], "", "" + vector[i]);
//Crear el gráfico...
}
chart = ChartFactory.createBarChart("Metodo " + cbMetodo.getSelectedItem().toString(),
"",
"",
datos,
PlotOrientation.VERTICAL,
true,
true,
true);
//crear y visualizar en el panel
ChartPanel panel = new ChartPanel(chart);
panelGrafica.setLayout(new java.awt.BorderLayout());
panelGrafica.add(panel);
panelGrafica.validate();
}
private void burbuja() {
for (int x = 0; x < vector.length; x++) {
for (int i = 0; i < vector.length - x - 1; i++) {
if (vector[i] > vector[i + 1]) {
int tmp = vector[i + 1];
vector[i + 1] = vector[i];
vector[i] = tmp;
graficar(vector);
}
}
}
}