Generate a bar plot with three columns in each x position and save it to file_name

        :param title: title to be used in the chart
        :param labels: list of labels for the x axis
        :param data1: values for the first columns
        :param file_name: name of the file in which to save the chart
        :param data2: values for the second columns
        :param data3: values for the third columns
        :param legend: legend to be shown in the chart
        :return:

def bar3_chart(self, title, labels, data1, file_name, data2, data3, legend=["", ""]):
        """
        Generate a bar plot with three columns in each x position and save it to file_name

        :param title: title to be used in the chart
        :param labels: list of labels for the x axis
        :param data1: values for the first columns
        :param file_name: name of the file in which to save the chart
        :param data2: values for the second columns
        :param data3: values for the third columns
        :param legend: legend to be shown in the chart
        :return:
        """

        colors = ["orange", "grey"]

        data1 = self.__convert_none_to_zero(data1)
        data2 = self.__convert_none_to_zero(data2)
        data3 = self.__convert_none_to_zero(data3)

        fig, ax = plt.subplots(1)
        xpos = np.arange(len(data1))
        width = 0.28

        plt.title(title)
        y_pos = np.arange(len(data1))

        ppl.bar(xpos + width + width, data3, color="orange", width=0.28, annotate=True)
        ppl.bar(xpos + width, data1, color='grey', width=0.28, annotate=True)
        ppl.bar(xpos, data2, grid='y', width=0.28, annotate=True)
        plt.xticks(xpos + width, labels)
        plt.legend(legend, loc=2)

        os.makedirs(os.path.dirname(file_name), exist_ok=True)
        plt.savefig(file_name)
        plt.close()