Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support more xvega functionalities #62

Open
5 of 20 tasks
marimeireles opened this issue Oct 6, 2020 · 1 comment
Open
5 of 20 tasks

Support more xvega functionalities #62

marimeireles opened this issue Oct 6, 2020 · 1 comment

Comments

@marimeireles
Copy link
Member

marimeireles commented Oct 6, 2020

If you have a look at very cool's @madhur-tandon work in xvega, specifically if you run the binder you'll see that xeus-sqlite is not supporting quite a few of those.
This issue is an effort to list them and try to give some pointers on how to do it. If you're getting started on C++ and would like to learn in a real project this is a very good opportunity! The PRs to resolve this issue are going to be self contained and this is a small project, so it's somewhat easy to get a grasp of everything that's going on here. Besides, this is a mentored issue, which means you can feel comfortable to ask whatever questions you might have + all maintainers of this repo are under the NumFocus code of conduct and it's a safe space.

(+- organized by order of importance, if you're a user of the lib, pls feel comfortable in calling me out on this importance list)

  • title
  • regressions
  • Tooltip
  • transformations
  • sort_field_def
  • color basic
  • color (there are color properties in many different properties, we have marks, but missing text, graph background [...] besides, color itself has a few other attrs. if I'm not mistaken)
  • bin (https://vega.github.io/vega-lite/docs/bin.html)
  • field type (quantitative, temporal, etc)
  • different kinds of marks
    • img
    • txt
    • geoshape
  • field aggregate attribute
  • layer
  • scale
  • direction
  • config
  • selection_interval
  • improve marks (e.g mark_config().filled(true).size(200).color("red");)

In order to add these functionalities to xeus-sqlite you'll need to get somewhat familiar with xvega code.

Here's my recommended step to step to get a contribution going:

  1. Make sure you're able to build both projects locally, xvega and xeus-sqlite
  2. Test both project's notebooks and get familiar with basic functionalities
  3. Choose a functionality of this list and search for it on the xvega code. Read through it and the functions that are using it, the data structures around it, etc. Just so you get a first initial idea. (Don't worry if it doesn't make a lot of sense, it's the first time you're seeing this!)
  4. Read the xvega_bindings.cpp file on xeus-sqlite and see how the other functionalities were already integrated.
  5. Kind of copying the pattern that you saw on 4, give it a try on implementing yours! :)

If you have any questions, don't hesitate to ask in our chat: https://gitter.im/QuantStack/Lobby
Someone will answer you ASAP :D

@MooersLab
Copy link

Yes, support for layers would be useful for plotting to series of Y-values on the same plot.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants