Fasci di curve su grafico.

di il
1 risposte

Fasci di curve su grafico.

Buongiorno,
sono nuovo del forum, dunque prima di tutto vi saluto, e mi congratulo per la bella community!
Vi scrivito in merito ad un problema, dovrei visualizzare dei risultati di un mio algoritmo sulla stessa finestra di un grafico, variando alcuni dati in ingresso.
Mi spiego meglio: il mio algoritmo è essenzialmente basato su due cicli for annidati:

for parametro1=10:50 %CICLO ESTERNO

     for parametro 2=15:45 %CICLO INTERNO
        [...codice]
        
        plot(parametro1, risultato(parametro1, parametro2) 
        hold on;
        
     end
      
L'idea è quella che ad ogni iterazione su p1 (ciclo esterno) mi riporti sul grafico una linea (serie di risultati, in funzione di p1 e p2) portandomi a legenda che quella linea corrisponda ad una dato valore di p1. Vorrei ottenere un fascio di curve al variare di p1.
Spero di essermi spiegato, sufficientemente bene. Qualcuno sa come fare?
Grazie.

1 Risposte

  • Re: Fasci di curve su grafico.

    La domanda non è chiara.
    Dovresti inserire una porzione del codice che consenta di capire esattamente cosa vuoi realizzare; al momento non si capisce quale sia il problema e come generi le curve che vuoi plottare.

    Nell'istruzione plot
    
    plot(parametro1, risultato(parametro1, parametro2)
    
    cosa è "risultato(parametro1, parametro2)"? Una funzione? Se sì, cosa ritorna? Uno scalare? Un vettore?

    Per creare la "legenda" puoi costruire, all'interno del ciclo for esterno (visto che è legata al variare del suo indice) un "cellarray" di stringhe da passare come input alla funzione "legend"; una possibilità potrebbe essere:
    
    leg={};
    cnt=0;
    for parametro_1=10:50
       leg{cnt}=['Parametro 1= ' num2str(p1)]
       for parametro_2=15:45
       % codice
       end
    end
    legend(leg)
    
Devi accedere o registrarti per scrivere nel forum
1 risposte