2011-10-06 12 views
5

Como se indica en la documentación, MATLAB brush no funciona con errorbar parcelas (consulte la sección Tipos de trazado que no puede cepillar). Por ejemplo,¿Hay un reemplazo para el diagrama de barra de error de MATLAB que permite el cepillado de datos?

figure; 
errorbar((1:10)+2*sin(.3:.3:3),cos(1:1:10)/2); 
hold all; 
plot(10:-1:1,'o-g'); 
brush 

genera una parcela donde puedo cepillar los puntos de datos desde el verde plot, pero no desde el rojo errorbar parcela:

screenshot

actualización

Idealmente Me gustaría encontrar una forma de hacer gráficas retroactivamente con barras de error que se puedan quitar, cortar de extraer XData e YData y recrear un gráfico con plot.

En su defecto, ¿hay una función para reemplazar que permite esto para las parcelas que creo en el futuro?

+0

He escrito mi propia versión de 'errorbar' que utiliza' line' en lugar de 'plot' para agregar barras de error. Ponte en contacto conmigo a través del enlace en mi perfil si lo deseas. – Jonas

+0

Creo que lo abordaré con esa oferta, gracias :-). –

Respuesta

2

Los objetos de trama creados a través de line no son cambiables, pero los creados a través de plot son. Como ambos objetos son de tipo line, sospecho que la diferencia podría estar en el nivel de Java.

Sin embargo, esto sugiere una solución: Puede escribir una versión de errorbar que utiliza el comando line en lugar del comando plot para dibujar los errorbars, por tanto, que le permite navegar simplemente la trama.

+0

Entonces, ¿está diciendo que use 'plot' para los puntos de datos y' line' para las barras de error, en contraste con 'errorbar' que supuestamente usa' line' para ambos? –

+0

@Jonas Heidelberg: Esto es exactamente lo que hice (más un montón de otras cosas). Además, miré la última función 'errorbar' de Matlab y creo que la solución resulta muy simple (ver edición). – Jonas

+0

Esa línea de código no se llama con mi código de prueba, solo si 'v6' es verdadero. La depuración muestra que los objetos de línea se crean realmente dentro de 'specgraph.errorbarseries()' ... pero no veo qué impide que se puedan aplicar bruscamente. –

Cuestiones relacionadas