One of the pieces of software which is getting quite some beating during the On-ground calibration of TROPOMI, are the modules for the generation of quicklooks. These collections of plots are used in a number of places, most prominently of course for the initial inspection of the ongoing calibration measurements, where this is kind of a first line of defense against faulty measurements. Other than this the plots also play quite a crucial role in the validation of the calibration key data (CKD), which are derived from the calibration measurements and later on to be used as part of the processing pipeline. With this kept in mind I think it is understandable why with an important progress meeting in sight, there has been yet another rush at getting a number of details fixed… such as this one:

Quicklook screenshot

While most areas with a solid fill – such as e.g. the histograms – appear as such when printed or displayed on the screen, things look slightly different when turning an eye to the colorbar associated with the image plot. After some online search it turns out that this essentially is an issues with the rendering of the PDF - the resolution: use a rasterized colorbar.

Incidentally, the lines in the pdf are an artifact of most pdf viewers, not a bug in the pdf file.

Given this basic information the remaining question now is: how convince Matplotlib to generate a PDF where the colorbar does not show lines at every facet?

  • Original version: the colorbar is plotted, attached to the axis labeled axis_colorbar, but nothing further is being done.
    fig.colorbar (img,
                  cax=axis_colorbar,
                  orientation='vertical',
                  format=formatter)
  • Updated version: the return from the colorbar() method is captured, such that we subsequently can enable rasterization.
    cb = fig.colorbar (img,
                       cax=axis_colorbar,
                       orientation='vertical',
                       format=formatter)
    cb.solids.set_rasterized(True)