def to_marker_edge(marker_size, marker):
    """
    get edge shrink_target
    :param marker_size: int 
    :param marker: default 'o'
    :return: float
    """
    if marker in "s^>v<d":  # `large` markers need extra space
        return pow(2*marker_size,0.5)/2
    else:
        return pow(marker_size,0.5)/2