2013-09-25 2 views
2

내가 데이터 탐색을 위해 IJulia에 티카 전환하려고, 다음과 같은 티카 한 줄에 아날로그가 있는지 궁금 :IJulia 플롯 한 라이너

ListPlot[Import["/tmp/output.tsv"], Joined -> True] 

ListPlot

output.tsv이가

In [1]: using Gadfly; plot(readdlm("/tmp/output.tsv", '\t', Float64)) 

no method plot(Array{Float64,2},) 
at In[1]:1 
,691 : (X, Y) 쌍

의 탭 묘사 목록은 여기 절름발이 시도이다

답변

3

Gadfly는 배열을 허용하지만 xy 값을 지정해야합니다. 또한, 당신은 미적을 통과해야합니다. 여기

julia> a = [1 2 3; 4 5 6] 
2x3 Array{Int64,2}: 
1 2 3 
4 5 6 

julia> plot(a) 
ERROR: no method plot(Array{Int64,2}) 

julia> plot(x=a[1,:], y=a[2,:], Geom.line) 

는 REPL (안 IJulia)에서 스크린 샷입니다 :

repl screenshot

1

Gadfly가 작동하기 때문에 데이터 프레임 (DataFrames.readtable)으로 읽어야 할 것입니다. Winston과 같은 다른 플로팅 패키지는 원시 데이터를 처리하지만 어쨌든 구조 데이터를 읽는 중이므로 DataFrames 방식이 가장 좋습니다.

+0

가 좋아, 내가하려고 할 때 너무 '귀찮, DataFrames를 사용하여; ("/ tmp/output.tsv", separator = '\ t', header = false))'줄리아 던졌습니다'ArgumentError ("빈 배열을 사용할 수 없습니다.")'. DataFrame을'readtable'에서'x'와'y' 컴포넌트로 분리해야합니까? Gadfly 문서는 이것을 이단적인 패턴이라고 부릅니다 ... –