Programming ImageHistogram to display full-scale


Sometimes when opening up an Image Histogram , it starts up zoomed in on a portion of the histogram range ( with a scroll bar ).
For eg, on a 16bit image, it might start up showing the range 0-16384 only.
Is there a way to force the Image Histogram to open up full range ( showing 0 - 65535 )?
Are there any code examples to show how this can be done?

Also, On the ImageHistogram, you can right mouse click and set up option like "Show/Hide LUT" or "BW Level".
Can this be done via code, to force the ImageHistogram to alway open up a certain way, regardless to whether a user has previously modified settings.



  • Hi tonyc,

    The histogram adjusts the range to the camera bit dept used to capture the image. This option is in the context menu (Options/Capture Bit-Depth).

    Unfortunately, none of the histogram options have direct commands, but you could adjust them via settings:

        Public Function Histogram_Options() As SimpleScript
            Histogram_Options = New SimpleScript
            With Automate.ScriptingCommands.CodeCommand(Histogram_Options)
                If .Run() Then
                    ' User Code Here
                    With .Application.Settings("McHistogramChartMini")
                        .Set("m_bHistogram", True)
                        .Set("m_bDynamic", False)
                        .Set("m_bLUT", False)
                        .Set("m_bBWLevels", False)
                        .Set("m_bAxisX", True)
                        .Set("m_bAxisY", False)
                        .Set("m_bAxisLogY", False)
                        .Set("m_bLegend", False)
                        .Set("m_bStatistics", False)
                        .Set("m_bIgnoreROI", False)
                        .Set("m_bActiveFrame", False)
                        .Set("m_bMonoInterpretation", False)
                        .Set("m_bSpatialCalibration", False)
                        .Set("m_bIntensityCalibration", False)
                        .Set("m_bStatisticsRange", False)
                        .Set("m_iExcludeBins", 1)
                        .Set("m_bCaptureBitDepth", False)
                    End With
                End If
            End With
        End Function


Sign In or Register to comment.