Am o matrice dimensională generală {i, x, y} și vreau să trasez toate matricile „i” {x, y} într-un singur grafic . Cum o pot face într-un mod în care totuși pot distinge fiecare „i” curbă de cealaltă (mă refer la crearea curbelor cu culori diferite folosind graficul).

Acesta este un exemplu de cod pe care l-am scris, dar din moment ce am folosit tabelul pentru a crea o buclă, nu am putut distinge curbele:

a = Table[Random[], {i, 1, 4}, {x, 1, 6}, {y, 1, 5}]; Show[Table[ aFxn = ListInterpolation[(Chop[a[[i + 1]]] - Chop[a[[i]]])]; Table[aFxn[\[Theta], \[Phi]], {\[Theta], 1, 6}, {\[Phi], 1, 5}]; Plot[Abs[aFxn[3, \[Phi]]], {\[Phi], 1, 5}, PlotLegends -> {Subscript[Ne, i]}, PlotRange -> All, AxesLabel -> {Ne, spinupcoefficient}], {i, 1, 3}]] 

Matricele mele reale au dimensiuni mai mari, deci nu pot folosi Plot [ {}, {}, {}, ..] pentru a crea diferitele culori.

Aș fi recunoscător dacă cineva mă poate ajuta cu acest lucru.

Răspunde

Iată o opțiune:

curves = Table[ aFxn = ListInterpolation[(Chop[a[[i + 1]]] - Chop[a[[i]]])]; Abs[aFxn[3, ϕ]] , {i, 1, 3}]; Plot[curves, {ϕ, 1, 5}, PlotLegends -> Table[Subscript[Ne, i], {i, 1, 3}]] 

introduceți descrierea imaginii aici

O altă opțiune:

curve[i_] := ListInterpolation[(Chop[a[[i + 1]]] - Chop[a[[i]]])] Plot[Evaluate@Table[Abs[curve[i][3, ϕ]], {i, 1, 3}], {ϕ, 1, 5}, PlotLegends -> Table[Subscript[Ne, i], {i, 1, 3}]] 

aceeași imagine

Comentarii

  • Vă mulțumim , Presupun că ' este ceea ce vreau
  • Cum să fac să arăt legendele pentru diferite culori corespunzătoare diferitelor i " s?
  • Vreau sth ca PlotLegends – > {Subscript [ Ne, i]}, corespunzător fiecărei i
  • adăugarea legendei graficului după {[ Phi], 1, 5} nu ' nu funcționează pentru mine
  • @DelaramNematollahi Răspuns actualizat pentru a include PlotLegends.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *