2016-08-18 5 views
0

Ich habe Matlab GUI erstellt mit der Anleitung, wo ist eine Achse, wo ich zwei Linien mit der Funktion plotyy(X1,Y1,X2,Y2) so eine Linie mit der linken y-Achse und die zweite mit der rechten y verbunden ist -Achse.Matlab bekomme das Linienobjekt von den Achsen

Ich habe eine Funktion, wo ich nur 'handles.axes1' eingeben und ich bekomme alle Linien, die in der Achse gezeichnet werden und kopieren sie auf die neue Figur. Das Problem ist, dass dies nicht mit der Handlung funktioniert (...) Ich bekomme nur eine Zeile. Dies ist mein Code (hObject ist ein handles.axis die ausgewählt wurden)

copyobj(get(hObject,'Child'), findobj(get(activeFigures(i),'Children'),'Type','Axes')); 

Wenn ich findall(hObject) verwende ich bekommen:

  • Achsen (axes1)
  • Text (PlotyyDeleteProxy)
  • Treppe (plausibel)
  • Text (Gesamt (Anzahl der Proben: 30947))
  • Text (Monat)
  • Text (Anzahl der Sapmles)
  • Text

und Treppen plausibel enthält inly eine Zeile.

Antwort

0

plotyy erzeugt tatsächlich zwei verschiedene Achsen übereinander. Sie müssen daher die Kinder von beiden Achsen in Ihre neuen Figurenachsen kopieren.

Um diese Achsen zu finden entweder laufen

axes_handle_array=plotyy(X1, Y1, X2, Y2) 

oder

axes_handle_array=findall(gcf,'type','axes') 
Verwandte Themen