WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Öffnen einer Matrix/Vektors zu einem bestimmte Index

 

redscale
Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 08.07.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.07.2015, 15:58     Titel: Öffnen einer Matrix/Vektors zu einem bestimmte Index
  Antworten mit Zitat      
Hallo Allerseits,

ich würde gerne eine Funktion in ein Skript einfügen, habe aber noch nicht rausfinden können wie sie sich realisieren lässt.

Es geht um Folgendes:
Ich habe gerade mit Messreihen zu tun, die in einer 525600 x 18 Matrix untergebracht sind. Diese Reihen weisen leider Fehler auf, die ich ausbügeln muss. Ein paar Funktionen zur automatisierten Fehlerbehebung habe ich schon geschrieben und die funktionieren. Allerdings gibt es auch immer wieder Fehler die nicht in diese Raster fallen und dann muss ich mir erstmal die Werte in der Matrix (also im Variableneditor) angucken und entscheiden was dann zu tun ist.

Für mich wäre es nun ein enormer Zeitgewinn, wenn es eine Möglichkeit gibt, den Editor dazu zu bringen die Matrix direkt beim betreffenden Index anzuzeigen. Z.B. Fehler an Index 335272 -> der Editor zeigt mit die Matrix nicht ab Index 1, sondern direkt ab Index 335272 an.

Habt ihr eine Idee wie man so etwas realisieren könnte?

Viele Grüße,
Mathias
Private Nachricht senden Benutzer-Profile anzeigen


redscale
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 08.07.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.07.2015, 10:34     Titel:
  Antworten mit Zitat      
Ich habe nun auf einem Blog eine theoretische Lösung gefunden, kann damit aber wenig anfangen da ich mich nicht so gut mit Matlab auskenne.
Wäre cool wenn mir jemand bei den Parametern, die eingesetzt werden müssen, helfen könnte:

Code:
% Create example variable
a = randn(1e8,1);
name = 'a';
 
% Open 'a' in the VE or grab focus
openvar(name)
 
% Retrieve Desktop instance and handle to client
desktop = com.mathworks.mde.desk.MLDesktop.getInstance;
varclient = desktop.getClient(name);
 
% Retrieve handle to scrollable table with findjobj
jVarTable = findjobj(varclient,'property',{'name','VariableTable'});
 
% Select, scroll and update the UI (note the zero-indexing, i.e. row-1)
row = 5677545;
col = 1;
jVarTable.setRowSelectionInterval(row-1, row-1)
jVarTable.setColumnSelectionInterval(col-1, col-1)
jVarTable.scrollCellToVisible(row-1, col-1)
jVarTable.updateUI


Woran ich scheitere sind die Attribute für findobj. Wenn ich den Code einfach so ausführe, kommt die Fehlermeldung
.
Code:
??? Undefined function or method 'findjobj' for input arguments of type 'cell'.


Die einzelnen Zellen meiner Matrix enthalten Zahlen vom Typ double. Mit was muss ich also findobj füttern, damit es funktionier?

Grüße,
Mathias
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 10.07.2015, 10:46     Titel:
  Antworten mit Zitat      
Hallo,

im Code hast du findjobj statt findobj.
Bitte immer den Link zu solchen Blogs mit posten.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
redscale
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 08.07.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.07.2015, 10:47     Titel:
  Antworten mit Zitat      
Sorry, hier der Link:

http://undocumentedmatlab.com/blog/variables-editor-scrolling

Ich habe den Code verbessert, kriege jetzt allerdings die Meldung

??? Attempt to reference field of non-structure array.

Error in ==> datei at 20
jVarTable.setRowSelectionInterval(row-1, row-1)

What to do?
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.