1 #pragma once 2 3 /* MANSEC = Sys */ 4 /* SUBMANSEC = Draw */ 5 6 /*J 7 PetscDrawType - String with the name of a `PetscDraw` implementation, for example `PETSC_DRAW_X` is for X Windows. 8 9 Level: beginner 10 11 .seealso: `PetscDrawSetType()`, `PetscDraw`, `PetscViewer`, `PetscDrawCreate()`, `PetscDrawRegister()` 12 J*/ 13 typedef const char *PetscDrawType; 14 #define PETSC_DRAW_X "x" 15 #define PETSC_DRAW_NULL "null" 16 #define PETSC_DRAW_WIN32 "win32" 17 #define PETSC_DRAW_TIKZ "tikz" 18 #define PETSC_DRAW_IMAGE "image" 19 20 /*S 21 PetscDraw - Abstract PETSc object for graphics, often represents a window on the screen 22 23 Level: beginner 24 25 .seealso: `PetscDrawCreate()`, `PetscDrawSetType()`, `PetscDrawType` 26 S*/ 27 typedef struct _p_PetscDraw *PetscDraw; 28 29 /*S 30 PetscDrawAxis - An object that manages X-Y axis for a `PetscDraw` 31 32 Level: advanced 33 34 .seealso: `PetscDraw`, `PetscDrawAxisCreate()`, `PetscDrawAxisSetLimits()`, `PetscDrawAxisSetColors()`, `PetscDrawAxisSetLabels()` 35 S*/ 36 typedef struct _p_PetscDrawAxis *PetscDrawAxis; 37 38 /*S 39 PetscDrawLG - An object that manages drawing simple x-y plots 40 41 Level: advanced 42 43 .seealso: `PetscDrawAxis`, `PetscDraw`, `PetscDrawBar`, `PetscDrawHG`, `PetscDrawSP`, `PetscDrawAxisCreate()`, `PetscDrawLGCreate()`, `PetscDrawLGAddPoint()` 44 S*/ 45 typedef struct _p_PetscDrawLG *PetscDrawLG; 46 47 /*S 48 PetscDrawSP - An object that manages drawing scatter plots 49 50 Level: advanced 51 52 .seealso: `PetscDrawAxis`, `PetscDraw`, `PetscDrawLG`, `PetscDrawBar`, `PetscDrawHG`, `PetscDrawSPCreate()` 53 S*/ 54 typedef struct _p_PetscDrawSP *PetscDrawSP; 55 56 /*S 57 PetscDrawHG - An object that manages drawing histograms 58 59 Level: advanced 60 61 Note: 62 Use a series of calls to `PetscDrawHGAddValue()` to create a standard histogram <https://en.wikipedia.org/wiki/Histogram>, where the bins have integer counts. Use calls to `PetscDrawHGAddWeightedValue()` to create a histogram with non-integer bin heights, such as the following <https://mathematica.stackexchange.com/questions/103928/histogram-from-relative-frequency-data> 63 64 .seealso: `PetscDrawAxis`, `PetscDraw`, `PetscDrawLG`, `PetscDrawBar`, `PetscDrawSP`, `PetscDrawHGCreate()`, `PetscDrawHGAddValue()`, `PetscDrawHGAddWeightedValue()` 65 S*/ 66 typedef struct _p_PetscDrawHG *PetscDrawHG; 67 68 /*S 69 PetscDrawBar - An object that manages drawing bar graphs 70 71 Level: advanced 72 73 .seealso: `PetscDrawAxis`, `PetscDraw`, `PetscDrawLG`, `PetscDrawHG`, `PetscDrawSP`, `PetscDrawBarCreate()` 74 S*/ 75 typedef struct _p_PetscDrawBar *PetscDrawBar; 76