cnavarreteliz / vizbuilder Goto Github PK
View Code? Open in Web Editor NEWA react module for dynamical data visualization
A react module for dynamical data visualization
In KSA cube
@cnavarreteliz, let's meet with @alexandersimoes and @hwchen about getting the data and setting it up
I'm thinking of something like:
Group into <X> buckets
where <X>
is a dropdown of numbers 1-10.
When a person open VizBuilder, must see a treemap with data from random cube/dimension and default measure
Decrease number of steps to get charts
let's try using a blueprint dialog to show a table of the data!
here's the docs for Dialog: http://blueprintjs.com/docs/#core/components/dialog
Use dashed border when I can change attribute in viz.
Use these variations and add new color options.
Ex. % Growth Salary by Industry Sector period 2009 - 2016
I see that there are 2 static variables defined in app/helpers/consts.js
for FIRST_YEAR
and LAST_YEAR
. Where are these currently being used?
If they are still needed, we should talk with the API team to find a way to get them through the API.
If they are no longer needed, we should remove them from the codebase.
@cnavarreteliz we should never be trying to detect anything on a measure based on it's name or content. Everything the viz-builder does should be determined from annotations. As discussed on the call, let's define a pre-defined annotation object that we will document and show to the @jazzido and @hwchen. For now, I am thinking something like this:
"annotations": {
"vizbuilder": {
"type": "AGE"
}
}
And then, we would have a list of pre-defined values for each key:
"AGE"
"GENDER"
@cnavarreteliz please post any additional ideas you have here, and then update the README.md
file with the code example and pre-defined lists.
Currently, a random cube is selected for measures. The user flow should be:
Dataset: [ dataset dropdown ]
I want to see: [ dimension dropdown ]
Sized by: [ measure dropdown ]
should just require setting the "time"
config to equal the time key in the data
the small blue line at the top of the screen isn't very visible. I think a better visual indicator would be a <div>
that covers the entire visualization with a progress bar in the center. take a look at the Blueprint progress slider: http://blueprintjs.com/docs/#core/components/progress/progress-bar
we discussed using a pre-existing library and not creating our own component. here is the one we talked about in the call: https://react-table.js.org/#/story/readme
it doesn't need to be this one, so I leave the decision up to @cnavarreteliz to find one that works best
we should have:
http://vizbuilder.datawheel.us/ksa
http://vizbuilder.datawheel.us/chile
This will help us test how well the vizbuilder is generalized for different datasets. Here is the URL for DataChile: https://chilecube.datawheel.us/
install with: npm i @blueprint/labs
If you have any questions and problems setting it up, please ask and I can bring @alexandersimoes into the conversation to help
I think that is a good option merge similar dimensions of all cubes and create dropdown with different measures.
Cube 1 { Age, Age bucket, Occupation }
Cube 2 { Occupation, Industry Group }
Cube 3 { Age, Industry Group }
Supercube { Age, Age bucket, Occupation, Industry Group }
And and instead of select random cube in Vizbuilder, select supercube!
Add year dimension in mondrian query if it's available in a drilldown.
@davelandry I believe that it's important set a protocol in measures. For example, in every measure object put type
key.
{
"name": "Age Average",
"type": "average"
},
{
"name": "Age AVG",
"type": "average"
},
{
"name": "Salary Sum",
"type": "sum"
}
With that type key, we can recommend better charts :)
This protocol can be applied if a dimension is a timeDimension (in JobsKSA there's this classification but in chilecube doesn't)
I implemented this behavior in Data Africa with this component: https://github.com/data-africa/data-africa-site/blob/master/app/components/Download.jsx
shapes should always be labeled by the "I want to see" selection
I implemented this behavior in Data Africa with this component: https://github.com/data-africa/data-africa-site/blob/master/app/components/Download.jsx
Whenever a setting in the viz-builder is changed, we should update the URL query parameters with the new settings so that if the page is reloaded, the settings persist.
Here's an example of how we did in on the Map page in Data Africa: https://github.com/data-africa/data-africa-site/blob/master/app/pages/Map.jsx#L183
Interactive timeline in all charts (focus in bubble chart)
for example, if selecting "show me occupations", a filter should appear that says "filter by location", where you are able to select from a list of all available occupations
sometimes there may be multiple filter types available, so the interface should have an "add a filter" button, where they then select "location" from a dropdown of available filteres
In some dimensions, there are many categories (more than 50) and this situation spoil Treemap / Donut charts.
My idea is group "alpha" percent of the lowest categories in "Other".
currently, changing a toggle causes the visualization to completely clear. it should stay with the previous data until the new data is ready
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.