tikzplotlib을 사용하여 Python에서 2D 밀도 플롯을 만들려고 합니다. 로그 스케일에 컬러바(및 해당 z축)가 필요합니다.
다음은 tex 형식으로 갖고 싶은 png 그림의 예입니다.
Python에서 사용하는 코드는 다음과 같습니다.
f = figure(figsize=(16.2,12.6))
ax = f.add_axes([0.2, 0.02, 0.72, 0.79])
axcolor = f.add_axes([0.95, 0.05, 0.02, 0.72])
im = ax.matshow(fun(X, Y), norm=LogNorm(vmin=1e-1, vmax=1e2))
t = [1e-2, 1e-1, 1e0, 1e1, 1e2]
f.colorbar(im, cax=axcolor, ticks=t)
tikzplotlib.save("2D.tex")
문제는 데이터가 너무 커서 tikzplotlib가 이를 별도의 png 파일로 저장한 다음 2D.tex에 업로드한다는 것입니다. 하지만 더 이상 로그 규모가 아닙니다.
나는 많은 양의 연구를 수행했지만 내가 찾은 모든 대답은 밀도 플롯이 행렬이나 함수로 정의되는 경우를 다루고 있습니다. 대신에 나는 거대한 np.array를 가지고 있습니다.
어떤 도움이라도 감사하겠습니다
답변1
이는 tikzplotlib의 버그인 것으로 보이며 모듈에 대한 더 깊은 이해 없이는 완전히 해결될 수 없습니다. 일반적으로 편리하기는 하지만 단순한 선 그래프에서 벗어나 사용하지 않는 것이 좋습니다. 그 이유는 tikzplot이 오류가 발생하기 쉽고 대부분의 경우 생성된 코드를 수동으로 조정해야 하기 때문입니다. 또 다른 이유는 "순수한" LaTex/PGFPlots로 더 잘 설정되어야 하는 일관된 체계로 일관된 그래프를 갖기 위한 것입니다. 이는 PGFPlots에 정의된 "스타일/템플릿"을 사용하여 가장 잘 달성됩니다.
귀하의 질문에 대답하려면: 가능한 해결 방법은 데이터를 내보내고 LuaLatex를 사용하여 문서를 컴파일하는 것입니다. LuaLatex는 크기 제한이 없으며 pdfLaTex에 비해 다른 많은 장점이 있기 때문에 적극 권장합니다. 그래프뿐만 아니라 전체 문서를 생성하려면 문서를 일부 조정해야 할 수도 있습니다.
보다LuaTex로 어떤 패키지를 로드해야 합니까?자세한 내용은.
이 답변이 여러분에게 조금이나마 도움이 되기를 바랍니다.