Eu tenho uma matriz dimensional {i, x, y} geral e quero plotar todas as matrizes “i” {x, y} em um gráfico . Como posso fazer isso de forma que ainda consiga distinguir cada “i” ésima curva da outra (quero dizer, criar curvas com cores diferentes usando o gráfico).

Este é um exemplo de um código que escrevi, mas, como usei a tabela para criar um loop, não consegui distinguir as curvas:

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}]] 

Minhas matrizes reais têm dimensões mais altas, então não posso usar Plot [ {}, {}, {}, ..] para criar as cores diferentes.

Eu ficaria grato se alguém pudesse me ajudar com isso.

Resposta

Aqui está uma opção:

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}]] 

insira a descrição da imagem aqui

Outra opção:

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}]] 

mesma imagem

Comentários

  • Obrigado , Eu acho que ' é o que eu quero
  • Como fazer Eu mostro as legendas de plotagem para cores diferentes correspondentes a i " s?
  • Eu quero sth como PlotLegends – > {Subscript [ Ne, i]}, correspondendo a cada i
  • adicionar legenda de gráfico após {[ Phi], 1, 5} não ' t funciona para mim
  • @DelaramNematollahi Resposta atualizada para incluir PlotLegends.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *