class_docstr: Test the PCA visualizer
class_docstr_tok: ["Test","the","PCA","visualizer"]
docstr: Test the PCA visualizer's heatmap features.
docstr_tok: ["Test","the","PCA","visualizer","'s","heatmap","features","."]
code: def test_heatmap(self):
      """
      Test the PCA visualizer's heatmap features.
      """
      params = {
          "scale": True,
          "projection": 2,
          "random_state": 7382,
          "color": self.discrete.y,
          "heatmap": True,
      }
      visualizer = PCA(**params).fit(self.discrete.X, self.discrete.y)
      visualizer.transform(self.discrete.X, self.discrete.y)
      visualizer.finalize()
      # TODO: manually modifying ticks should be removed after #916 is fixed
      visualizer.lax.set_xticks([])
      visualizer.lax.set_yticks([])
      visualizer.lax.set_xticks([], minor=True)
      visualizer.uax.set_xticklabels([])
  
      # Image comparison tests
      # AppVeyor tests fail with RMS 14.492
      self.assert_images_similar(visualizer, windows_tol=14.5)
  
imports: import sys
  import pytest
  import numpy
  import numpy.testing
  from unittest import mock
  from tests.base import VisualTestCase, IS_WINDOWS_OR_CONDA
  from yellowbrick.features.pca import *
  from yellowbrick.exceptions import YellowbrickError, NotFitted
label_desc: Use image node_id 18 for calling the TestPCA obj's underlying member method code with example usage: obj.test_heatmap() without return types