Decoupled data generation and plotting