"heatmap" has no argument "margines". This is a typo. It should read "margins". And I think that negative values for margins make no sense.
see
?heatmap
Not sure if this solves your problem.
Additionally please check if the graphics device has a pre-specified "layout" (set with par(mfcol=...), par(mfrow...) or with layout(...)). This may not be compatible with the layout that heatmap tries to set. Make sure that you have a new, fresh, unchanged, empty graphic device befor calling heatmap.