im_histplot(3) graph an image of one horizontal or vertical line


#include <vips/vips.h>

int im_histplot(in, out)
IMAGE *in, *out;


im_histplot(3) plots a graph of a horizontal or vertical image file with one line. It is suitable for displaying the output of histogram functions such as im_histgr(3) and for displaying line profiles.

Note that if you try to directly plot the result of im_histgr(3) you will often get a very, very large image, since im_histplot(3) will draw an image as high (or as wide) as the largest pixel value in the image (potentially huge). Use im_histnorm(3) to normalise the histogram maximum before plotting.

The input image should be either one horizontal line (Ysize=1) or one vertical line (Xsize=1). If the image is FMTUCHAR, the graph is drawn as 256 by line-length pixels. For all other unsigned integer types, im_histplot(3) finds the image maximum, and draws the graph as max by line-length pixels.

For signed integer types, im_histplot(3) finds minimum and maximum, moves min up to zero, and draws the graph as min + max by line-lenth pixels.

For float types, im_histplot(3) finds minimum and maximum, and scales the image range so as to make the graph square.


The function returns 0 on success and -1 on error.


National Gallery and Birkbeck College, 1995