JKQTPlotter trunk/v5.0.0
an extensive Qt5+Qt6 Plotter framework (including a feature-richt plotter widget, a speed-optimized, but limited variant and a LaTeX equation renderer!), written fully in C/C++ and without external dependencies
|
Modules | |
Tool Functions to Build Lookup-Tables for Palettes | |
Classes | |
class | JKQTPColorPaletteStyleAndToolsMixin |
if a class is derived from this class, it may use color bars More... | |
class | JKQTPColorPaletteWithModifierStyleAndToolsMixin |
if a class is derived from this class, it may use color bars that have 2 axes (one "data"/color axis and one "modifier" axis) More... | |
struct | JKQTPImageTools |
tool structure that summarizes several static properties of JKQTPlotters palette system, also provides functions to work with palettes and register user-defined palettes. More... | |
struct | JKQTPImageTools::LUTData |
internal datatype, representing a lookup-table and its metadata inside global_jkqtpimagetools_lutstore More... | |
Functions | |
int | JKQTPGetColorChannel (QRgb rgb, int ch) |
retrieve an R/G/B/Alpha (ch == 0/1/2/3) value from the QRgb value rgb | |
template<class T > | |
void | JKQTPImagePlot_array2RGBimage (const T *dbl_in, int width, int height, QImage &img, int channel, double minColor, double maxColor, JKQTPRGBMathImageRGBMode rgbMode=JKQTPRGBMathImageModeRGBMode, bool logScale=false, double logBase=10.0) |
convert a 2D image (as 1D array) into a QImage and puts the image values into one color channel (set by channel).The other color channels are not changed! So a repeated call to this function for the SAME QImage will result in a step-by-step buildup of an image. | |
template<class T > | |
QVector< double > | JKQTPImagePlot_arrayToDVector (const T *input, int N) |
returns a vector containing all elements of the given array as doubles | |
QVector< double > | JKQTPImagePlot_BarrayToDVector (const bool *input, int N) |
returns a vector containing all elements of the given boolean array as doubles (true=1, false=0) | |
template<class T > | |
double | JKQTPImagePlot_getImageMax (const T *dbl, int width, int height) |
fin the maximum pixel value in the given image dbl with width width and height height | |
template<class T > | |
double | JKQTPImagePlot_getImageMin (const T *dbl, int width, int height) |
fin the minimum pixel value in the given image dbl with width width and height height | |
void JKQTCOMMON_LIB_EXPORT | JKQTPModifyImage (QImage &img, JKQTPMathImageModifierMode modifierMode, const void *dataModifier, JKQTPMathImageDataType datatypeModifier, int Nx, int Ny, double internalModifierMin, double internalModifierMax) |
modify the given image img, using modifier image dataModifier (of type datatypeModifier and size Nx * Ny), using values in the range internalModifierMin ... internalModifierMax ) | |
void | JKQTPSetColorChannel (QRgb &rgb, int ch, int val) |
set the R/G/B/Alpha (ch == 0/1/2/3) value in the QRgb value rgb to val (0..255!) | |
QString JKQTCOMMON_LIB_EXPORT | ModifierModeToString (const JKQTPMathImageModifierMode &mode) |
convert a string to a ModifierMode | |
JKQTPMathImageModifierMode JKQTCOMMON_LIB_EXPORT | StringToModifierMode (const QString &mode) |
convert a ModifierMode to a string | |
available palettes for coloring an image
Enumerator | |
---|---|
JKQTPMathImageGRAY |
|
JKQTPMathImageINVERTEDGRAY |
|
JKQTPMathImageRED |
|
JKQTPMathImageINVERTEDRED |
|
JKQTPMathImageGREEN |
|
JKQTPMathImageINVERTEDGREEN |
|
JKQTPMathImageBLUE |
|
JKQTPMathImageINVERTEDBLUE |
|
JKQTPMathImageCYAN |
|
JKQTPMathImageINVERTED_CYAN |
|
JKQTPMathImageYELLOW |
|
JKQTPMathImageINVERTED_YELLOW |
|
JKQTPMathImageMAGENTA |
|
JKQTPMathImageINVERTED_MAGENTA |
|
JKQTPMathImageMATLAB |
|
JKQTPMathImageINVERTED_MATLAB |
|
JKQTPMathImageRYGB |
|
JKQTPMathImageINVERTED_RYGB |
|
JKQTPMathImageHSV |
|
JKQTPMathImageINVERTED_HSV |
|
JKQTPMathImageRAINBOW |
|
JKQTPMathImageINVERTED_RAINBOW |
|
JKQTPMathImageHOT |
|
JKQTPMathImageINVERTED_HOT |
|
JKQTPMathImageOCEAN |
|
JKQTPMathImageINVERTED_OCEAN |
|
JKQTPMathImageTRAFFICLIGHT |
|
JKQTPMathImageINVERTED_TRAFFICLIGHT |
|
JKQTPMathImageBone |
|
JKQTPMathImageINVERTED_Bone |
|
JKQTPMathImageCool |
|
JKQTPMathImageINVERTED_Cool |
|
JKQTPMathImageCopper |
|
JKQTPMathImageINVERTED_Copper |
|
JKQTPMathImageAutumn |
|
JKQTPMathImageINVERTED_Autumn |
|
JKQTPMathImageTerrain |
|
JKQTPMathImageTerrain_STEP |
|
JKQTPMathImageINVERTED_Terrain |
|
JKQTPMathImageINVERTED_Terrain_STEP |
|
JKQTPMathImageViridis | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageINVERTED_Viridis | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageViridis_STEP | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageINVERTED_Viridis_STEP | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageMagma | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageINVERTED_Magma | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageMagma_STEP | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageINVERTED_Magma_STEP | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageInferno | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageINVERTED_Inferno | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageInferno_STEP | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageINVERTED_Inferno_STEP | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImagePlasma | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageINVERTED_Plasma | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImagePlasma_STEP | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageINVERTED_Plasma_STEP | Palette was adapted from https://github.com/BIDS/colormap/blob/master/colormaps.py |
JKQTPMathImageIBMColorBlindSafe | This is a color-blind friendly palete! Palette was adapted from https://lospec.com/palette-list/ibm-color-blind-safe |
JKQTPMathImageIBMColorBlindSafe_STEP | This is a color-blind friendly palete! Palette was adapted from https://lospec.com/palette-list/ibm-color-blind-safe |
JKQTPMathImageOkabeIto_STEP | This is a color-blind friendly palete! Palette was adapted from https://yoshke.org/blog/colorblind-friendly-diagrams and M. Okabe and K. Ito, How to make figures and presentations that are friendly to color blind people, University of Tokyo, 2002. |
JKQTPMathImageTol_STEP | This is a color-blind friendly palete! Palette was adapted from https://thenode.biologists.com/data-visualization-with-flying-colors/research/ |
JKQTPMathImageTolMuted_STEP | This is a color-blind friendly palete! Palette was adapted from https://yoshke.org/blog/colorblind-friendly-diagrams and Tol, B. Points of view: Color blindness. Nat Methods 8, 441 (2011). https://doi.org/10.1038/nmeth.1618 |
JKQTPMathImageTolLight_STEP | This is a color-blind friendly palete! Palette was adapted from https://davidmathlogic.com/colorblind/#%23000000-%23E69F00-%2356B4E9-%23009E73-%23F0E442-%230072B2-%23D55E00-%23CC79A7 and Tol, B. Points of view: Color blindness. Nat Methods 8, 441 (2011). https://doi.org/10.1038/nmeth.1618 |
JKQTPMathImageOkabeItoDarker_STEP | darker version of JKQTPMathImageOkabeIto_STEP This is a color-blind friendly palete! Palette was adapted from https://yoshke.org/blog/colorblind-friendly-diagrams and M. Okabe and K. Ito, How to make figures and presentations that are friendly to color blind people, University of Tokyo, 2002. |
JKQTPMathImageOkabeItoLighter_STEP | lighter version of JKQTPMathImageOkabeIto_STEP This is a color-blind friendly palete! Palette was adapted from https://davidmathlogic.com/colorblind/#%23000000-%23E69F00-%2356B4E9-%23009E73-%23F0E442-%230072B2-%23D55E00-%23CC79A7 and M. Okabe and K. Ito, How to make figures and presentations that are friendly to color blind people, University of Tokyo, 2002. |
JKQTPMathImageDefault_STEP | This is the color cycle used to color graphs in JKQTPlotter's default style. Palette was adapted from https://davidmathlogic.com/colorblind/#%23BB0000-%2300C11D-%230039D6-%23FFDD00-%23C05FFF-%23DE7704-%2303039A |
JKQTPMathImageCubeHelixClassic | This palette was created using Green's CubeHelix method with the parameters shown in the paper: start=0.5, rotation=-1.5, gamma=1.0, saturation=1.2. (see JKQTPCreateGreensCubeHelixLUT() ) |
JKQTPMathImageCubeHelixClassic_STEP | This palette was created using Green's CubeHelix method with the parameters shown in the paper: start=0.5, rotation=-1.5, gamma=1.0, saturation=1.2. (see JKQTPCreateGreensCubeHelixLUT() ) |
JKQTPMathImageCubeHelix1 | This palette was created using Green's CubeHelix method with the parameters shown in the paper: start=0.5, rotation=-1.5, gamma=1.0, saturation=1.2. (see JKQTPCreateGreensCubeHelixLUT() ) |
JKQTPMathImageCubeHelix1_STEP | This palette was created using Green's CubeHelix method with the parameters shown in the paper: start=0.5, rotation=-1.5, gamma=1.0, saturation=1.2. (see JKQTPCreateGreensCubeHelixLUT() ) |
JKQTPMathImageCubeHelix2 | This palette was created using Green's CubeHelix method with the parameters shown in the paper: start=0.5, rotation=-1.5, gamma=1.0, saturation=1.2. (see JKQTPCreateGreensCubeHelixLUT() ) |
JKQTPMathImageCubeHelix2_STEP | This palette was created using Green's CubeHelix method with the parameters shown in the paper: start=0.5, rotation=-1.5, gamma=1.0, saturation=1.2. (see JKQTPCreateGreensCubeHelixLUT() ) |
JKQTPMathImageCubeHelix3 | This palette was created using Green's CubeHelix method with the parameters shown in the paper: start=0.5, rotation=-1.5, gamma=1.0, saturation=1.2. (see JKQTPCreateGreensCubeHelixLUT() ) |
JKQTPMathImageCubeHelix3_STEP | This palette was created using Green's CubeHelix method with the parameters shown in the paper: start=0.5, rotation=-1.5, gamma=1.0, saturation=1.2. (see JKQTPCreateGreensCubeHelixLUT() ) |
JKQTPMathImageMatlab_STEP |
|
JKQTPMathImageMatlabLegacy_STEP |
|
JKQTPMathImageMatplotlib_STEP |
|
JKQTPMathImageSeaborn_STEP |
|
JKQTPMathImageSeabornPastel_STEP |
|
JKQTPMathImageBLUEMAGENTAYELLOW |
|
JKQTPMathImageINVERTED_BLUEMAGENTAYELLOW |
|
JKQTPMathImageYELLOWMAGENTABLUE |
|
JKQTPMathImageBLUEYELLOW |
|
JKQTPMathImageINVERTED_BLUEYELLOW |
|
JKQTPMathImageYELLOWBLUE |
|
JKQTPMathImageBLACKBLUEREDYELLOW |
|
JKQTPMathImageYELLOWREDBLUEBLACK |
|
JKQTPMathImageGREENREDVIOLET |
|
JKQTPMathImageVIOLETREDGREEN |
|
JKQTPMathImageBLACKBLUEWHITEYELLOWWHITE |
|
JKQTPMathImageWHITEYELLOWWHITEBLUEBLACK |
|
JKQTPMathImageBR_GR |
|
JKQTPMathImageBrownGreen |
|
JKQTPMathImageBR_GR_STEP |
|
JKQTPMathImageGR_BR |
|
JKQTPMathImageGreenBrown |
|
JKQTPMathImageGR_BR_STEP |
|
JKQTPMathImagePU_OR |
|
JKQTPMathImagePurpleWhiteOrange |
|
JKQTPMathImagePU_OR_STEP |
|
JKQTPMathImageOR_PU |
|
JKQTPMathImageOR_PU_STEP |
|
JKQTPMathImageOrangeWhitePurple |
|
JKQTPMathImageGN_BU |
|
JKQTPMathImageGreenBlue |
|
JKQTPMathImageGN_BU_STEP |
|
JKQTPMathImageBU_GN |
|
JKQTPMathImageBlueGreen |
|
JKQTPMathImageBU_GN_STEP |
|
JKQTPMathImageYL_GN_BU |
|
JKQTPMathImageYellowGreenBlue |
|
JKQTPMathImageYL_GN_BU_STEP |
|
JKQTPMathImageBU_GN_YL |
|
JKQTPMathImageBU_GN_YE |
|
JKQTPMathImageBU_GN_YL_STEP |
|
JKQTPMathImageBlueGreenYellow |
|
JKQTPMathImagePI_W_GR |
|
JKQTPMathImagePinkWhiteGreen |
|
JKQTPMathImagePI_W_GR_STEP |
|
JKQTPMathImageGR_W_PI |
|
JKQTPMathImageGreenWhitePink |
|
JKQTPMathImageGR_W_PI_STEP |
|
JKQTPMathImageBLUEWHITERED |
|
JKQTPMathImageBL_W_RD |
|
JKQTPMathImageBLUEWHITERED_STEP |
|
JKQTPMathImageBL_W_RD_STEP |
|
JKQTPMathImageREDWHITEBLUE |
|
JKQTPMathImageRD_W_BL |
|
JKQTPMathImageREDWHITEBLUE_STEP |
|
JKQTPMathImageRD_W_BL_STEP |
|
JKQTPMathImageBLUEYELLOWRED |
|
JKQTPMathImageBL_Yl_RD |
|
JKQTPMathImageBLUEYELLOWRED_STEP |
|
JKQTPMathImageBL_Yl_RD_STEP |
|
JKQTPMathImageREDYELLOWBLUE |
|
JKQTPMathImageRd_Yl_Bl |
|
JKQTPMathImageREDYELLOWBLUE_STEP |
|
JKQTPMathImageRd_Yl_Bl_STEP |
|
JKQTPMathImageRD_W_GY |
|
JKQTPMathImageRedWhiteGray |
|
JKQTPMathImageRD_W_GY_STEP |
|
JKQTPMathImageGY_W_RD |
|
JKQTPMathImageGrayWhiteRed |
|
JKQTPMathImageGY_W_RD_STEP |
|
JKQTPMathImageRD_Yn_GN |
|
JKQTPMathImageRedYelloynGreen |
|
JKQTPMathImageRD_Yn_GN_STEP |
|
JKQTPMathImageGN_Yn_RD |
|
JKQTPMathImageGreenYelloynRed |
|
JKQTPMathImageGN_Yn_RD_STEP |
|
JKQTPMathImageSeismic |
|
JKQTPMathImageSeismic_STEP |
|
JKQTPMathImageINVERTED_Seismic |
|
JKQTPMathImageINVERTED_Seismic_STEP |
|
JKQTPMathImageCoolwarm |
|
JKQTPMathImageCoolwarm_STEP |
|
JKQTPMathImageINVERTED_Coolwarm |
|
JKQTPMathImageINVERTED_Coolwarm_STEP |
|
JKQTPMathImageCYANWHITE |
|
JKQTPMathImageINVERTED_CYANWHITE |
|
JKQTPMathImageWHITECYAN |
|
JKQTPMathImageYELLOWWHITE |
|
JKQTPMathImageINVERTED_YELLOWWHITE |
|
JKQTPMathImageWHITEYELLOW |
|
JKQTPMathImageMAGENTAWHITE |
|
JKQTPMathImageINVERTED_MAGENTAWHITE |
|
JKQTPMathImageWHITEMAGENTA |
|
JKQTPMathImageBlueGreenRed |
|
JKQTPMathImageRedGreenBlue |
|
JKQTPMathImageMagentaYellow |
|
JKQTPMathImageYellowMagenta |
|
JKQTPMathImageRedBlue |
|
JKQTPMathImageBlueRed |
|
JKQTPMathImagePrism16 |
|
JKQTPMathImagePrism8 |
|
JKQTPMathImageFlag16 |
|
JKQTPMathImageFlag8 |
|
JKQTPMathImagePaired12_STEP |
|
JKQTPMathImagePaired10_STEP |
|
JKQTPMathImageSet3_STEP |
|
JKQTPMathImageAccent_STEP |
|
JKQTPMathImageDark2_STEP |
|
JKQTPMathImagePastel1_STEP |
|
JKQTPMathImagePastel2_STEP |
|
JKQTPMathImageSet1_STEP |
|
JKQTPMathImageSet2_STEP |
|
JKQTPMathImageALPHA | special palette with increasing alpha values |
JKQTPMathImageINVERTED_ALPHA | special palette with decreasing alpha values |
JKQTPMathImagePREDEFINED_PALETTES_COUNT | the number of predefined palettes |
JKQTPMathImageUSER_PALETTE | special value for JKQTPImageTools::array2image(), which signals the usage of a provided user-defined palette |
JKQTPMathImageFIRST_REGISTERED_USER_PALETTE | the ID of the first user-defined paletted, registered with JKQTPImageTools::registerPalette() or JKQTPImageTools::registerPalettesFromFile() |
JKQTPMathImageLAST_POSSIBLE_REGISTERED_USER_PALETTE | the ID of the last user-defined paletted, registered with JKQTPImageTools::registerPalette() or JKQTPImageTools::registerPalettesFromFile() |
|
strong |
possible datatypes of the data array, plotted by this class.
|
strong |
describes how to modify a rendered image with a second data array
Enumerator | |
---|---|
ModifyNone | no modification |
ModifyValue | modify the VALUE-channel from the HSV color space |
ModifySaturation | modify the SATURATION-channel from the HSV color space |
ModifyAlpha | modify the ALPHA/TRANSPARENCY-channel from the RGBA color space |
ModifyTransparency |
|
ModifyLuminance | modify the LUMINANCE-channel from the HSL color space |
ModifyHue | modify the HUE-channel from the HSV color space |
modes available for RGB images
|
inline |
retrieve an R/G/B/Alpha (ch == 0/1/2/3) value from the QRgb
value rgb
|
inline |
convert a 2D image (as 1D array) into a QImage and puts the image values into one color channel (set by channel).The other color channels are not changed! So a repeated call to this function for the SAME QImage will result in a step-by-step buildup of an image.
|
inline |
returns a vector containing all elements of the given array as doubles
|
inline |
returns a vector containing all elements of the given boolean array as doubles (true=1, false=0)
|
inline |
fin the maximum pixel value in the given image dbl with width width and height height
|
inline |
fin the minimum pixel value in the given image dbl with width width and height height
void JKQTCOMMON_LIB_EXPORT JKQTPModifyImage | ( | QImage & | img, |
JKQTPMathImageModifierMode | modifierMode, | ||
const void * | dataModifier, | ||
JKQTPMathImageDataType | datatypeModifier, | ||
int | Nx, | ||
int | Ny, | ||
double | internalModifierMin, | ||
double | internalModifierMax | ||
) |
modify the given image img, using modifier image dataModifier (of type datatypeModifier and size Nx * Ny), using values in the range internalModifierMin ... internalModifierMax )
|
inline |
set the R/G/B/Alpha (ch == 0/1/2/3) value in the QRgb
value rgb to val (0..255!)
QString JKQTCOMMON_LIB_EXPORT ModifierModeToString | ( | const JKQTPMathImageModifierMode & | mode | ) |
convert a string to a ModifierMode
JKQTPMathImageModifierMode JKQTCOMMON_LIB_EXPORT StringToModifierMode | ( | const QString & | mode | ) |
convert a ModifierMode to a string