Я нашел, что PyPlot является лучшим вариантом для построения в Julia, хотя есть также много других пакетов (Winston, Gadfly, Plotly и т. Д.). PyPlot по существу является оберткой для библиотеки Python Matplotlib, которая сама по себе стремится эмулировать построение графики, доступную в Matlab, но с более «пифонической» точки зрения.
Вот пример, который должен выполнить то, что вы ищете:
using PyPlot
(X1, Y1) = (rand(6), rand(6));
(X2, Y2) = (rand(6), rand(6));
(X3, Y3) = (rand(6), rand(6));
fig = figure(figsize=(10,10))
# xlabel("My X Label") # optional x label
# ylabel("My Y Label") # optional y label
title("Julia Plots Like a Boss")
R = scatter(X1,Y1,color="red", label = "Red Data", s = 40)
G = scatter(X2,Y2,color="blue", label = "Blue Data", s = 60)
B = scatter(X3,Y3,color="green", label = "Green Data", s = 80)
legend(loc="right")
savefig("/path/to/pca1_2_fam.pdf") ## optional command to save results.
Комментарии:
Вы должны питона и Matplotlib установлены уже для того, чтобы это работало. Порядочный, но далеко не единственный способ сделать это, это установить Anaconda (https://www.continuum.io/downloads)
Вы можете получить помощь по всем функциям, используемым здесь через обычный интерфейс Julia, например. ?scatter
дает вам множество возможностей для настройки ваших участков.
Вы можете найти документацию PyPlot here и кучу примеров, которые следует соблюдать here (обратите внимание, что для каждого примера есть ссылка, чтобы показать полный код на github или через IJulia).
Вы также можете обратиться к полной документации Matplotlib here. В частности, вам помогут идеи beginner's guide и examples. Вам нужно будет немного поработать, чтобы перевести их на Джулию, но, надеюсь, другие ресурсы, которые я упомянул выше, дадут необходимые рекомендации для этого.
Update:
Как GersonOliveiraJunior предложено в комментариях, если вы хотите сделать это в первом чтении в данных из файла, вы можете использовать что-то вроде этого:
using DataFrames, PyPlot
pca2 = readtable("path/to/pca1_2_fam.txt", header=false, separator = ' ')
G = pca2[pca2[:,1].=="Name1",3:4]
R = pca2[pca2[:,1].=="Name2",3:4]
B = pca2[pca2[:,1].=="Name3",3:4]
fig = figure(figsize=(10,10))
title("Julia Plots Like a Boss")
scatter(G[:,1],G[:,2],color="green", label = "Green Data", s = 40)
scatter(R[:,1],R[:,2],color="red", label = "Red Data", s = 40)
scatter(B[:,1],B[:,2],color="blue", label = "Blue Data", s = 40)
legend(loc="right")
Try 'используя PyPlot' ....? – daycaster