Charting everywhere
This presentation is the property of its rightful owner.
Sponsored Links
1 / 10

Charting Everywhere PowerPoint PPT Presentation


  • 85 Views
  • Uploaded on
  • Presentation posted in: General

Charting Everywhere. Short-Talk. In order to analyze and compare size of embedded applications we developed a framework on top of BIRT‘s charting APIs.

Download Presentation

Charting Everywhere

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Charting everywhere

Charting Everywhere


Short talk

Short-Talk

  • In order to analyze and compare size of embedded applications we developed a framework on top of BIRT‘s charting APIs.

  • During this talk we present this generic framework (chart viewer, data set providers, ...) and how, as an experiment, we were able to re-target it to enhance the whole Eclipse platform with charts : property pages for IBinary (CDT), IContainer (core resources) and some more.

  • The goal of this talk is to advocate that BIRT Charts can be used almost anywhere to enhance the Eclipse user experience.

  • Also see CDT short talk „Because Size Matters“


Initial use case

Initial Use Case

  • Binary files are composed of multiple sections (text, data, ...).

    • Use charts to graphically visualize size of sections

  • Chart Engine API generated from EMF model

    • Very rich

    • Maybe too heavy when one only has to handle simple charts (bar/pie-chart) with very simple series (String[] x int[])

  • Chart Engine builds a Chart that can be rendered in a GC

    • Needs a reusable Chart viewer


Overview of the framework

Overview of the Framework

  • : a viewer, configurable with style bits

  • : an IContentProvider providing simple chart data

  • : a thin abstraction layer on top of the Chart API

(PIE_CHART, STACKED_BAR_CHART, TWO_D, THREE_D, …)

y

a

getX() = {x0,x1}

getY() = {a,b}

getYLabel() = y

getYValues = {{a0,a1}, {b0,b1}}

a0

b

a1

b0

b1

x1

x0


A property page for ibinary

A Property Page for IBinary


Binary object size property page

Binary Object Size Property Page

ChartViewer

(PIE_CHART)

(STACKED_BAR_CHART)


Metrics view

Metrics View

  • A view displaying LOC/method distribution

    • Java (IMethod)

    • C (IFunction)

  • Underlying chart updated on Workspace selection


Heap status versus heap history view

Heap Status versus Heap History View

  • Heap Status (org.eclipse.ui.internal)

    • Composite, instantaneous memory consumption

  • Heap History View

    • Memory consumption over a time frame

    • Chart updated every ‘n’ seconds


Conclusion

Conclusion

  • Because almost every Eclipse plug-in directly or indirectly manipulates numerical data the number of potential chart users is large

  • Need a layer on top of BIRT Charting APIs to make the Chart Engine more accessible to the community


  • Login