def plot_tps()

in benchmark/data/paper-data/plot-script.py [0:0]


    def plot_tps(self, system, faults, nodes, workers, tx_size, max_latencies):
        assert isinstance(system, str)
        assert isinstance(faults, list)
        assert all(isinstance(x, int) for x in faults)
        assert isinstance(max_latencies, list)
        assert all(isinstance(x, int) for x in max_latencies)
        assert isinstance(tx_size, int)

        scalability = len(workers) > 1
        collocate = not scalability

        self.reset_markers()
        self.reset_linestyles()

        self.results = []
        for f in faults:
            for l in max_latencies:
                filename = (
                    f'{system}.'
                    f'tps-'
                    f'{f}-'
                    f'{"x" if not scalability else nodes[0]}-'
                    f'{"x" if scalability else workers[0]}-'
                    f'{collocate}-'
                    f'any-'
                    f'{tx_size}-'
                    f'{l}.txt'
                )
                if os.path.isfile(filename):
                    with open(filename, 'r') as file:
                        self.results += [file.read().replace(',', '')]

        self.system = system
        z_axis = self._max_latency
        x_label = 'Workers per validator' if scalability else 'Committee size'
        y_label = ['Throughput (tx/s)', 'Throughput (MB/s)']
        marker = next(self.markers)
        color = next(self.colors)
        self._plot(x_label, y_label, self._tps, z_axis, 'tps', marker, color)