using DataFrames, Gadfly channels = ["c1", "c2", "x1", "y1"] stats = ["max", "min", "mean"] timediff = DataFrame() for channel in channels for stat in stats raw = readdlm("$channel$stat.dat") data = DataFrame(Time = raw[:,1], Offset = raw[:,2], Statistic = stat, Channel = channel) timediff = [timediff; data] end end set_default_plot_size(20cm, 12cm) # describe(timediff) p = plot( timediff[timediff[:Channel] .== "c1", :], x="Offset", color="Statistic", Geom.histogram, Guide.title("1PPS Time Difference in Corner MSR Time Code Generator during ER7"), Guide.xticks(ticks=[-0.5:0]) ) draw(PNG("C_MA_A_PORT_2_SLAVE_CFC_TIMEDIFF_1.png", 40cm, 24cm), p) p p = plot( timediff[((timediff[:Channel] .== "c1") & (timediff[:Offset] .< -8e-6)), :], x="Offset", color="Statistic", Geom.histogram, Guide.title("1PPS Time Difference in Corner MSR Time Code Generator during ER7"), Guide.xticks(ticks=[-0.5:0]) ) draw(PNG("C_MA_A_PORT_2_SLAVE_CFC_TIMEDIFF_1-outlier.png", 40cm, 24cm), p) p p = plot( timediff[((timediff[:Channel] .== "c1") & (timediff[:Offset] .> -8e-6)), :], x="Offset", color="Statistic", Geom.histogram(position=:stack), Guide.title("1PPS Time Difference in Corner MSR Time Code Generator during ER7"), Guide.xticks(ticks=[-1e-6:1e-7:-4e-7]) ) draw(PNG("C_MA_A_PORT_2_SLAVE_CFC_TIMEDIFF_1-main.png", 40cm, 24cm), p) p p = plot( timediff[timediff[:Channel] .== "x1", :], x="Offset", color="Statistic", Geom.histogram, Guide.title("1PPS Time Difference in EX Time Code Generator during ER7"), Guide.xticks(ticks=[-1e-6:1e-7:-4e-7]) ) draw(PNG("X_FO_A_PORT_9_SLAVE_CFC_TIMEDIFF_1.png", 40cm, 24cm), p) p p = plot( timediff[timediff[:Channel] .== "y1", :], x="Offset", color="Statistic", Geom.histogram, Guide.title("1PPS Time Difference in EY Time Code Generator during ER7"), Guide.xticks(ticks=[-1e-6:1e-7:-4e-7]) ) draw(PNG("Y_FO_A_PORT_9_SLAVE_CFC_TIMEDIFF_1.png", 40cm, 24cm), p) p p = plot( timediff[(timediff[:Channel] .!= "c2") & (timediff[:Offset] .> -8e-6) & (timediff[:Statistic] .== "mean"), :], x="Offset", color="Channel", Geom.histogram(position=:dodge), Guide.title("Mean Minute-trend 1PPS Time Difference in Time Code Generators during ER7"), Guide.xticks(ticks=[-1e-6:1e-7:-4e-7]) ) draw(PNG("time-code-generators-mean-time-difference.png", 40cm, 24cm), p) p p = plot( timediff[timediff[:Channel] .== "c2", :], x="Offset", color="Statistic", Geom.histogram, Guide.title("1PPS Time Difference in Trimble GPS Clock in Corner MSR during ER7") ) draw(PNG("C_MA_A_PORT_2_SLAVE_CFC_TIMEDIFF_2.png", 40cm, 24cm), p) p