Personal tools

Diagrams/GSoC

From HaskellWiki

< Diagrams(Difference between revisions)
Jump to: navigation, search
(Mentioned 3D backends.)
(16 intermediate revisions by 5 users not shown)
Line 1: Line 1:
It would be cool to get a Google Summer of Code student involved with diagrams somehow. Let's brainstorm some project ideas below!
+
Are you a potential Google Summer of Code student searching for a project to propose? Consider contributing to [http://projects.haskell.org/diagrams/ diagrams]! It's an active project with a small, friendly, and knowledgeable [http://projects.haskell.org/diagrams/community.html developer community]. Contributions to diagrams directly improve people's ability to communicate ideas effectively, and raise the profile of the Haskell programming language. Most of all, it's fun---you get to tangibly experience your contributions in the form of beautiful or useful images.
  +
  +
See [[Diagrams/Projects]] for a list of potential project ideas (though note that not all of them may make suitable GSoC projects). We're happy to discuss any of those ideas, or your own ideas, to help you come up with a solid proposal for a project you're excited about---send email to the [http://groups.google.com/group/diagrams-discuss mailing list].
   
 
More info:
 
More info:
Line 6: Line 6:
 
* http://www.google-melange.com/gsoc/document/show/gsoc_program/google/gsoc2013/help_page
 
* http://www.google-melange.com/gsoc/document/show/gsoc_program/google/gsoc2013/help_page
 
* http://www.google-melange.com/gsoc/events/google/gsoc2013
 
* http://www.google-melange.com/gsoc/events/google/gsoc2013
 
== Project ideas ==
 
 
=== GTK application for creating diagrams interactively ===
 
 
=== Path operations ===
 
 
Intersection, union, etc?
 
 
See also [[Diagrams/Dev/Paths]].
 
 
=== Optimized Diagrams ===
 
 
Tools for backends to remove redundant data?
 
 
=== Constraint Based Diagrams ===
 
 
Generate diagrams that meet some declarative constraint specification. Something
 
along the lines of http://wadler.blogspot.com/2011/06/combinator-library-for-design-of.html
 
 
=== 3D Backends ===
 
 
Lots of fun things to do here!
 
 
=== Make Plotting As Easy As Doing It in R ===
 
 
From diagram-discuss:
 
 
The above code produces four plots: a scatterplot (something you would
 
often see in statistics), a plot of a function and, well, two empty
 
grids. As a statistician, I usually work a lot with R together with a
 
more or less sophisticated plotting package. The currently best
 
plotting system for R is probably [http://had.co.nz/ggplot2/ ggplot ]. Now, I started using
 
Bryan O'Sullivan's [http://hackage.haskell.org/package/statistics/ statistics package] for some of my calculations.
 
Once in Haskell mode, you obviously don't want to switch back and
 
forth between languages. So, I was wondering if it is possible to
 
produce professional looking plots with diagrams' DSL, and how
 
difficult it could be to put together a DSL for (statistical)
 
plotting.
 
 
I was thinking of something similar to ggplot's functionality. Making
 
it easy to overlay plots, producing and combining legends, etc.
 
Creating scatterplots and histograms and boxplots. Overlaying them
 
with error regions and density estimates respectively. Then do the
 
same for different subsets of the original data. Doing this with
 
diagrams DSL could proof to be extremely powerful. Each "dot" in a
 
plot could potentially be any diagram you want, dots, circles, stars,
 
numbers or characters -- and if plots are nothing but diagrams, you
 
could even plot plots into a plot. A real pain for most plotting
 
systems is to combine multiple plots into one and to generate a common
 
legend for all of them. This, for example, should be trivial to do
 
within diagrams DSL.
 
 
I would be more than happy to help in such a project. As the code
 
above probably suggests, I am not the strongest Haskell hacker around.
 
In fact, I am a statistician/mathematician who happens to use Haskell
 
for some of his projects. That's it. Would anyone be interested in
 
picking up such a project? As I said, I would be happy to help and
 
get involved. Because I think there is a real need for something like
 
this, and it would be very powerful to have eDSL for statistical
 
plotting within Haskell.
 
 
== Sources for more ideas ==
 
 
* http://www.cgal.org/Manual/latest/doc_html/cgal_manual/packages.html
 

Revision as of 15:31, 14 May 2013

Are you a potential Google Summer of Code student searching for a project to propose? Consider contributing to diagrams! It's an active project with a small, friendly, and knowledgeable developer community. Contributions to diagrams directly improve people's ability to communicate ideas effectively, and raise the profile of the Haskell programming language. Most of all, it's fun---you get to tangibly experience your contributions in the form of beautiful or useful images.

See Diagrams/Projects for a list of potential project ideas (though note that not all of them may make suitable GSoC projects). We're happy to discuss any of those ideas, or your own ideas, to help you come up with a solid proposal for a project you're excited about---send email to the mailing list.

More info: