Skip to main content
`Ctrl`+`K`

# PetscDrawBarCreate

Creates a bar graph data structure.

## Synopsis

    #include "petscdraw.h"
    #include "petscviewer.h"
    PetscErrorCode PetscDrawBarCreate(PetscDraw draw, PetscDrawBar *bar)

Collective

## Input Parameter

- draw - The window where the graph will be made

## Output Parameter

- bar - The bar graph context

## Notes

Call `PetscDrawBarSetData()` to provide the bins to be plotted and then `PetscDrawBarDraw()` to display the new plot

The difference between a bar chart, `PetscDrawBar`, and a histogram, `PetscDrawHG`, is explained here https://stattrek.com/statistics/charts/histogram.aspx?Tutorial=AP

The MPI communicator that owns the `PetscDraw` owns this `PetscDrawBar`, but the calls to set options and add data are ignored on all processes except the zeroth MPI process in the communicator. All MPI processes in the communicator must call `PetscDrawBarDraw()` to display the updated graph.

## See Also

`PetscDrawBar`, `PetscDrawLGCreate()`, `PetscDrawLG`, `PetscDrawSPCreate()`, `PetscDrawSP`, `PetscDrawHGCreate()`, `PetscDrawHG`, `PetscDrawBarDestroy()`, `PetscDrawBarSetData()`, `PetscDrawBarDraw()`, `PetscDrawBarSave()`, `PetscDrawBarSetColor()`, `PetscDrawBarSort()`, `PetscDrawBarSetLimits()`, `PetscDrawBarGetAxis()`, `PetscDrawAxis`, `PetscDrawBarGetDraw()`, `PetscDrawBarSetFromOptions()`

## Level

intermediate

## Location

src/sys/classes/draw/utils/bars.c

Index of all Draw routines
Table of Contents for all manual pages
Index of all manual pages