refactoring axis renderer