Pregunta

estoy usando un DatasetChangeListener para monitorear la modificación de algunos XYSeriesCollection porque un cambio en una serie debe reflejarse en otras series de gráficos de mi aplicación.

public void datasetChanged(DatasetChangeEvent arg0) {
     XYSeriesCollection d = (XYSeriesCollection)arg0.getDataset();
     System.out.println(d.getGroup().getID());
}

Estoy usando DatasetGroup para almacenar una cadena que identifique de forma única el conjunto de datos.

Ahora el punto es que me gustaría saber solo la entrada única del conjunto de datos en la que ocurrió el cambio; de lo contrario, me veo obligado a recorrer todo el conjunto de datos e inspeccionar todos los datos.¿Hay alguna forma de hacer eso?

Por ejemplo, me gustaría saber si se produjo un cambio para la serie 1 de la colección, en el valor y del tercer elemento.¿Es eso posible?

¿Fue útil?

Solución

El Dataset devuelto por getDataset() Probablemente no sea útil en este contexto.En lugar de ello, mire la fuente de un SeriesChangeEvent.Probablemente tendrás que anular uno o más de los add() métodos en una subclase de XYSeries para realizar un seguimiento de los detalles del cambio.

Otros consejos

Resolví parcialmente usando SeriesChangeListener y agregando una cadena de descripción a cada serie, pero aún necesito inspeccionar todos los valores dentro de la serie.Es una mejor solución que usar DatasetChangeListener (no necesito inspeccionar todos los valores de todas las series en el conjunto de datos) pero no es perfecta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top