support dynamic plot sizes
merged