Comments (7)
With a proper csv to json conversion, i think it's already possible
from loopy.
Do you mean an external tool that does the conversion? Good, but doing it internally would be better, of course. Any external tool excludes many potential users who are attracted to loopy for its simplicity.
Can you point me to such a tool so I can try it? (Warning: not a code genius over here.)
from loopy.
Also not a code genius, but am pretty handy in Python (and equally clueless in everything else but like SQL).
Have been playing with networkx, a killer Python library for doing all things graph/network. It's got great data (de)serialization tools and more graph algorithms and statistics than I understand, let alone could list.
Interested in figuring out a way to translate between code-generated stuff in networkx
and more freeform stuff built in loopy.
Trying to read through the JavaScript, despite not knowing a thing about JavaScript, and it's raising more questions than answers, lol
In all seriousness, I exported a .loopy
file and opened it up in a text editor. Looks like the same info as is contained in the URL when I build one on the webapp. Was hoping someone could help me grok what what I'm looking in the output of this model (formatted for clarity). It's obviously some list of tuples describing the nodes and then the edges, however, I'd appreciate it if someone could help me make heads or tails of what I'm looking at-- particularly interested in understanding how it establishes "linkage" between any two nodes
[[[1,504,451,0,"depression",0],[2,837,448,0,"doing%20things",4],[3,673,281,0,"de-motivation",1],
[4,1008,282,0,"fear%20of%20mistakes",1],[5,1166,455,0,"anxiety",0],[6,1005,634,0,"accepting%20mistakes",4],
[7,670,639,0,"feeling%20good",4]],[[2,7,59,1,0],[2,6,-61,1,0],[6,5,-59,-1,0],[5,4,-57,1,0],[4,2,-53,-1,0],[3,2,56,-1,0],[1,3,66,1,0],
[7,1,63,-1,0]],[[671,462,"a%20possible%0Asystems-
level%0Aexplanation%20for%0Awhy%20depression%20%26%0Aanxiety%20are%20not%20just%0Aco-
morbid%2C%20but%0AMUTUALLY%20SELF-%0AREINFORCING"],
[1001,466,"CHALLENGE%3A%0A%0Adraw%20%26%20simulate%0Ayour%20OWN%20mental%0Afeedback%20loops"]],7]
Thanks in advance if this gets any hits!
from loopy.
I would dive into code where the URL / file get loaded in Loopy.js and I'll notice that it goes to self.model.deserialize(content);
That leads me to following code in Model.js :
`
self.deserialize = function(dataString){
self.clear();
var data = JSON.parse(dataString);
// Get from array!
var nodes = data[0];
var edges = data[1];
var labels = data[2];
var UID = data[3];
...
self.addNode(...)
self.addEdge(...);
self.addLabel(...)
`
That's pretty much of it.
Good luck
from loopy.
I've forked loopy last year, and create 2 new storage format, one binarized and compressed for optimized character use in url and one more readable for human. And you can import the old save file in my forked version to save them in other format.
You can test it here : https://lo0p.it/2/
Find the source-code here : https://github.com/1000i100/loopy
and here is what your model look like in human readable format system_model.loopy.json
:
{
"globals": {
"loopyMode": 1,
"colorLogic": 0,
"cameraMode": 0
},
"nodes": [
{
"id": 0,
"x": 198,
"y": 285,
"init": 0,
"label": "depression",
"hue": 0,
"size": 1,
"aggregationLatency": 0,
"overflow": 0,
"underflow": 1,
"explode": 0,
"foreignColor": 0
},
{
"id": 1,
"x": 531,
"y": 282,
"init": 0,
"label": "doing things",
"hue": 4,
"size": 1,
"aggregationLatency": 0,
"overflow": 0,
"underflow": 1,
"explode": 0,
"foreignColor": 0
},
{
"id": 2,
"x": 367,
"y": 115,
"init": 0,
"label": "de-motivation",
"hue": 1,
"size": 1,
"aggregationLatency": 0,
"overflow": 0,
"underflow": 1,
"explode": 0,
"foreignColor": 0
},
{
"id": 3,
"x": 702,
"y": 116,
"init": 0,
"label": "fear of mistakes",
"hue": 1,
"size": 1,
"aggregationLatency": 0,
"overflow": 0,
"underflow": 1,
"explode": 0,
"foreignColor": 0
},
{
"id": 4,
"x": 860,
"y": 289,
"init": 0,
"label": "anxiety",
"hue": 0,
"size": 1,
"aggregationLatency": 0,
"overflow": 0,
"underflow": 1,
"explode": 0,
"foreignColor": 0
},
{
"id": 5,
"x": 699,
"y": 468,
"init": 0,
"label": "accepting mistakes",
"hue": 4,
"size": 1,
"aggregationLatency": 0,
"overflow": 0,
"underflow": 1,
"explode": 0,
"foreignColor": 0
},
{
"id": 6,
"x": 364,
"y": 473,
"init": 0,
"label": "feeling good",
"hue": 4,
"size": 1,
"aggregationLatency": 0,
"overflow": 0,
"underflow": 1,
"explode": 0,
"foreignColor": 0
}
],
"edges": [
{
"from": 1,
"to": 6,
"arc": 59,
"strength": 1,
"rotation": 0,
"signBehavior": 0,
"edgeFilterColor": -1,
"edgeTargetColor": -1,
"customLabel": "",
"quantitative": 0,
"filter": 0
},
{
"from": 1,
"to": 5,
"arc": -61,
"strength": 1,
"rotation": 0,
"signBehavior": 0,
"edgeFilterColor": -1,
"edgeTargetColor": -1,
"customLabel": "",
"quantitative": 0,
"filter": 0
},
{
"from": 5,
"to": 4,
"arc": -59,
"strength": -1,
"rotation": 0,
"signBehavior": 0,
"edgeFilterColor": -1,
"edgeTargetColor": -1,
"customLabel": "",
"quantitative": 0,
"filter": 0
},
{
"from": 4,
"to": 3,
"arc": -57,
"strength": 1,
"rotation": 0,
"signBehavior": 0,
"edgeFilterColor": -1,
"edgeTargetColor": -1,
"customLabel": "",
"quantitative": 0,
"filter": 0
},
{
"from": 3,
"to": 1,
"arc": -53,
"strength": -1,
"rotation": 0,
"signBehavior": 0,
"edgeFilterColor": -1,
"edgeTargetColor": -1,
"customLabel": "",
"quantitative": 0,
"filter": 0
},
{
"from": 2,
"to": 1,
"arc": 56,
"strength": -1,
"rotation": 0,
"signBehavior": 0,
"edgeFilterColor": -1,
"edgeTargetColor": -1,
"customLabel": "",
"quantitative": 0,
"filter": 0
},
{
"from": 0,
"to": 2,
"arc": 66,
"strength": 1,
"rotation": 0,
"signBehavior": 0,
"edgeFilterColor": -1,
"edgeTargetColor": -1,
"customLabel": "",
"quantitative": 0,
"filter": 0
},
{
"from": 6,
"to": 0,
"arc": 63,
"strength": -1,
"rotation": 0,
"signBehavior": 0,
"edgeFilterColor": -1,
"edgeTargetColor": -1,
"customLabel": "",
"quantitative": 0,
"filter": 0
}
],
"labels": [
{
"x": 365,
"y": 296,
"text": "a possible\nsystems-level\nexplanation for\nwhy depression &\nanxiety are not just\nco-morbid, but\nMUTUALLY SELF-\nREINFORCING",
"visibility": 0,
"textColor": -1,
"href": ""
},
{
"x": 695,
"y": 300,
"text": "CHALLENGE:\n\ndraw & simulate\nyour OWN mental\nfeedback loops",
"visibility": 0,
"textColor": -1,
"href": ""
}
]
}
does-it help you ?
from loopy.
PS : in v1.1 these parameters doesn't exist so you can ignore them :
On nodes :
"size": 1,
"aggregationLatency": 0,
"overflow": 0,
"underflow": 1,
"explode": 0,
"foreignColor": 0
On link/edge :
"signBehavior": 0,
"edgeFilterColor": -1,
"edgeTargetColor": -1,
"customLabel": "",
"quantitative": 0,
"filter": 0
On label :
"visibility": 0,
"textColor": -1,
"href": ""
from loopy.
Commented on a year-old thread on a whim. Woke up to three insightful comments.
Busy workday ahead of me, but I'm looking forward to digging into this after, and will get back with an update on my end, or any hangups I run into!
Salt of the earth-- the whole lot of you :)
from loopy.
Related Issues (20)
- color contagion arrow HOT 1
- node color behavior in colorLogic HOT 1
- visual group HOT 2
- functionnal groups HOT 1
- gear Node and Edge
- FEAT node images HOT 1
- USAGE TESTING HOT 2
- Node visibility in play mode
- Camera mode HOT 1
- Read Only |or| User Interactive Node Toggle
- UI : behavior features tab and display features tab HOT 1
- Link / href in loopy HOT 1
- Just some random praise
- non negative amount and visualization of negative amount HOT 2
- sparklines / charts HOT 4
- zoom / pan for canvas HOT 2
- saving as a gif HOT 2
- Could Loopy be used in VScode?
- Providing translations guideline
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from loopy.