Verfasst am: 25.11.2013, 10:12
Titel: eine legende über for schleife erstellen
Hallo,
ich hab da noch ne frage.
ich habe ein programm, dass über eine for-schleife die gewünschte anzahl an graphen aus ausgewählten spalten einer matrix erstellt. diese graphen sollen über einen string jeder eigene namen bekommen.
das programm malt die graphen alle ganz schön, allerdings zeigt es in der legende nur den namen für einen graphen an. das ist mein programm:
Code:
load('Versuche.mat');
b=[0:16];
x=input('Wie viele Kurven?');
for i=1:x
a(i,1:16)=num(input('Versuchsnummer'),24:2:54);
n(i,1)=input('Name');
figure(1) holdall;
grid on;
farbe=cell(3,1);
farbe{1,1}='r-';
farbe{2,1}='b-';
farbe{3,1}='g-';
farbe{4,1}='k-';
farbe{5,1}='c-';
farbe{6,1}='y-';
for j=1:x
p(i,1)=plot(b,a(i,: ),farbe{i,1},'Displayname', n(i,1));
hallo
bitte verwende die codeumgebung wenn du code postest
außerdem ist es hiflreich ein lauffähiges minimalbeispiel zu posten. dann muss ich nicht so viel selber schreiben
Lieber Winkow, irgendwie weiß ich nicht, wie ich das ganze auf mein beispiel zuschneide und bräuchte nochmal ein bisschen hilfe. ich hab jetzt mein script versucht zu vereinfachen, auszukommentieren und für jeden lauffähig zu machen. wo muss ich hier deine befehle einsetzen?
Code:
%Beispielscript
clc;clear all; closeall;
% Beispieldatenmatrix
X=[12345; 23456; 34567 ; 45678 ; 56789 ; 678910];
% Beispielvektor, über den daten aus der beispielmatrix aufgetragen werden sollen
b=[12345];
% Menge an Kurven in der Grafik
x=input('wie viele Kurven?');
% Schleife zum Auswählen bestimmter Versuche (Bsp. Zeile 5 wäre Versuchsnummer5) for i=1:x
%bestimmen der versuchsnummer, deren werte aufgetragen werden sollen,
%erstellen einer neuen matrix a mit den y-werten für die Graphen
a(i,1:5)=X(input('Versuchsnummer'),1:5);
%namen der kurven
name{i,1}=input('Name');
%figure öffnen
figure(1);
%alle graphen in ein figure holdall;
%netz
grid on;
%reihenfolge der linienfarben
farbe=cell(6,1);
farbe{1,1}='r-';
farbe{2,1}='b-';
farbe{3,1}='g-';
farbe{4,1}='k-';
farbe{5,1}='c-';
farbe{6,1}='y-';
%schleife zum erstellen der plots.
for j=1:x
plot(b,a(i,:),farbe{i,1});
%die legende funktioniert nicht
legend('show',name{i,1});
end
% Beispieldatenmatrix
X=[12345; 23456; 34567 ; 45678 ; 56789 ; 678910];
% Beispielvektor, über den daten aus der beispielmatrix aufgetragen werden sollen
b=[12345];
% Menge an Kurven in der Grafik
x=input('wie viele Kurven?');
% Schleife zum Auswählen bestimmter Versuche (Bsp. Zeile 5 wäre Versuchsnummer5)
farbe=cell(6,1);
farbe{1,1}='r-';
farbe{2,1}='b-';
farbe{3,1}='g-';
farbe{4,1}='k-';
farbe{5,1}='c-';
farbe{6,1}='y-';
figure(1);
%alle graphen in ein figure hold on;
%netz
grid on;
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
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.