diff --git a/ExperimentsMinimalCounterExampleLength.java b/ExperimentsMinimalCounterExampleLength.java index 01ce387e710552f6935f028ab75f23bde0feb176..6a82b8cd6875e330b259900edefd522fb845a53f 100644 --- a/ExperimentsMinimalCounterExampleLength.java +++ b/ExperimentsMinimalCounterExampleLength.java @@ -24,11 +24,13 @@ import net.automatalib.word.Word; import org.knowm.xchart.QuickChart; import org.knowm.xchart.SwingWrapper; import org.knowm.xchart.XYChart; +import org.knowm.xchart.XYSeries; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Random; +import java.util.stream.Collectors; public class ExperimentsMinimalCounterExampleLength { @@ -184,6 +186,9 @@ public class ExperimentsMinimalCounterExampleLength { // Create the second XY chart (equivalence queries) XYChart chart2 = QuickChart.getChart("Average Equivalence Queries", "Minimal Counterexamplelength", "Queries", seriesNames, minimal_counterexample_length_double, new double[][]{avgEqQueriesLstar, avgEqQueriesRS,avgEqQueriesKV, avgEqQueriesOP, avgEqQueriesTTT}); new SwingWrapper(chart2).displayChart(); + + printXYChartPairs(chart1); + printXYChartPairs(chart2); } // Define the learning methods @@ -418,4 +423,31 @@ public class ExperimentsMinimalCounterExampleLength { } } + public static void printXYChartPairs(XYChart chart) { + // Get all series in the chart + System.out.println("Chart: " + chart.getTitle()); + List<XYSeries> seriesList = chart.getSeriesMap().values().stream().collect(Collectors.toList()); + + // Iterate over each series + for (XYSeries series : seriesList) { + System.out.println("Series: " + series.getName()); + + // Get x and y data + double[] xData = series.getXData(); + double[] yData = series.getYData(); + + // Ensure x and y data are of the same size + if (xData.length != yData.length) { + System.out.println("Mismatch in data size for series: " + series.getName()); + continue; + } + + // Print (x, y) pairs + for (int i = 0; i < xData.length; i++) { + System.out.println("(" + xData[i] + ", " + yData[i] + ")"); + } + } + } + + }