-
줄리아에서 윈도 벌룬으로 알림 띄우는 법
코드
줄리아를 어떤 목적으로 사용하든, 태스크가 끝나거나 문제가 발생했을 때 윈도 알림을 통해 보고를 받을 수 있으면 여러 면에서 편리할 것이다. 다음 코드는 윈도에서 파워쉘을 통해 특정 텍스트를 벌룬으로 띄우는 함수 balloon
를 정의한 것이다.
function balloon(msg = "에러가 발생했습니다")
run(`powershell -command "[reflection.assembly]::loadwithpartialname('System.Windows.Forms') | Out-Null; \$n=new-object system.windows.forms.notifyicon; \$n.icon=[System.Drawing.SystemIcons]::Error; \$n.visible=\$true; \$n.showballoontip(5000,'알림','$msg',[system.windows.forms.tooltipicon]::Error); Start-Sleep -Seconds 5; \$n.dispose()"`)
return nothing
end
실제로 실행하면 다음과 같이 작동한다.
근본적으로 이 방법은 패키지에 의존하지 않고 파워쉘 그 자체를 사용하는 것이기 때문에 system.windows.forms.tooltipicon
을 검색해서 MS 공식 문서를 읽는 식으로 기능을 추가하고 확장할 수 있을 것이다.
대안: Alert.jl
지금까지 소개한 방법은 패키지 의존성이 없는 대신 윈도에서만 사용할 수 있는 방법이었다. Alert.jl
는 크로스플랫폼을 지원해서 OS에 관계 없이 알림을 사용할 수 있는 패키지다1.
줄리아에서 푸리에 역변환 직접 구하는 법
줄리아에서 시스템 이미지로 패키지 로드 속도 빠르게 하는 법
julia -J sysimage.so
using PackageCompiler
create_sysimage(["Plots"], sysimage_path="sys_plots.so", precompile_execution_file="precompile_plots.jl")
"julia.environmentPath": "C:\\Users\\대식\\path\\to\\your\\project",
"julia.additionalArgs": [
"--sysimage",
"C:\\Users\\대식\\path\\to\\sys_plots.so"
]
이거 글 좀 크다… 쉽게 끝날 일이 아님
줄리아로 외부 커맨드에서 실행시킬 코드를 직접 주는 법
julia -e “특정 커맨드”
줄리아 패키지 설치 속도 확인하는 법
https://discourse.julialang.org/t/any-way-to-speed-up-loading-large-precompiled-packages/98762/11
@time_import
줄리아 막대그래프에서 테두리 없애는 법 lw = 0
줄리아 라벨에 다른 번호 쓰는 법
plt = scatter(expanded.u, color = expanded.label, xticks = (lasticds, 1:29), msw = 0, ms = 1, dpi = 300, legend = :none, size = 50 .* [16, 9]);
줄리아 레이텍 문자열에서의 보간법
https://github.com/JuliaStrings/LaTeXStrings.jl
https://discourse.julialang.org/t/plots-string-interpolation-in-labels/10799/4
x=3
L"y = %$x"
plot(rand(10), xlabel = L"y = %$x")
줄리아에서 데이터 읽어들일 때 깨지는 인코딩 문제 해결
https://github.com/JuliaStrings/StringEncodings.jl
줄리아 GR 백엔드 폰트 목록
https://gr-framework.org/fonts.html
다항함수 인터폴레이션의 실제 구현(수치해석)
using Plots, Polynomials
function interpolate(xs, ys)
V = [x^(i-1) for x in xs, i in 1:length(xs)]
coeffs = V \ ys
return Polynomial(coeffs)
end
foo = sort(rand(5))
bar = randn(5)
p = interpolate(foo, bar)
plot(0:0.01:1, p.(0:0.01:1))
scatter!(foo, bar)
근데 이것보단 원래 있는 API로 하는 게 나을듯
https://juliamath.github.io/Polynomials.jl/stable/reference/#Polynomials.fit
줄리아 히트맵에서 특정 부붙 투명하게 남겨두는 법
# 색상은 1일 때만 빨간색, 나머지는 아무것도 렌더링되지 않도록
heatmap!(vf, x_, y_, nc_x',
alpha = nc_x',
color = [:transparent, :red],
colorbar = :none,
transpose = true
)
텍 여러가지 화살표
\gets \to \implies \iff \impliedby \mapsto \longimplies
텍 소수점 정렬
\documentclass{article} \usepackage{array, siunitx}
\begin{document}
\begin{table}[h] \centering \begin{tabular}{S[table-format=3.2]} \hline {값} \ \hline 12.3 \ 4.56 \ 123.4 \ 78.91 \ \hline \end{tabular} \caption{소수점을 기준으로 정렬된 테이블} \end{table}
\end{document}
텍 등호 정렬
\documentclass{article}
\usepackage{breqn} % 자동 줄바꿈과 등호 정렬
\begin{document}
\begin{dmath}
dx = -0.018 x^{2} + 0.023 x y - 0.008 y^{2} + 0.033 x^{3} - 0.083 x^{2} y + 0.065 x y^{2} - 0.012 y^{3} + 0.02 x^{4} - 0.093 x^{3} y + 0.169 x^{2} y^{2} - 0.137 x y^{3} + 0.038 y^{4} - 0.037 x^{5} + 0.192 x^{4} y - 0.412 x^{3} y^{2} + 0.447 x^{2} y^{3} - 0.244 x y^{4} + 0.054 y^{5} + 0.011 x^{6} - 0.066 x^{5} y + 0.173 x^{4} y^{2} - 0.241 x^{3} y^{3} + 0.188 x^{2} y^{4} - 0.077 x y^{5} + 0.013 y^{6}
\end{dmath}
\begin{dmath}
dy = 0.009 + 0.006 x - 0.003 y + 0.005 x^{2} - 0.005 y^{2} - 0.025 x^{3} + 0.073 x^{2} y - 0.086 x y^{2} + 0.034 y^{3} - 0.025 x^{4} + 0.109 x^{3} y - 0.157 x^{2} y^{2} + 0.094 x y^{3} - 0.018 y^{4} + 0.068 x^{5} - 0.362 x^{4} y + 0.771 x^{3} y^{2} - 0.82 x^{2} y^{3} + 0.439 x y^{4} - 0.095 y^{5} - 0.027 x^{6} + 0.175 x^{5} y - 0.472 x^{4} y^{2} + 0.677 x^{3} y^{3} - 0.547 x^{2} y^{4} + 0.236 x y^{5} - 0.042 y^{6}
\end{dmath}
\end{document}
텍 서수 표현
1\textsuperscript{st}, 2\textsuperscript{nd}