bpmn-visualization-r

A R package for visualizing process execution data on BPMN diagrams

https://github.com/process-analytics/bpmn-visualization-r

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.7%) to scientific vocabulary

Keywords

bpmn bpmn-visualization hacktoberfest process-analytics r visualization

Keywords from Contributors

interactive projection serializer cycles packaging charts network-simulation shellcodes hacking autograding
Last synced: 9 months ago · JSON representation

Repository

A R package for visualizing process execution data on BPMN diagrams

Basic Info
Statistics
  • Stars: 18
  • Watchers: 3
  • Forks: 4
  • Open Issues: 28
  • Releases: 11
Topics
bpmn bpmn-visualization hacktoberfest process-analytics r visualization
Created almost 5 years ago · Last pushed 12 months ago
Metadata Files
Readme Contributing License Security

README.md

bpmnVisualizationR

Email Voting BPMN Diagram with overlays

GitHub release (latest by date including pre-releases) CRAN release (latest by date) Build
PRs Welcome Contributor Covenant License


bpmnVisualizationR is an R package for visualizing process execution data on BPMN diagrams, using overlays, style customization and interactions.

It is made possible by htmlwidgets, which provides an easy-to-use framework for bringing together R and the bpmn-visualization TypeScript library. <!-- END OF duplicated with index.md -->

♻️ Usage

Installation

Install devtools

Devtools is an R package used to ease the installation and the development of other R packages.
It can be installed from the R console: r install.packages('devtools')

Install bpmnVisualizationR

From CRAN

The latest stable version of the bpmnVisualizationR package can be obtained from CRAN with the command: install.packages("bpmnVisualizationR")

From GitHub

To install a dedicated version (available versions can be found in the GitHub releases page), run: r devtools::install_github("process-analytics/bpmn-visualization-R@v0.5.0")

Or install the development version: r devtools::install_github("process-analytics/bpmn-visualization-R")

Then, make the library available to the current R project: r library(bpmnVisualizationR) <!-- END OF duplicated with index.md -->

Load the BPMN file

bpmnVisualizationR accepts a BPMN file (or an XML document):

```r

File from the package

bpmnfile <- system.file("examples/EmailVoting.bpmn", package = "bpmnVisualizationR") ```

Or r bpmn_file <- file.choose()

Or r bpmn_file <- "path_to_bpmn_file"

Or r bpmn_file <- "<?xml version="1.0" encoding="UTF-8"?> ...xml_content"

💡 The package provides some BPMN examples. \ They are taken from the BPMN 2.0 examples non-normative machine-readable files. - EmailVoting.bpmn - NobelPrizeProcess.bpmn - OrderManagement.bpmn - OrderProcessforPizzaV4.bpmn - Travel_Booking.bpmn

Display the BPMN diagram

r bpmnVisualizationR::display(bpmn_file)

Display the BPMN diagram with overlays

r overlays <- list(bpmnVisualizationR::create_overlay("bpmn_element_id_1", "42"), bpmnVisualizationR::create_overlay("bpmn_element_id_2", "9")) bpmnVisualizationR::display(bpmn_file, overlays)

Style an overlay

```r style <- bpmnVisualizationR::createoverlaystyle( fontcolor = 'WhiteSmoke', fontsize = 19, fillcolor = 'Teal', strokecolor = 'SpringGreen' )

overlay <- bpmnVisualizationR::createoverlay("bpmnelementid1", "42", style, "middle-right") ```

ℹ️ To see more information about the value of position in bpmn-visualization-js library, please visit https://process-analytics.github.io/bpmn-visualization-js/api/types/OverlayPosition.html.

Disable the default styles of the overlays

r bpmnVisualizationR::display(bpmn_file, overlays, enableDefaultOverlayStyle=FALSE)

Style BPMN shapes

```r bpmnElementStyles <- list( bpmnVisualizationR::createshapestyle( elementIds = list("callactivity11"), strokecolor = 'RoyalBlue', fontcolor = 'DarkOrange', fontfamily = 'Arial', fontsize = 12, fontbold = TRUE, fontitalic = TRUE, fontstrikethrough = TRUE, fontunderline = TRUE, opacity = 75, fillcolor = 'Yellow', fillopacity = 50 ), bpmnVisualizationR::createedgestyle( elementIds = list("startevent11"), strokecolor = 'DeepPink', strokewidth = 3, strokeopacity = 70, fontcolor = 'ForestGreen', fontfamily = 'Courier New', fontsize = 14, fontbold = TRUE, fontitalic = TRUE, fontstrikethrough = FALSE, fontunderline = FALSE, font_opacity = 80, opacity = 80 ) )

bpmnVisualizationR::display( bpmn_file, bpmnElementStyles = bpmnElementStyles, width='auto', height='auto' ) ```

ℹ️ It is possible to apply styles to both BPMN edges and shapes simultaneously by adding them to the shared bpmnElementStyles list.

Style BPMN edges

```r bpmnElementStyles <- list( bpmnVisualizationR::createshapestyle( elementIds = list("messageflow11"), strokecolor = 'RoyalBlue', fontcolor = 'DarkOrange', fontfamily = 'Arial', fontsize = 12, fontbold = TRUE, fontitalic = TRUE, fontstrikethrough = TRUE, fontunderline = TRUE, opacity = 75, fillcolor = 'Yellow', fillopacity = 50 ), bpmnVisualizationR::createedgestyle( elementIds = list("sequenceflow14"), strokecolor = 'DeepPink', strokewidth = 3, strokeopacity = 70, fontcolor = 'ForestGreen', fontfamily = 'Courier New', fontsize = 14, fontbold = TRUE, fontitalic = TRUE, fontstrikethrough = FALSE, fontunderline = FALSE, font_opacity = 80, opacity = 80 ) )

bpmnVisualizationR::display( bpmn_file, bpmnElementStyles = bpmnElementStyles, width='auto', height='auto' ) ```

ℹ️ It is possible to apply styles to both BPMN edges and shapes simultaneously by adding them to the shared bpmnElementStyles list.

Integrate in Shiny Applications

The following displays a BPMN diagram provided as an example by the package with an overlay on top of a BPMN element.

```r

Install and load the shiny package

install.packages("shiny") library(shiny)

displayBpmn <- function() { bpmnfile <- system.file("examples/TravelBooking.bpmn", package = "bpmnVisualizationR") style <- bpmnVisualizationR::createoverlaystyle( fontcolor = 'Black', fontsize = 25, fillcolor = 'MediumSpringGreen', strokecolor = 'MediumSpringGreen' ) overlays <- list(bpmnVisualizationR::createoverlay("6-203", "9", style, "bottom-right")) bpmnVisualizationR::display(bpmn_file, overlays) }

ui <- shinyUI(fluidPage( titlePanel("Display bpmn diagrams with execution data"), bpmnVisualizationR::bpmnVisualizationROutput('bpmnContainer') ) )

server = function(input, output) { # renderBpmnVisualization is the R bridge function to the html widgets output$bpmnContainer <- bpmnVisualizationR::renderBpmnVisualizationR({ displayBpmn() }) }

shinyApp(ui, server) ```

🔧 Contributing

To contribute to bpmnVisualizationR, fork and clone this repository locally and commit your code on a separate branch. \ Please write tests for your code before opening a pull-request.

You can find more detail in our Contributing guide. Participation in this open source project is subject to a Code of Conduct.

✨ A BIG thanks to all our contributors 🙂

📃 License

bpmnVisualizationR is released under the Apache 2.0 license. \ Copyright © from 2021, Bonitasoft S.A.

Owner

  • Name: Process Analytics
  • Login: process-analytics
  • Kind: organization
  • Location: France

Process Automation Events Analytics based on BPMN 2.0 visualization libraries

GitHub Events

Total
  • Issues event: 2
  • Watch event: 1
  • Delete event: 9
  • Issue comment event: 16
  • Push event: 9
  • Pull request review comment event: 4
  • Pull request review event: 10
  • Pull request event: 19
  • Create event: 11
Last Year
  • Issues event: 2
  • Watch event: 1
  • Delete event: 9
  • Issue comment event: 16
  • Push event: 9
  • Pull request review comment event: 4
  • Pull request review event: 10
  • Pull request event: 19
  • Create event: 11

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 207
  • Total Committers: 8
  • Avg Commits per committer: 25.875
  • Development Distribution Score (DDS): 0.643
Past Year
  • Commits: 11
  • Committers: 3
  • Avg Commits per committer: 3.667
  • Development Distribution Score (DDS): 0.545
Top Committers
Name Email Commits
dependabot[bot] 4****] 74
Thomas Bouffard 2****d 54
Souchet Céline 4****t 40
Process Analytics Bot 6****t 34
Adrien l****n@g****m 2
Olan anesini 3****i 1
Colin Fay c****t@c****e 1
Adrien a****e@b****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 9 months ago

All Time
  • Total issues: 47
  • Total pull requests: 135
  • Average time to close issues: 9 months
  • Average time to close pull requests: 22 days
  • Total issue authors: 4
  • Total pull request authors: 4
  • Average comments per issue: 1.19
  • Average comments per pull request: 1.04
  • Merged pull requests: 111
  • Bot issues: 0
  • Bot pull requests: 54
Past Year
  • Issues: 0
  • Pull requests: 19
  • Average time to close issues: N/A
  • Average time to close pull requests: 26 days
  • Issue authors: 0
  • Pull request authors: 3
  • Average comments per issue: 0
  • Average comments per pull request: 1.05
  • Merged pull requests: 11
  • Bot issues: 0
  • Bot pull requests: 3
Top Authors
Issue Authors
  • tbouffard (33)
  • csouchet (10)
  • assynour (3)
  • christbryan (1)
  • dependabot[bot] (1)
Pull Request Authors
  • dependabot[bot] (62)
  • csouchet (32)
  • process-analytics-bot (26)
  • tbouffard (20)
Top Labels
Issue Labels
documentation (20) chore (15) enhancement (9) hacktoberfest (8) duplicate (1) question (1) wontfix (1) dependencies (1) skip-changelog (1) github_actions (1)
Pull Request Labels
dependencies (88) skip-changelog (62) github_actions (62) chore (24) documentation (22) enhancement (4) refactoring (3) depends on another PR :warning: (1) WIP :construction: (1)

Packages

  • Total packages: 1
  • Total downloads:
    • cran 234 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 2
  • Total maintainers: 1
cran.r-project.org: bpmnVisualizationR

Visualize Process Execution Data on 'BPMN' Diagrams

  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 234 Last month
Rankings
Forks count: 14.9%
Stargazers count: 18.7%
Average: 27.5%
Dependent packages count: 29.8%
Dependent repos count: 35.5%
Downloads: 38.5%
Last synced: 9 months ago

Dependencies

.github/actions/build-documentation-site/action.yml actions
  • ./.github/actions/build-setup * composite
.github/actions/build-setup/action.yml actions
  • r-lib/actions/setup-pandoc v2 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite
  • r-lib/actions/setup-tinytex v2 composite
.github/workflows/R-CMD-check.yaml actions
  • ./.github/actions/build-setup * composite
  • actions/checkout v3 composite
  • actions/upload-artifact v3 composite
  • r-lib/actions/check-r-package v2 composite
.github/workflows/announce-new-release.yml actions
  • sarisia/actions-status-discord v1 composite
  • snow-actions/tweet v1.4.0 composite
.github/workflows/fill-gh-draft-release.yml actions
  • release-drafter/release-drafter v5.22.0 composite
.github/workflows/publish-documentation-pr-preview.yml actions
  • ./.github/actions/build-documentation-site * composite
  • actions/checkout v3 composite
  • actions/upload-artifact v3 composite
  • afc163/surge-preview v1 composite
  • bonitasoft/actions/packages/surge-preview-tools v2 composite
.github/workflows/publish-documentation.yml actions
  • ./.github/actions/build-documentation-site * composite
  • actions/checkout v3 composite
  • actions/deploy-pages v1 composite
  • actions/upload-pages-artifact v1 composite
.github/workflows/release.yml actions
  • actions/checkout v3 composite
  • benjefferies/branch-protection-bot 1.0.7 composite
  • slackapi/slack-github-action v1.23.0 composite
  • zwaldowski/semver-release-action v3 composite
.github/workflows/update-bpmn-visualization-version.yml actions
  • actions/checkout v3 composite
  • carlosperate/download-file-action v2 composite
  • mikefarah/yq v4.30.8 composite
  • peter-evans/create-pull-request v4.2.3 composite
DESCRIPTION cran
  • htmlwidgets * imports
  • rlang * imports
  • xml2 * imports
  • shiny * suggests
  • spelling * suggests
  • testthat >= 3.0.0 suggests
.github/workflows/pr-metadata-checks.yml actions
  • bonitasoft/actions/packages/pr-title-conventional-commits v2 composite