def initializePlot(self):

        # height of col header
        self.mHeaderHeight = max(
            map(len, self.mColNames)) * self.mHeaderFontSize / 2

        if self.mTitle:
            self.mHeaderHeight += self.mSeparator + self.mTitleFontSize

        # width of row header
        self.mHeaderWidth = max(
            map(len, self.mRowNames)) * self.mHeaderFontSize / 2

        # height of footer:
        self.mFooterHeight = 2 * \
            max(self.mFooterFontSize, self.mMaxBoxSize) + self.mSeparator

        if self.mFooter:
            self.mFooterHeight += self.mSeparator + self.mFooterFontSize

        # height and width of data section
        self.mDataWidth = len(col_names) * self.mColWidth
        self.mDataHeight = len(row_names) * self.mRowHeight

        # build coordinates for rows and columns
        self.buildMapRow2Position()
        self.buildMapCol2Position()

        # build colour map
        self.buildColourMap()

        self.mPageWidth = self.mHeaderWidth + \
            self.mDataWidth + 1 * self.mSeparator
        self.mPageHeight = self.mHeaderHeight + self.mDataHeight + \
            self.mFooterHeight + 2 * self.mSeparator + self.mBottomMargin
Returns a copy of this vector.
dataset/ETHPy150Open CGATOxford/cgat/scripts/go2svg.py/GoPlot.initializePlot--crossover with--dataset/ETHPy150Open PythonProgramming/Beginning-Game-Development-with-Python-and-Pygame/Chapter 10/gameobjects/vector3.py/Vector3.copy