def getYCoord(self, value, side=None):
        if "left" == side:
            yLabelValues = self.yLabelValuesL
            yTop = self.yTopL
            yBottom = self.yBottomL
        elif "right" == side:
            yLabelValues = self.yLabelValuesR
            yTop = self.yTopR
            yBottom = self.yBottomR
        else:
            yLabelValues = self.yLabelValues
            yTop = self.yTop
            yBottom = self.yBottom

        try:
            highestValue = max(yLabelValues)
            lowestValue = min(yLabelValues)
        except __HOLE__:
            highestValue = yTop
            lowestValue = yBottom

        pixelRange = self.area['ymax'] - self.area['ymin']

        relativeValue = value - lowestValue
        valueRange = highestValue - lowestValue

        if self.logBase:
            if value <= 0:
                return None
            relativeValue = (
                math.log(value, self.logBase) -
                math.log(lowestValue, self.logBase))
            valueRange = math.log(highestValue, self.logBase) - math.log(
                lowestValue, self.logBase)

        pixelToValueRatio = pixelRange / valueRange
        valueInPixels = pixelToValueRatio * relativeValue
        return self.area['ymax'] - valueInPixels
dataset/ETHPy150Open brutasse/graphite-api/graphite_api/render/glyph.py/LineGraph.getYCoord