Mac에서 Julia #12 그래프 그리기
문서 에 따라 시험해 갑니다.
이번에는 그래프를 그려보고 싶습니다.
그래프 그리기
명령줄에서 그래프 그리기
커맨드 라인에서 그래프를 그려보고 싶지만 콘솔에서 어떻게 그릴 수 있을까?
Plots와 GR이라는 패키지를 사용합니다.
sh-3.2$ julia
_
_ _ _(_)_ | Documentation: https://docs.julialang.org
(_) | (_) (_) |
_ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.0.0 (2018-08-08)
_/ |\__'_|_|_|\__'_| | Official https://julialang.org/ release
|__/ |
julia> import Pkg
julia> Pkg.add("Plots")
Updating registry at `~/.julia/registries/General`
Updating git-repo `https://github.com/JuliaRegistries/General.git`
Resolving package versions...
Updating `~/.julia/environments/v1.0/Project.toml`
[no changes]
Updating `~/.julia/environments/v1.0/Manifest.toml`
[no changes]
julia> Pkg.add("GR")
Resolving package versions...
Updating `~/.julia/environments/v1.0/Project.toml`
[no changes]
Updating `~/.julia/environments/v1.0/Manifest.toml`
[no changes]
julia> using Plots
julia> Plots.gr()
Plots.GRBackend()
julia> f(x)=sin(x)
f (generic function with 1 method)
julia> plot(f)
julia>
뭔가 이미지가 나왔습니다! GKSTerm은 언제 설치되었는지 ...
조사한 결과
~/.julia/packages/GR/fnyt8/deps/gr/Applications/GKSTerm.app
로 설치되었습니다.Jupyter notebook로 그래프 그리기
친숙한 명령으로 잘 작동했습니다.
먼저 Jupyter 노트북을 이동합니다.
julia> Pkg.add("IJulia")
Resolving package versions...
Updating `~/.julia/environments/v1.0/Project.toml`
[no changes]
Updating `~/.julia/environments/v1.0/Manifest.toml`
[no changes]
julia> using IJulia
julia> IJulia.notebook()
명령행과 동일한 명령을 함께 실행합니다.
여기 잘 그릴 수있었습니다.
패키지 정보
Plots와 GR이라는 패키지는 무엇입니까?
Plots 패키지
플롯
Tutorial 는 이쪽입니다.
구체적으로 그래프를 그린다는 패키지입니까.
샘플은 이런 느낌
julia> using Plots
julia> x = 1:10; y = rand(10);
julia> plot(x,y)
y를 배열로 하면 2개의 그래프도 그릴 수 있습니다. 그 밖에도 프로퍼티를 추가한 샘플입니다.
julia> x = 1:10; y = rand(10,2);
julia> plot(x,y,title="Two Lines",label=["Line 1" "Line 2"],lw=3)
기존 이미지에 속성을 추가해 봅니다.
julia> xlabel!("My x label日本語")
X축에 라벨이 나왔습니다, 단지 디폴트라면 일본어 폰트가 아닌 것 같게 문자화했습니다.
이미지 저장
julia> savefig("myplot.png")
GKSTerm 화면이 사라지고 이미지가 저장되었습니다.
왠지 글꼴이 다르네요.
Lorenz Attractor
토 CS. 나무 아 p ts. 오 rg 에서는 더 굉장한 그래프 샘플이 있습니다.
# define the Lorenz attractor
mutable struct Lorenz
dt; σ; ρ; β; x; y; z
end
function step!(l::Lorenz)
dx = l.σ*(l.y - l.x) ; l.x += l.dt * dx
dy = l.x*(l.ρ - l.z) - l.y ; l.y += l.dt * dy
dz = l.x*l.y - l.β*l.z ; l.z += l.dt * dz
end
attractor = Lorenz((dt = 0.02, σ = 10., ρ = 28., β = 8//3, x = 1., y = 1., z = 1.)...)
# initialize a 3D plot with 1 empty series
plt = plot3d(1, xlim=(-25,25), ylim=(-25,25), zlim=(0,50),
title = "Lorenz Attractor", marker = 2)
# build an animated gif by pushing new points to the plot, saving every 10th frame
@gif for i=1:1500
step!(attractor)
push!(plt, attractor.x, attractor.y, attractor.z)
end every 10
왠지 대단합니다.
GR 패키지
플롯의 백엔드로 실제 이미지를 생성하는 것 같습니다. 시각화 라이브러리라고 합니까?
오모토는 여기 GR Framework 인가?
Julia Package GR 도 문서화되어 있습니다.
julia> Pkg.add("GR")
Updating registry at `~/.julia/registries/General`
Updating git-repo `https://github.com/JuliaRegistries/General.git`
Resolving package versions...
Updating `~/.julia/environments/v1.0/Project.toml`
[no changes]
Updating `~/.julia/environments/v1.0/Manifest.toml`
[no changes]
julia> using GR
julia> histogram(randn(10000))
오늘은 이 근처에서.
Reference
이 문제에 관하여(Mac에서 Julia #12 그래프 그리기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/qoAop/items/ded33191770ab0658506텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)