일반적인 {i, x, y} 차원 행렬이 있고 모든 “i”{x, y} 행렬을 하나의 그래프에 플로팅하려고합니다. . 각각의 “i”번째 곡선을 다른 곡선과 구분할 수있는 방법으로 어떻게 할 수 있습니까? (플롯을 사용하여 다른 색상의 곡선을 만드는 것을 의미합니다).

이 코드는 제가 작성한 코드의 예입니다. 하지만 테이블을 사용하여 루프를 생성했기 때문에 곡선을 구분할 수 없었습니다.

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

실제 행렬의 차원이 더 높기 때문에 Plot [을 사용할 수 없습니다. {}, {}, {}, ..] 다양한 색상을 만듭니다.

누군가 도와 주면 감사하겠습니다.

답변

다음은 한 가지 옵션입니다.

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

여기에 이미지 설명 입력

다른 옵션 :

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

같은 이미지

댓글

  • 감사합니다. , 나는 ' 내가 원하는 것 같아요
  • 다른 i " s?
  • PlotLegends-> {Subscript [ Ne, i]}, 각 i에 해당
  • {[ Phi], 1, 5} 뒤에 플롯 범례를 추가하면 ' 나에게 적합하지 않음
  • @DelaramNematollahi PlotLegends를 포함하도록 답변을 업데이트했습니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다