i feel like this should maybe get its own function separate from axes init