diff --git a/MagickCore/histogram.c b/MagickCore/histogram.c
index 1d2e5bc..fb99cbc 100644
--- a/MagickCore/histogram.c
+++ b/MagickCore/histogram.c
@@ -1160,20 +1160,22 @@
   {
     SetPixelInfoPacket(image,p,&pixel);
     (void) CopyMagickString(tuple,"(",MaxTextExtent);
-    ConcatenateColorComponent(&pixel,RedChannel,X11Compliance,tuple);
+    ConcatenateColorComponent(&pixel,RedPixelComponent,X11Compliance,tuple);
     (void) ConcatenateMagickString(tuple,",",MaxTextExtent);
-    ConcatenateColorComponent(&pixel,GreenChannel,X11Compliance,tuple);
+    ConcatenateColorComponent(&pixel,GreenPixelComponent,X11Compliance,tuple);
     (void) ConcatenateMagickString(tuple,",",MaxTextExtent);
-    ConcatenateColorComponent(&pixel,BlueChannel,X11Compliance,tuple);
+    ConcatenateColorComponent(&pixel,BluePixelComponent,X11Compliance,tuple);
     if (pixel.colorspace == CMYKColorspace)
       {
         (void) ConcatenateMagickString(tuple,",",MaxTextExtent);
-        ConcatenateColorComponent(&pixel,BlackChannel,X11Compliance,tuple);
+        ConcatenateColorComponent(&pixel,BlackPixelComponent,X11Compliance,
+          tuple);
       }
     if (pixel.matte != MagickFalse)
       {
         (void) ConcatenateMagickString(tuple,",",MaxTextExtent);
-        ConcatenateColorComponent(&pixel,OpacityChannel,X11Compliance,tuple);
+        ConcatenateColorComponent(&pixel,AlphaPixelComponent,X11Compliance,
+          tuple);
       }
     (void) ConcatenateMagickString(tuple,")",MaxTextExtent);
     (void) QueryMagickColorname(image,&pixel,SVGCompliance,color,exception);
