Object Profile

Object Profile

Compartir

We reinvent the meaning of data visualization with agile methodologies Produced reports are expressive, interactive and mobile friendly.

http://objectprofile.com -- Object Profile is a think tank for data visualization and software execution profiling. We are reinventing the meaning of visualization data by employing smart agile visualization methods.

27/04/2018

Here is another script of the day. Today we illustrate the Sunburst visualization. Handy to represent hierarchy. The script visualizes the Pharo collection class library (Array classes vs Set classes vs Hash classes)

-=-=-=-=-=-=-=-=-=-=-=-=
p := RTPalette c3.
b := RTSunburstBuilder new.
b layout sunburstWithRadius: 100.
b
angularSpacing: 1;
radialSpacing: 5.
b shape
color: [ p first ];
if: [ :cls | '*Array*' match: cls name ] color: [ p second ];
if: [ :cls | '*Set*' match: cls name ] color: [ p third ];
if: [ :cls | '*Hash*' match: cls name ] color: [ p fourth ]
.

b explore: Collection using: .
b build.

lb := RTLegendBuilder new.
lb view: b view.
lb addText: 'Visualizing the collection Pharo collection class library'.
lb addColor: p second text: 'Array-like classes'.
lb addColor: p third text: 'Set-like classes'.
lb addColor: p fourth text: 'Hash-classes classes'.
lb build.

b view.
-=-=-=-=-=-=-=-=-=-=-=-=
More info on http://AgileVisualization.com and the Discord channel (http://pharo.org/community)

26/04/2018

Here is another script of the day. Today we show how to draw dashed arrowed line. More information on http://AgileVisualization.com

-=-=-=
v := RTView new.

sb := RTShapeBuilder new.
sb ellipse; size: 20.
sb withText.
elements := sb elementsOn: (1 to: 10).
v addAll: elements.

eb := RTEdgeBuilder new.

eb shape styledLine dashedLine arrowHead.

eb view: v.
eb connectFrom: [ :value | value // 2 ].

RTTreeLayout on: elements.
v
-=-=-=

24/04/2018

Here is another script of the day. Today we illustrate the RTLegendBuilder. It is useful to add a legend to a visualization.
-=-=-=-=-=-=-=-=-=-=-=-=
b := RTMondrian new.
b shape rectangle
width: [ :c | c numberOfVariables * 5 ];
height: .
b nodes: RTShape withAllSubclasses.
b edges connectFrom: .
b layout tree.
b normalizer
normalizeColor: using: (Array with: Color lightGray with: Color red).
b build.

lb := RTLegendBuilder new.
lb onDemand: '+Info'.
lb view: b view.

lb addText: 'System complexity view'.
lb addRectanglePolymetricWidth: 'number of methods' height: 'Line of code' box: 'a Pharo class'.
lb build.

b view
-=-=-=-=-=-=-=-=-=-=-=-=

More info on http://AgileVisualization.com and the Discord channel (http://pharo.org/community)

18/04/2018

Preview of Agile Artificial Intelligence available on

Agile Artificial Intelligence Agile Artificial Intelligence is a book series that covers classical algorithms commonly assimilated as artificial intelligence techniques. The book series takes a practical approach by presenting all the necessary implementation details.

Photos from Object Profile's post 14/03/2018

This script illustrates the possibility to highlight transitive closure of a graph.
With the mouse, you can highlight group of nodes and edges that can be transitively reached from a particular starting point.

This example may be used to see the impact of modifying one particular class. A modification of one class may impact the highlighted classes.

-=-=-=
b := RTMondrian new.
b shape circle.
b nodes: RTObject withAllSubclasses.

b shape line color: Color gray trans.
b edges moveBehind; connectToAll: .
b layout force.
b normalizer normalizeSize: ; normalizeColor: ; alphaColor: 0.8.

b view elements @ (RTTransitivelyHighlightable new focusOnIncomingElements; color: Color red; edgeColor: Color blue).
b
-=-=-=
More info on http://AgileVisualization.com

09/03/2018

Interaction between classes and their metaclasses. Classes are in blue, and metaclasses are in red.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
classes := Object withAllSubclasses.

b := RTMondrian new.
b shape circle
color: Color blue trans;
if: color: Color red trans.
b nodes: classes.
b shape line color: Color gray trans.
b edges moveBehind; connectToAll: .
b layout force.
b normalizer
normalizeSize: using: ;
alphaColor: 0.6.
b
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

Photos from Object Profile's post 05/08/2017

Visual Navigation of Software Heritage . https://www.softwareheritage.org

Visualizing Python Code 25/07/2017

Visualizing Python Code: https://vimeo.com/226505915

Visualizing Python Code Using Roassal and http://AgileVisualization.com The application we chose is https://github.com/graphql-python/graphene

Photos 18/05/2017

Method call graph of Astropy

Photos from Object Profile's post 18/05/2017

Today we are visualizing Ansible by Red Hat source code. Ansible is all about automation of IT tasks.

The first picture shows dependencies between Python source code files (one can see many isolated files).

The second picture shows class hierarchies defined in Ansible. Each square is a class, inheritance is indicated with edges (superclass above subclasses), width = number of variables; height = number of methods; color = containing folder.

Third and fourth picture shows the a part of the file system. Blues are are dependencies between the files (scope to the containing folder).

Beautiful!

Photos 28/04/2017

Script of the day: Sunday as first day in RTCalendarBuilder

-=-=-=
| b |
Week startDay: .

b := RTCalendarBuilder new.
b dateShape composite: [ :com |
com add: (RTEllipse new color: [ :d |
d = Date today
ifTrue: [ Color blue trans ]
ifFalse: [Color transparent] ]; size: 18).
com add: (RTLabel new text: [:d| d dayOfMonth];
color: [:d | (d dayOfWeek = 1)
ifTrue: [Color red]
ifFalse: [ Color black ] ]) ].``

b showDayNames.
b yearShape composite: [ :comp |
comp add: (RTLabel new text: [ :d | d year ]; height: 20 ).
comp add: (RTBox new color: [ Color blue alpha: 0.1 ]). ] .
b dates: Year current.
b build.
^ b view
-=-=-=

Photos 27/04/2017

Script of the day: Simple trees
-=-=-=
group1 := {
50 -> 70.
90 -> 30.
30 -> 150.
150 -> 200.

70 -> 200.
10 -> 20.
10 -> 30.
20 -> 50.
}.

group2 := {
1 -> 2.
1 -> 3.
3 -> 7
}.

b := RTMondrian new.
b shape box fillColor: Color transparent; borderColor: Color black.
b nodes: { group1 . group2 } forEach: [ :values |
b shape text.
b nodes: ((values collect: ), (values collect: )) asSet.
b shape arrowedLine color: Color red; withShorterDistanceAttachPoint.
b edges
source: values connectFrom: to: .
b layout sugiyama horizontalGap: 30
].

b
-=-=-=

¿Quieres que tu empresa sea el Servicio De Computación Y Electrónica mas cotizado en Santiago?
Haga clic aquí para reclamar su Entrada Patrocinada.

Teléfono

Dirección


Avenida Apoquindo 2827
Santiago