Updating grapher graphs as data comes in

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

Updating grapher graphs as data comes in

jfabry
Hi all,

I am thinking about a specific setting where I want to make a scatterplot that is somewhat dynamic: I have collections of points coming in regularly and when a new collection has arrived I want to remove the existing plot and show the new data. I thought I would be able to do something with the existing Grapher infrastructure. My idea was to remove all elements from the open RTView instance, then remove the dataset from the RTGrapher instance, add the new dataset to the RTGrapher instance and call build again. But I cannot remove a dataset from a RTGrapher, so apparently no go.

Is there a way to do something like this without making modifications to Roassal? I could hack something together of course but prefer existing infrastructure, if present.

Also, I want to set max X and max Y beforehand because I know what the range of the incoming points is.  

Any pointers would be appreciated!

---> Save our in-boxes! http://emailcharter.org <---

Johan Fabry   -   http://pleiad.cl/~jfabry
PLEIAD lab  -  Computer Science Department (DCC)  -  University of Chile


_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Updating grapher graphs as data comes in

abergel
RTGrapher has not been designed for dynamically update.
However, this is an easy problem to solve. Currently, I have no idea whether the current infrastructure can support this or not. So, I am inclined to build something from scratch (i.e., a new builder).

But first, tell me more about your need. You need a scatterplot? Or you need a curve? If you need a curve, then how many datapoint you need to have?

Cheers,
Alexandre


> On Jan 21, 2015, at 5:12 PM, Johan Fabry <[hidden email]> wrote:
>
> Hi all,
>
> I am thinking about a specific setting where I want to make a scatterplot that is somewhat dynamic: I have collections of points coming in regularly and when a new collection has arrived I want to remove the existing plot and show the new data. I thought I would be able to do something with the existing Grapher infrastructure. My idea was to remove all elements from the open RTView instance, then remove the dataset from the RTGrapher instance, add the new dataset to the RTGrapher instance and call build again. But I cannot remove a dataset from a RTGrapher, so apparently no go.
>
> Is there a way to do something like this without making modifications to Roassal? I could hack something together of course but prefer existing infrastructure, if present.
>
> Also, I want to set max X and max Y beforehand because I know what the range of the incoming points is.  
>
> Any pointers would be appreciated!
>
> ---> Save our in-boxes! http://emailcharter.org <---
>
> Johan Fabry   -   http://pleiad.cl/~jfabry
> PLEIAD lab  -  Computer Science Department (DCC)  -  University of Chile
>
>
> _______________________________________________
> Moose-dev mailing list
> [hidden email]
> https://www.iam.unibe.ch/mailman/listinfo/moose-dev

--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.




_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Updating grapher graphs as data comes in

jfabry
Cool :-)

I just need a scatterplot. Data will be a RTStackedDataSet, of always the same number of points, and I know this number in advance. I know what min and max Y will be. I would like to be able to set ticks at specific places at the X and Y axis, but if that is not possible a number of ticks is OK **if** I can guarantee that one will be set at the median of X. In Y this is not so important right now.

PS: It’s for robots!  ;-)

> On Jan 21, 2015, at 21:24, Alexandre Bergel <[hidden email]> wrote:
>
> RTGrapher has not been designed for dynamically update.
> However, this is an easy problem to solve. Currently, I have no idea whether the current infrastructure can support this or not. So, I am inclined to build something from scratch (i.e., a new builder).
>
> But first, tell me more about your need. You need a scatterplot? Or you need a curve? If you need a curve, then how many datapoint you need to have?
>
> Cheers,
> Alexandre



---> Save our in-boxes! http://emailcharter.org <---

Johan Fabry   -   http://pleiad.cl/~jfabry
PLEIAD lab  -  Computer Science Department (DCC)  -  University of Chile


_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Updating grapher graphs as data comes in

SergeStinckwich
On Wed, Jan 21, 2015 at 9:35 PM, Johan Fabry <[hidden email]> wrote:
> Cool :-)
>
> I just need a scatterplot. Data will be a RTStackedDataSet, of always the same number of points, and I know this number in advance. I know what min and max Y will be. I would like to be able to set ticks at specific places at the X and Y axis, but if that is not possible a number of ticks is OK **if** I can guarantee that one will be set at the median of X. In Y this is not so important right now.
>
> PS: It’s for robots!  ;-)

I would like to have something similar for sensors outputs ;-)

--
Serge Stinckwich
UCBN & UMI UMMISCO 209 (IRD/UPMC)
Every DSL ends up being Smalltalk
http://www.doesnotunderstand.org/

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Updating grapher graphs as data comes in

Tudor Girba-2
You people are getting more and more demanding! :)

@Alex et co: it's all your fault because you keep teasing our imagination :).

Thanks everyone. These are exciting times.

Cheers,
Doru


On Wed, Jan 21, 2015 at 9:41 PM, Serge Stinckwich <[hidden email]> wrote:
On Wed, Jan 21, 2015 at 9:35 PM, Johan Fabry <[hidden email]> wrote:
> Cool :-)
>
> I just need a scatterplot. Data will be a RTStackedDataSet, of always the same number of points, and I know this number in advance. I know what min and max Y will be. I would like to be able to set ticks at specific places at the X and Y axis, but if that is not possible a number of ticks is OK **if** I can guarantee that one will be set at the median of X. In Y this is not so important right now.
>
> PS: It’s for robots!  ;-)

I would like to have something similar for sensors outputs ;-)

--
Serge Stinckwich
UCBN & UMI UMMISCO 209 (IRD/UPMC)
Every DSL ends up being Smalltalk
http://www.doesnotunderstand.org/

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev



--

"Every thing has its own flow"

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Updating grapher graphs as data comes in

jfabry
In reply to this post by SergeStinckwich

> On Jan 21, 2015, at 21:41, Serge Stinckwich <[hidden email]> wrote:
>
>> PS: It’s for robots!  ;-)
>
> I would like to have something similar for sensors outputs ;-)

Great minds think alike :-)

( … and fools seldom differ :-P )


---> Save our in-boxes! http://emailcharter.org <---

Johan Fabry   -   http://pleiad.cl/~jfabry
PLEIAD lab  -  Computer Science Department (DCC)  -  University of Chile


_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Updating grapher graphs as data comes in

abergel
In reply to this post by jfabry
Hi Johan!

We have produced the class RTDynamicGrapher. You can dynamically add elements. Here is a try:

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
        b := RTDynamicGrapher new.
        b maxX: 100.
        b maxY: 100.

        b x: #x; y: #y.
         
        b shape circle color: (Color red alpha: 0.3).
        b view addMenu: '+ 10' callback: [
                        b addAll: ((1 to: 10) collect: [ :i | (100 atRandom @ 100 atRandom) ]) ].
        ^ b  
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

Once you have set your instance of RTDynamicGrapher, then you can use #add:, #addAll: to add elements. You can also change the shape if necessary.

I believe this should completely fulfill your requirements :-)

Cheers,
Alexandre


> On Jan 21, 2015, at 5:12 PM, Johan Fabry <[hidden email]> wrote:
>
> Hi all,
>
> I am thinking about a specific setting where I want to make a scatterplot that is somewhat dynamic: I have collections of points coming in regularly and when a new collection has arrived I want to remove the existing plot and show the new data. I thought I would be able to do something with the existing Grapher infrastructure. My idea was to remove all elements from the open RTView instance, then remove the dataset from the RTGrapher instance, add the new dataset to the RTGrapher instance and call build again. But I cannot remove a dataset from a RTGrapher, so apparently no go.
>
> Is there a way to do something like this without making modifications to Roassal? I could hack something together of course but prefer existing infrastructure, if present.
>
> Also, I want to set max X and max Y beforehand because I know what the range of the incoming points is.  
>
> Any pointers would be appreciated!
>
> ---> Save our in-boxes! http://emailcharter.org <---
>
> Johan Fabry   -   http://pleiad.cl/~jfabry
> PLEIAD lab  -  Computer Science Department (DCC)  -  University of Chile
>
>
> _______________________________________________
> Moose-dev mailing list
> [hidden email]
> https://www.iam.unibe.ch/mailman/listinfo/moose-dev

--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.




_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Updating grapher graphs as data comes in

abergel
In reply to this post by Tudor Girba-2
Yes this is indeed exciting times!

Alexandre


> On Jan 21, 2015, at 5:46 PM, Tudor Girba <[hidden email]> wrote:
>
> You people are getting more and more demanding! :)
>
> @Alex et co: it's all your fault because you keep teasing our imagination :).
>
> Thanks everyone. These are exciting times.
>
> Cheers,
> Doru
>
>
> On Wed, Jan 21, 2015 at 9:41 PM, Serge Stinckwich <[hidden email]> wrote:
> On Wed, Jan 21, 2015 at 9:35 PM, Johan Fabry <[hidden email]> wrote:
> > Cool :-)
> >
> > I just need a scatterplot. Data will be a RTStackedDataSet, of always the same number of points, and I know this number in advance. I know what min and max Y will be. I would like to be able to set ticks at specific places at the X and Y axis, but if that is not possible a number of ticks is OK **if** I can guarantee that one will be set at the median of X. In Y this is not so important right now.
> >
> > PS: It’s for robots!  ;-)
>
> I would like to have something similar for sensors outputs ;-)
>
> --
> Serge Stinckwich
> UCBN & UMI UMMISCO 209 (IRD/UPMC)
> Every DSL ends up being Smalltalk
> http://www.doesnotunderstand.org/
>
> _______________________________________________
> Moose-dev mailing list
> [hidden email]
> https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>
>
>
> --
> www.tudorgirba.com
>
> "Every thing has its own flow"
> _______________________________________________
> Moose-dev mailing list
> [hidden email]
> https://www.iam.unibe.ch/mailman/listinfo/moose-dev

--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.




_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Updating grapher graphs as data comes in

jfabry
In reply to this post by abergel
That’s great, thanks!

But … it does not fulfill my requirements. I need to be able to remove all of the drawn points as well, the new data completely replaces the old data. Could you guys have a look at that?

Thanks in advance :-)

> On Jan 22, 2015, at 22:20, Alexandre Bergel <[hidden email]> wrote:
>
> Hi Johan!
>
> We have produced the class RTDynamicGrapher. You can dynamically add elements. Here is a try:
>
> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> b := RTDynamicGrapher new.
> b maxX: 100.
> b maxY: 100.
>
> b x: #x; y: #y.
>
> b shape circle color: (Color red alpha: 0.3).
> b view addMenu: '+ 10' callback: [
> b addAll: ((1 to: 10) collect: [ :i | (100 atRandom @ 100 atRandom) ]) ].
> ^ b  
> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
>
> Once you have set your instance of RTDynamicGrapher, then you can use #add:, #addAll: to add elements. You can also change the shape if necessary.
>
> I believe this should completely fulfill your requirements :-)
>
> Cheers,
> Alexandre



---> Save our in-boxes! http://emailcharter.org <---

Johan Fabry   -   http://pleiad.cl/~jfabry
PLEIAD lab  -  Computer Science Department (DCC)  -  University of Chile


_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Updating grapher graphs as data comes in

jfabry
In reply to this post by abergel

May we live in interesting times :-P

> On Jan 22, 2015, at 22:30, Alexandre Bergel <[hidden email]> wrote:
>
> Yes this is indeed exciting times!
>
> Alexandre
>
>
>> On Jan 21, 2015, at 5:46 PM, Tudor Girba <[hidden email]> wrote:
>>
>> You people are getting more and more demanding! :)
>>
>> @Alex et co: it's all your fault because you keep teasing our imagination :).
>>
>> Thanks everyone. These are exciting times.
>>
>> Cheers,
>> Doru



---> Save our in-boxes! http://emailcharter.org <---

Johan Fabry   -   http://pleiad.cl/~jfabry
PLEIAD lab  -  Computer Science Department (DCC)  -  University of Chile


_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev