Adds compare between multiple folders

This commit is contained in:
Lukas Prause
2023-02-28 15:54:30 +01:00
parent b95d5202d5
commit 50afb7e4e9

View File

@@ -69,10 +69,8 @@ def plot_cdf(dataframe, column_name, axis=None):
if __name__ == "__main__": if __name__ == "__main__":
parser = ArgumentParser() parser = ArgumentParser()
parser.add_argument("--serial1", required=True, help="Serial csv file1.") parser.add_argument("-s", "--serials", required=True, help="Serial csv files. Comma separated.")
parser.add_argument("--serial2", required=True, help="Serial csv file2.") parser.add_argument("-f", "--folders", required=True, help="PCAP csv folders. Comma separated.")
parser.add_argument("--folder1", required=True, help="PCAP csv folder1.")
parser.add_argument("--folder2", required=True, help="PCAP csv folder2.")
parser.add_argument("--save", default=None, help="Location to save pdf file.") parser.add_argument("--save", default=None, help="Location to save pdf file.")
parser.add_argument( parser.add_argument(
"-c", "-c",
@@ -92,7 +90,7 @@ if __name__ == "__main__":
args = parser.parse_args() args = parser.parse_args()
transmission_df_list = list() transmission_df_list = list()
for f in [args.folder1, args.folder2]: for f in args.folders.split(","):
manager = multiprocessing.Manager() manager = multiprocessing.Manager()
n = manager.Value("i", 0) n = manager.Value("i", 0)
frame_list = manager.list() frame_list = manager.list()
@@ -189,22 +187,28 @@ if __name__ == "__main__":
)) ))
# Plot sRTT CDF # Plot sRTT CDF
legend = list()
plot_cdf(transmission_df_list[0]["df"], "srtt") plot_cdf(transmission_df_list[0]["df"], "srtt")
plot_cdf(transmission_df_list[1]["df"], "srtt", axis=plt.gca()) for i in range(1, len(transmission_df_list)):
plot_cdf(transmission_df_list[i]["df"], "srtt", axis=plt.gca())
legend.append(transmission_df_list[i]["cc_algo"])
plt.xscale("log") plt.xscale("log")
plt.xlabel("sRTT [s]") plt.xlabel("sRTT [s]")
plt.ylabel("CDF") plt.ylabel("CDF")
plt.legend([transmission_df_list[0]["cc_algo"], transmission_df_list[1]["cc_algo"]]) plt.legend(legend)
plt.title("{}".format(transmission_direction)) plt.title("{}".format(transmission_df_list[0]["transmission_direction"]))
plt.savefig("{}{}_cdf_compare_plot.pdf".format(args.save, "srtt")) plt.savefig("{}{}_cdf_compare_plot.pdf".format(args.save, "srtt"))
plt.clf() plt.clf()
# Plot goodput CDF # Plot goodput CDF
legend = list()
plot_cdf(transmission_df_list[0]["df"], "goodput") plot_cdf(transmission_df_list[0]["df"], "goodput")
plot_cdf(transmission_df_list[1]["df"], "goodput", axis=plt.gca()) for i in range(1, len(transmission_df_list)):
plot_cdf(transmission_df_list[i]["df"], "goodput", axis=plt.gca())
legend.append(transmission_df_list[i]["cc_algo"])
plt.xlabel("goodput [mbps]") plt.xlabel("goodput [mbps]")
plt.ylabel("CDF") plt.ylabel("CDF")
plt.legend([transmission_df_list[0]["cc_algo"], transmission_df_list[1]["cc_algo"]]) plt.legend(legend)
plt.title("{}".format(transmission_direction)) plt.title("{}".format(transmission_df_list[0]["transmission_direction"]))
plt.savefig("{}{}_cdf_compare_plot.pdf".format(args.save, "goodput")) plt.savefig("{}{}_cdf_compare_plot.pdf".format(args.save, "goodput"))