I use the following method to draw a topographic map:evoked.plot_topomap(np.arange(0.5, 4.0, 0.25),ch_type=‘eeg’,sensors=False,res=32,scalings=dict(eeg=1),contours=0,outlines=‘skirt’,time_unit=‘s’,nrows=2)

The resulting image is as follows:

The image generated in the example(Plotting topographic maps of evoked data — MNE 0.23.0 documentation) is as follows:

Compared to the picture in the example, I think my topographic map is messy.
I think there may be two reasons. The first reason is that the position of the channel is wrong. The second reason is that the smoothness of the image is not adjusted. However, I did not find this parameter in plot_topomap. Where can I change it?

MNE-Python does not explicitly smooth the signal in the spatial dimension in plot_topomap - only interpolation/extrapolation is performed which creates smooth transitions between observed data points. In your case it is possible that channel locations are wrong. It is also possible that you don’t have a clear ERP and what you see in the topomaps is mostly noise. The easiest way to test the ERP would be to plot it using for example .plot_joint() - if you see a nice ERP then it is likely that for some reason you channel positions are incorrect.
To test channel positions you can use .plot_sensors() or .plot_sensors(kind='3d'). Clicking on the channel should give you the name of the channel. If you want to see all channel names at once you can use .plot_sensors(show_names=True).

1 Like

to @mmagnuski’s excellent answer, I would add that you can see your sensor locations on the topomap itself by passing sensors=True instead of False. That is an easy first thing to check in regards to whether your sensor positions look reasonable.