{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Autotranslation Groovy to JavaScript" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def r = new Random()\n", "def nnodes = 100\n", "def nodes = []\n", "def links = []\n", "\n", "for (x in (0..nnodes)){\n", " nodes.add(name:\"\" + x, group:((int) x*7/nnodes))\n", "}\n", "\n", "for (x in (0..(int) nnodes*1.15)) { \n", " source = x % nnodes\n", " target = ((int) log(1 + r.nextInt(nnodes))/log(1.3))\n", " value = 10.0 / (1 + abs(source - target))\n", " links.add(source: source, target: target, value: value*value)\n", "}\n", "\n", "beakerx.graph = [nodes: nodes, links: links]\n", "OutputCell.HIDDEN" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "application/javascript": [ "\n", "require.config({\n", " paths: {\n", " d3: '//cdnjs.cloudflare.com/ajax/libs/d3/3.4.8/d3.min'\n", " }});" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%javascript\n", "require.config({\n", " paths: {\n", " d3: '//cdnjs.cloudflare.com/ajax/libs/d3/3.4.8/d3.min'\n", " }});" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%html\n", "" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "application/javascript": [ "\n", "\n", "beakerx.displayHTML(this, '
');\n", "\n", "var graph = beakerx.graph\n", "var d3 = require(['d3'], function (d3) {\n", " \n", " var width = 600,\n", " height = 500;\n", "\n", " var color = d3.scale.category20();\n", "\n", " var force = d3.layout.force()\n", " .charge(-200)\n", " .linkDistance(30)\n", " .size([width, height]);\n", "\n", " var svg = d3.select(\"#fdg\")\n", " .append(\"svg\")\n", " .attr(\"width\", width)\n", " .attr(\"height\", height);\n", "\n", "\n", " force.nodes(graph.nodes)\n", " .links(graph.links)\n", " .start();\n", "\n", " var link = svg.selectAll(\".link\")\n", " .data(graph.links)\n", " .enter().append(\"line\")\n", " .attr(\"class\", \"link\")\n", " .style(\"stroke-width\", function(d) { return Math.sqrt(d.value); });\n", "\n", " var node = svg.selectAll(\".node\")\n", " .data(graph.nodes)\n", " .enter().append(\"circle\")\n", " .attr(\"class\", \"node\")\n", " .attr(\"r\", 10)\n", " .style(\"fill\", function(d) { return color(d.group); })\n", " .call(force.drag);\n", "\n", " node.append(\"title\")\n", " .text(function(d) { return d.name; });\n", "\n", " force.on(\"tick\", function() {\n", " link.attr(\"x1\", function(d) { return d.source.x; })\n", " .attr(\"y1\", function(d) { return d.source.y; })\n", " .attr(\"x2\", function(d) { return d.target.x; })\n", " .attr(\"y2\", function(d) { return d.target.y; });\n", "\n", " node.attr(\"cx\", function(d) { return d.x; })\n", " .attr(\"cy\", function(d) { return d.y; });\n", " });\n", "});" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%javascript\n", "\n", "beakerx.displayHTML(this, '
');\n", "\n", "var graph = beakerx.graph\n", "var d3 = require(['d3'], function (d3) {\n", " \n", " var width = 600,\n", " height = 500;\n", "\n", " var color = d3.scale.category20();\n", "\n", " var force = d3.layout.force()\n", " .charge(-200)\n", " .linkDistance(30)\n", " .size([width, height]);\n", "\n", " var svg = d3.select(\"#fdg\")\n", " .append(\"svg\")\n", " .attr(\"width\", width)\n", " .attr(\"height\", height);\n", "\n", "\n", " force.nodes(graph.nodes)\n", " .links(graph.links)\n", " .start();\n", "\n", " var link = svg.selectAll(\".link\")\n", " .data(graph.links)\n", " .enter().append(\"line\")\n", " .attr(\"class\", \"link\")\n", " .style(\"stroke-width\", function(d) { return Math.sqrt(d.value); });\n", "\n", " var node = svg.selectAll(\".node\")\n", " .data(graph.nodes)\n", " .enter().append(\"circle\")\n", " .attr(\"class\", \"node\")\n", " .attr(\"r\", 10)\n", " .style(\"fill\", function(d) { return color(d.group); })\n", " .call(force.drag);\n", "\n", " node.append(\"title\")\n", " .text(function(d) { return d.name; });\n", "\n", " force.on(\"tick\", function() {\n", " link.attr(\"x1\", function(d) { return d.source.x; })\n", " .attr(\"y1\", function(d) { return d.source.y; })\n", " .attr(\"x2\", function(d) { return d.target.x; })\n", " .attr(\"y2\", function(d) { return d.target.y; });\n", "\n", " node.attr(\"cx\", function(d) { return d.x; })\n", " .attr(\"cy\", function(d) { return d.y; });\n", " });\n", "});" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "beakerx_kernel_parameters": { "classpath": [], "imports": [ "com.twosigma.beaker.easyform.EasyForm", "com.github.lwhite1.tablesaw.api.ml.regression.*", "static com.twosigma.beaker.mimetype.MIMEContainer.VimeoVideo", "static com.twosigma.beaker.mimetype.FileLinkContainer.FileLinks", "com.twosigma.beaker.chart.Color", "com.github.lwhite1.tablesaw.api.*", "static com.twosigma.beaker.mimetype.MIMEContainer.IFrame", "com.twosigma.beaker.NamespaceClient", "com.twosigma.beaker.chart.treemap.*", "com.twosigma.beaker.jvm.object.OutputCell", "com.twosigma.beaker.chart.treemap.util.*", "com.github.lwhite1.tablesaw.filtering.*", "static com.twosigma.beaker.mimetype.MIMEContainer.HTML", "static com.twosigma.beaker.mimetype.MIMEContainer.Javascript", "static com.twosigma.beaker.mimetype.FileLinkContainer.FileLink", "static com.twosigma.beaker.mimetype.MIMEContainer.ScribdDocument", "static com.twosigma.beaker.mimetype.SVGContainer.SVG", "com.twosigma.beaker.mimetype.MIMEContainer", "net.sf.jtreemap.swing.*", "com.twosigma.beaker.chart.histogram.*", "static com.github.lwhite1.tablesaw.api.QueryHelper.*", "com.twosigma.beaker.chart.heatmap.HeatMap", "com.twosigma.beaker.chart.xychart.*", "static com.twosigma.beaker.mimetype.ImageContainer.Image", "com.github.lwhite1.tablesaw.api.ml.clustering.*", "com.twosigma.beaker.chart.Filter", "static java.lang.Math.*", "static com.twosigma.beaker.mimetype.MIMEContainer.YoutubeVideo", "static com.twosigma.beaker.mimetype.MIMEContainer.Math", "com.twosigma.beaker.fileloader.CsvPlotReader", "static com.twosigma.beaker.mimetype.MIMEContainer.Markdown", "java.util.concurrent.TimeUnit", "com.twosigma.beaker.chart.categoryplot.plotitem.*", "static com.twosigma.beaker.mimetype.MIMEContainer.Video", "com.twosigma.beaker.chart.categoryplot.*", "static com.twosigma.beaker.mimetype.MIMEContainer.Latex", "com.twosigma.beaker.chart.xychart.plotitem.*", "com.twosigma.beaker.table.*", "com.twosigma.beaker.chart.KeyboardCodes", "com.twosigma.beaker.chart.GradientColor", "com.github.lwhite1.tablesaw.columns.*", "com.twosigma.beaker.chart.legend.*", "com.github.lwhite1.tablesaw.reducing.*" ] }, "classpath": [], "imports": [ "com.github.lwhite1.tablesaw.api.ml.regression.*", "com.twosigma.beaker.chart.Color", "com.github.lwhite1.tablesaw.api.*", "com.twosigma.beaker.NamespaceClient", "com.github.lwhite1.tablesaw.filtering.*", "com.twosigma.beaker.chart.histogram.*", "static com.github.lwhite1.tablesaw.api.QueryHelper.*", "com.twosigma.beaker.chart.heatmap.HeatMap", "com.twosigma.beaker.chart.xychart.*", "com.github.lwhite1.tablesaw.api.ml.clustering.*", "com.twosigma.beaker.chart.Filter", "static java.lang.Math.*", "static com.twosigma.beaker.mimetype.MIMEContainer.addMimeType", "java.util.concurrent.TimeUnit", "com.twosigma.beaker.chart.categoryplot.plotitem.*", "com.twosigma.beaker.chart.categoryplot.*", "static com.twosigma.beaker.mimetype.MIMEContainer.Latex", "com.twosigma.beaker.chart.xychart.plotitem.*", "com.twosigma.beaker.chart.KeyboardCodes", "com.twosigma.beaker.chart.GradientColor", "com.github.lwhite1.tablesaw.columns.*", "com.twosigma.beaker.chart.legend.*", "com.twosigma.beaker.jvm.object.OutputCell", "com.github.lwhite1.tablesaw.reducing.*", "static com.twosigma.beaker.mimetype.MIMEContainer.HTML" ], "kernelspec": { "display_name": "Groovy", "language": "groovy", "name": "groovy" }, "language_info": { "codemirror_mode": "groovy", "file_extension": ".groovy", "mimetype": "", "name": "Groovy", "nbconverter_exporter": "", "version": "2.4.3" } }, "nbformat": 4, "nbformat_minor": 1 }