Ich habe eine allgemeine {i, x, y} -Dimensionsmatrix und möchte alle „i“ {x, y} -Matrizen in einem Diagramm darstellen . Wie kann ich das so machen, dass ich immer noch jede „i“ -te Kurve von der anderen unterscheiden kann (ich meine das Erstellen von Kurven mit verschiedenen Farben mithilfe des Diagramms).
Dies ist ein Beispiel für einen Code, den ich geschrieben habe. Da ich jedoch eine Tabelle zum Erstellen einer Schleife verwendet habe, konnte ich die Kurven nicht unterscheiden:
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}]]
Meine realen Matrizen haben höhere Dimensionen, sodass ich Plot [nicht verwenden kann. {}, {}, {}, ..], um die verschiedenen Farben zu erstellen.
Ich wäre dankbar, wenn mir jemand dabei helfen könnte.
Antwort
Hier ist eine Option:
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}]]
Eine weitere Option:
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}]]
gleiches Bild
Kommentare
- Vielen Dank Ich denke, dass ' das ist, was ich will.
- Wie zeige ich die Plotlegenden für verschiedene Farben, die verschiedenen i " s?
- Ich möchte etwas wie PlotLegends – > {Subscript [ Ne, i]}, entsprechend jedem i
- Hinzufügen einer Plotlegende nach {[ Phi], 1, 5} nicht ' funktioniert nicht für mich
- @DelaramNematollahi Die Antwort wurde aktualisiert und enthält nun PlotLegends.