|
|
|
|
|
|
|
|
from mpl_toolkits import axisartist |
|
|
from mpl_toolkits import axisartist |
|
|
from mpl_toolkits.axes_grid1 import host_subplot |
|
|
from mpl_toolkits.axes_grid1 import host_subplot |
|
|
|
|
|
|
|
|
from util import chunk_list |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def csv_to_dataframe(csv_list, dummy): |
|
|
def csv_to_dataframe(csv_list, dummy): |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if args.save: |
|
|
if args.save: |
|
|
plt.savefig("{}timeline_plot.pdf".format(args.save)) |
|
|
plt.savefig("{}timeline_plot.pdf".format(args.save)) |
|
|
|
|
|
else: |
|
|
|
|
|
plt.show() |
|
|
|
|
|
|
|
|
|
|
|
plt.clf() |
|
|
|
|
|
|
|
|
|
|
|
# Get the frequency, PDF and CDF for each value in the series |
|
|
|
|
|
|
|
|
|
|
|
# Frequency |
|
|
|
|
|
stats_df = transmission_df \ |
|
|
|
|
|
.groupby("goodput") \ |
|
|
|
|
|
["goodput"] \ |
|
|
|
|
|
.agg("count") \ |
|
|
|
|
|
.pipe(pd.DataFrame) \ |
|
|
|
|
|
.rename(columns={"goodput": 'frequency'}) |
|
|
|
|
|
|
|
|
|
|
|
# PDF |
|
|
|
|
|
stats_df['pdf'] = stats_df['frequency'] / sum(stats_df['frequency']) |
|
|
|
|
|
|
|
|
|
|
|
# CDF |
|
|
|
|
|
stats_df['cdf'] = stats_df['pdf'].cumsum() |
|
|
|
|
|
stats_df = stats_df.reset_index() |
|
|
|
|
|
|
|
|
|
|
|
stats_df.plot(x="goodput", y=["cdf"], grid=True) |
|
|
|
|
|
|
|
|
|
|
|
if args.save: |
|
|
|
|
|
plt.savefig("{}cdf_plot.pdf".format(args.save)) |
|
|
else: |
|
|
else: |
|
|
plt.show() |
|
|
plt.show() |