From 4e685ccf2bc23c41f7d48569af584ee535feb474 Mon Sep 17 00:00:00 2001 From: conker84 Date: Wed, 26 Oct 2016 22:07:17 +0200 Subject: [PATCH 01/98] First commit --- neo4j/pom.xml | 144 +++++++++ .../zeppelin/graph/model/GraphEntity.java | 91 ++++++ .../zeppelin/graph/model/GraphResult.java | 101 ++++++ .../org/apache/zeppelin/graph/model/Node.java | 84 +++++ .../zeppelin/graph/model/Relationship.java | 91 ++++++ .../graph/neo4j/Neo4jCypherInterpreter.java | 294 +++++++++++++++++ .../neo4j/utils/Neo4jConversionUtils.java | 55 ++++ .../zeppelin/graph/utils/GraphUtils.java | 39 +++ .../main/resources/interpreter-setting.json | 33 ++ .../neo4j/Neo4jCypherInterpreterTest.java | 144 +++++++++ .../zeppelin/graph/utils/GraphUtilsTest.java | 40 +++ pom.xml | 1 + .../interpreter/InterpreterResult.java | 3 +- zeppelin-web/Gruntfile.js | 23 +- zeppelin-web/bower.json | 13 +- zeppelin-web/package.json | 3 +- .../paragraph/paragraph-chart-selector.html | 26 +- .../notebook/paragraph/paragraph-graph.html | 27 +- .../notebook/paragraph/paragraph-pivot.html | 302 ++++++++++-------- .../paragraph/paragraph.controller.js | 167 +++++++++- .../src/app/notebook/paragraph/paragraph.css | 4 + .../resizable/resizable.directive.js | 4 +- zeppelin-web/src/index.html | 4 + zeppelin-web/test/karma.conf.js | 4 + .../zeppelin/conf/ZeppelinConfiguration.java | 3 +- 25 files changed, 1537 insertions(+), 163 deletions(-) create mode 100644 neo4j/pom.xml create mode 100644 neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphEntity.java create mode 100644 neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphResult.java create mode 100644 neo4j/src/main/java/org/apache/zeppelin/graph/model/Node.java create mode 100644 neo4j/src/main/java/org/apache/zeppelin/graph/model/Relationship.java create mode 100644 neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreter.java create mode 100644 neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/utils/Neo4jConversionUtils.java create mode 100644 neo4j/src/main/java/org/apache/zeppelin/graph/utils/GraphUtils.java create mode 100644 neo4j/src/main/resources/interpreter-setting.json create mode 100644 neo4j/src/test/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreterTest.java create mode 100644 neo4j/src/test/java/org/apache/zeppelin/graph/utils/GraphUtilsTest.java diff --git a/neo4j/pom.xml b/neo4j/pom.xml new file mode 100644 index 00000000000..417dc4e225c --- /dev/null +++ b/neo4j/pom.xml @@ -0,0 +1,144 @@ + + + + + 4.0.0 + + + zeppelin + org.apache.zeppelin + 0.7.0-SNAPSHOT + .. + + + org.apache.zeppelin + zeppelin-neo4j + jar + 0.7.0-SNAPSHOT + Zeppelin: Neo4j interpreter + + + 1.0.4 + 3.0.4 + 3.0.4 + 2.8.2 + + + + + ${project.groupId} + zeppelin-interpreter + ${project.version} + provided + + + + org.neo4j.driver + neo4j-java-driver + ${neo4j.driver.version} + + + + com.fasterxml.jackson.core + jackson-databind + ${jackson.databind.version} + + + + org.slf4j + slf4j-api + + + + org.slf4j + slf4j-log4j12 + + + + junit + junit + test + + + + org.neo4j.test + neo4j-harness + ${neo4j.version} + test + + + + + + + maven-enforcer-plugin + 1.3.1 + + + enforce + none + + + + + + maven-dependency-plugin + 2.8 + + + copy-dependencies + package + + copy-dependencies + + + ${project.build.directory}/../../interpreter/neo4j + false + false + true + runtime + + + + copy-artifact + package + + copy + + + ${project.build.directory}/../../interpreter/neo4j + false + false + true + runtime + + + ${project.groupId} + ${project.artifactId} + ${project.version} + ${project.packaging} + + + + + + + + + + diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphEntity.java b/neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphEntity.java new file mode 100644 index 00000000000..b2aca3fbd6d --- /dev/null +++ b/neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphEntity.java @@ -0,0 +1,91 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.zeppelin.graph.model; + +import java.util.Map; + +/** + * + * @author a.santurbano + * + */ +public abstract class GraphEntity { + + private long id; + + private Map data; + + private double size; + + private String label; + + private String color; + + public GraphEntity() {} + + public GraphEntity(long id, Map data, String label, double size, + String color) { + super(); + this.setId(id); + this.setData(data); + this.setSize(size); + this.setLabel(label); + this.setColor(color); + } + + public long getId() { + return id; + } + + public void setId(long id) { + this.id = id; + } + + public Map getData() { + return data; + } + + public void setData(Map data) { + this.data = data; + } + + public double getSize() { + return size; + } + + public void setSize(double size) { + this.size = size; + } + + public String getLabel() { + return label; + } + + public void setLabel(String label) { + this.label = label; + } + + public String getColor() { + return color; + } + + public void setColor(String color) { + this.color = color; + } + +} diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphResult.java b/neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphResult.java new file mode 100644 index 00000000000..8524bd8266f --- /dev/null +++ b/neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphResult.java @@ -0,0 +1,101 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.zeppelin.graph.model; + +import java.util.Collection; +import java.util.Map; +import java.util.Set; + +import org.apache.zeppelin.interpreter.InterpreterResult; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; +/** + * + * @author a.santurbano + * + */ +public class GraphResult extends InterpreterResult { + private static final long serialVersionUID = -7269726748696145519L; + + /** + * + * @author a.santurbano + * + */ + public static class Graph { + private Collection nodes; + + private Collection edges; + + private Map labels; + + private Set types; + + public Graph() {} + + public Graph(Collection nodes, Collection edges, + Map labels, Set types) { + super(); + this.setNodes(nodes); + this.setEdges(edges); + this.setLabels(labels); + this.setTypes(types); + } + + public Collection getNodes() { + return nodes; + } + + public void setNodes(Collection nodes) { + this.nodes = nodes; + } + + public Collection getEdges() { + return edges; + } + + public void setEdges(Collection edges) { + this.edges = edges; + } + + public Map getLabels() { + return labels; + } + + public void setLabels(Map labels) { + this.labels = labels; + } + + public Set getTypes() { + return types; + } + + public void setTypes(Set types) { + this.types = types; + } + + } + + private static final ObjectMapper jsonMapper = new ObjectMapper(); + + public GraphResult(Code code, Graph response) throws JsonProcessingException { + super(code, Type.NETWORK, jsonMapper.writeValueAsString(response)); + } + +} diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/model/Node.java b/neo4j/src/main/java/org/apache/zeppelin/graph/model/Node.java new file mode 100644 index 00000000000..018b2eeca7f --- /dev/null +++ b/neo4j/src/main/java/org/apache/zeppelin/graph/model/Node.java @@ -0,0 +1,84 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.zeppelin.graph.model; + +import java.util.Map; +import java.util.Set; + +/** + * + * @author a.santurbano + * + */ +public class Node extends GraphEntity { + + private Set labels; + + private double x; + + private double y; + + private String defaultLabel; + + public static final double DEFALUT_SIZE = 10d; + + public Node() {} + + public Node(long id, Map data, Set labels, + String color, double x, double y) { + super(id, data, labels.iterator().next(), DEFALUT_SIZE, color); + this.setLabels(labels); + this.setX(x); + this.setY(y); + this.defaultLabel = super.getLabel(); + } + + public Node(long id, Map data, Set labels, + String color) { + this(id, data, labels, color, Math.random(), Math.random()); + } + + public Set getLabels() { + return labels; + } + + public void setLabels(Set labels) { + this.labels = labels; + } + + public double getX() { + return x; + } + + public void setX(double x) { + this.x = x; + } + + public double getY() { + return y; + } + + public void setY(double y) { + this.y = y; + } + + public String getDefaultLabel() { + return defaultLabel; + } + +} diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/model/Relationship.java b/neo4j/src/main/java/org/apache/zeppelin/graph/model/Relationship.java new file mode 100644 index 00000000000..d52fbae4e1b --- /dev/null +++ b/neo4j/src/main/java/org/apache/zeppelin/graph/model/Relationship.java @@ -0,0 +1,91 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.zeppelin.graph.model; + +import java.util.Map; + +/** + * + * @author a.santurbano + * + */ +public class Relationship extends GraphEntity { + + private long source; + + private long target; + + private Type type; + + private int count; + + /** + * + * @author a.santurbano + * + */ + public enum Type{arrow, curvedArrow} + + public static final String COLOR_GREY = "#D3D3D3"; + + public static final double DEFALUT_SIZE = 4d; + + public Relationship() {} + + public Relationship(long id, Map data, long source, + long target, String label, Type type, int count) { + super(id, data, label, DEFALUT_SIZE, COLOR_GREY); + this.setSource(source); + this.setTarget(target); + this.setType(type); + this.setCount(count); + } + + public long getSource() { + return source; + } + + public void setSource(long startNodeId) { + this.source = startNodeId; + } + + public long getTarget() { + return target; + } + + public void setTarget(long endNodeId) { + this.target = endNodeId; + } + + public Type getType() { + return type; + } + + public void setType(Type type) { + this.type = type; + } + + public int getCount() { + return count; + } + + public void setCount(int count) { + this.count = count; + } + +} diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreter.java b/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreter.java new file mode 100644 index 00000000000..be6af02223f --- /dev/null +++ b/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreter.java @@ -0,0 +1,294 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.zeppelin.graph.neo4j; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.HashSet; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.Properties; +import java.util.Set; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import org.apache.commons.lang3.StringUtils; +import org.apache.zeppelin.graph.model.GraphResult; +import org.apache.zeppelin.graph.model.Relationship.Type; +import org.apache.zeppelin.graph.neo4j.utils.Neo4jConversionUtils; +import org.apache.zeppelin.graph.utils.GraphUtils; +import org.apache.zeppelin.interpreter.Interpreter; +import org.apache.zeppelin.interpreter.InterpreterContext; +import org.apache.zeppelin.interpreter.InterpreterResult; +import org.apache.zeppelin.interpreter.InterpreterResult.Code; +import org.apache.zeppelin.resource.Resource; +import org.apache.zeppelin.resource.ResourcePool; +import org.apache.zeppelin.scheduler.Scheduler; +import org.apache.zeppelin.scheduler.SchedulerFactory; +import org.neo4j.driver.internal.InternalNode; +import org.neo4j.driver.internal.InternalPath; +import org.neo4j.driver.internal.InternalRelationship; +import org.neo4j.driver.internal.util.Iterables; +import org.neo4j.driver.internal.value.ListValue; +import org.neo4j.driver.internal.value.NodeValue; +import org.neo4j.driver.internal.value.PathValue; +import org.neo4j.driver.internal.value.RelationshipValue; +import org.neo4j.driver.v1.AuthTokens; +import org.neo4j.driver.v1.Config; +import org.neo4j.driver.v1.Driver; +import org.neo4j.driver.v1.GraphDatabase; +import org.neo4j.driver.v1.Record; +import org.neo4j.driver.v1.Session; +import org.neo4j.driver.v1.StatementResult; +import org.neo4j.driver.v1.types.Node; +import org.neo4j.driver.v1.types.Relationship; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.fasterxml.jackson.core.JsonProcessingException; + +/** + * Neo4j interpreter for Zeppelin. + */ +public class Neo4jCypherInterpreter extends Interpreter { + static final Logger LOGGER = LoggerFactory.getLogger(Neo4jCypherInterpreter.class); + + public static final String NEO4J_SERVER_URL = "neo4j.url"; + public static final String NEO4J_SERVER_USER = "neo4j.user"; + public static final String NEO4J_SERVER_PASSWORD = "neo4j.password"; + public static final String NEO4J_MAX_CONCURRENCY = "neo4j.max.concurrency"; + + private static final String TABLE = "%table"; + private static final String NEW_LINE = "\n"; + private static final String TAB = "\t"; + + private static final Pattern PROPERTY_PATTERN = Pattern.compile("\\{\\w+\\}"); + private static final String REPLACE_CURLY_BRACKETS = "\\{|\\}"; + + private Driver driver = null; + + private Map labels; + + private Set types; + + public Neo4jCypherInterpreter(Properties properties) { + super(properties); + } + + private Driver getDriver() { + if (driver == null) { + Config config = Config.build().withEncryptionLevel(Config.EncryptionLevel.NONE).toConfig(); + driver = GraphDatabase.driver(getProperty(NEO4J_SERVER_URL), + AuthTokens.basic(getProperty(NEO4J_SERVER_USER), + getProperty(NEO4J_SERVER_PASSWORD)), config); + } + return driver; + } + + @Override + public void open() { + getDriver(); + getLabels(); + getTypes(); + } + + @Override + public void close() { + getDriver().close(); + } + + public Map getLabels() { + if (labels == null) { + labels = new LinkedHashMap<>(); + try (Session session = getDriver().session()) { + StatementResult result = session.run("CALL db.labels()"); + Set colors = new HashSet<>(); + while (result.hasNext()) { + Record record = result.next(); + String color = null; + do { + color = GraphUtils.getRandomColor(); + } while(colors.contains(color)); + colors.add(color); + labels.put(record.get("label").asString(), color); + } + } + } + return labels; + } + + private Set getTypes() { + if (types == null) { + types = new HashSet<>(); + try (Session session = getDriver().session()) { + StatementResult result = session.run("CALL db.relationshipTypes()"); + while (result.hasNext()) { + Record record = result.next(); + types.add(record.get("relationshipType").asString()); + } + } + } + return types; + } + + private void setResultValue(Object value, Set nodes, Set relationships, + List line) { + if (value instanceof NodeValue + || value instanceof InternalNode) { + NodeValue nodeVal = value instanceof NodeValue ? + (NodeValue) value : (NodeValue) ((InternalNode) value).asValue(); + nodes.add(nodeVal.asNode()); + } else if (value instanceof RelationshipValue + || value instanceof InternalRelationship) { + RelationshipValue relVal = value instanceof RelationshipValue ? + (RelationshipValue) value : (RelationshipValue) ((InternalRelationship) value).asValue(); + relationships.add(relVal.asRelationship()); + } else if (value instanceof PathValue + || value instanceof InternalPath) { + PathValue pathVal = value instanceof PathValue ? + (PathValue) value : (PathValue) ((InternalPath) value).asValue(); + nodes.addAll(Iterables.asList(pathVal.asPath().nodes())); + relationships.addAll(Iterables.asList(pathVal.asPath().relationships())); + } else if (value instanceof ListValue) { + ListValue listValues = (ListValue) value; + List listObject = listValues.asList(); + for (Object val : listObject) { + setResultValue(val, nodes, relationships, line); + } + } else { + line.add(String.valueOf(value)); + } + } + + @Override + public InterpreterResult interpret(String cypherQuery, InterpreterContext interpreterContext) { + logger.info("Opening session"); + if (StringUtils.isEmpty(cypherQuery)) { + return new InterpreterResult(Code.ERROR, "Cypher query is Empty"); + } + try (Session session = getDriver().session()){ + StatementResult result = execute(session, cypherQuery, interpreterContext); + Set cols = new HashSet<>(); + List> lines = new ArrayList<>(); + Set nodes = new HashSet<>(); + Set relationships = new HashSet<>(); + while (result.hasNext()) { + Record record = result.next(); + if (cols.isEmpty()) { + cols.addAll(record.keys()); + } + List line = new ArrayList<>(); + for (String col : cols) { + Object value = record.get(col); + setResultValue(value, nodes, relationships, line); + } + if (!line.isEmpty()) { + lines.add(line); + } + } + if (!nodes.isEmpty()) { + return renderGraph(nodes, relationships); + } else { + return renderTable(cols, lines); + } + } catch (Exception e) { + return new InterpreterResult(Code.ERROR, e.getMessage()); + } + } + + private StatementResult execute(Session session, String cypherQuery, + InterpreterContext interpreterContext) { + Matcher matcher = PROPERTY_PATTERN.matcher(cypherQuery); + Map params = new HashMap<>(); + ResourcePool resourcePool = interpreterContext.getResourcePool(); + while (matcher.find()) { + String key = matcher.group().replaceAll(REPLACE_CURLY_BRACKETS, StringUtils.EMPTY); + Resource resource = resourcePool.get(key); + if (resource != null) { + params.put(key, resource.get()); + } + } + logger.info("Executing cypher query {} with params {}", cypherQuery, params); + return params.isEmpty() ? session.run(cypherQuery) : session.run(cypherQuery, params); + } + + private InterpreterResult renderTable(Set cols, List> lines) { + logger.info("Executing renderTable method"); + StringBuilder msg = new StringBuilder(TABLE); + msg.append(NEW_LINE); + msg.append(StringUtils.join(cols, TAB)); + msg.append(NEW_LINE); + for (List line : lines) { + msg.append(StringUtils.join(line, TAB)); + msg.append(NEW_LINE); + } + return new InterpreterResult(Code.SUCCESS, msg.toString()); + } + + private InterpreterResult renderGraph(Set nodes, + Set relationships) throws JsonProcessingException { + logger.info("Executing renderGraph method"); + List nodesList = new ArrayList<>(); + List relsList = new ArrayList<>(); + Map relCount = new HashMap<>(); + for (Relationship rel : relationships) { + Type type = null; + String keyStartEnd = String.format("%s-%s", rel.startNodeId(), rel.endNodeId()); + String keyEndStart = String.format("%s-%s", rel.endNodeId(), rel.startNodeId()); + if (!relCount.containsKey(keyStartEnd) && !relCount.containsKey(keyEndStart)) { + type = Type.arrow; + } else { + type = Type.curvedArrow; + } + if (!relCount.containsKey(keyStartEnd)) { + relCount.put(keyStartEnd, 0); + } + Integer count = relCount.get(keyStartEnd); + relCount.put(keyStartEnd, ++count); + relsList.add(Neo4jConversionUtils.toZeppelinRelationship(rel, type, count)); + } + for (Node node : nodes) { + nodesList.add(Neo4jConversionUtils.toZeppelinNode(node, getLabels())); + } + return new GraphResult(Code.SUCCESS, + new GraphResult.Graph(nodesList, relsList, getLabels(), getTypes())); + } + + @Override + public Scheduler getScheduler() { + return SchedulerFactory.singleton() + .createOrGetParallelScheduler(Neo4jCypherInterpreter.class.getName() + this.hashCode(), + Integer.parseInt(getProperty(NEO4J_MAX_CONCURRENCY))); + } + + @Override + public int getProgress(InterpreterContext context) { + return 0; + } + + @Override + public FormType getFormType() { + return FormType.SIMPLE; + } + + @Override + public void cancel(InterpreterContext context) { + } + +} diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/utils/Neo4jConversionUtils.java b/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/utils/Neo4jConversionUtils.java new file mode 100644 index 00000000000..59ea20a9fd4 --- /dev/null +++ b/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/utils/Neo4jConversionUtils.java @@ -0,0 +1,55 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.zeppelin.graph.neo4j.utils; + +import java.util.LinkedHashSet; +import java.util.Map; +import java.util.Set; + +import org.apache.zeppelin.graph.model.Relationship.Type; +import org.neo4j.driver.v1.types.Node; +import org.neo4j.driver.v1.types.Relationship; + +/** + * Neo4jConversionUtils + */ +public class Neo4jConversionUtils { + private Neo4jConversionUtils() {} + + public static org.apache.zeppelin.graph.model.Node toZeppelinNode(Node n, + Map graphLabels) { + Set labels = new LinkedHashSet<>(); + String firstLabel = null; + for (String label : n.labels()) { + if (firstLabel == null) { + firstLabel = label; + } + labels.add(label); + } + String color = graphLabels.get(firstLabel); + return new org.apache.zeppelin.graph.model.Node(n.id(), n.asMap(), + labels, color); + } + + public static org.apache.zeppelin.graph.model.Relationship + toZeppelinRelationship(Relationship r, Type type, int count) { + return new org.apache.zeppelin.graph.model.Relationship(r.id(), r.asMap(), + r.startNodeId(), r.endNodeId(), r.type(), type, count); + } + +} diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/utils/GraphUtils.java b/neo4j/src/main/java/org/apache/zeppelin/graph/utils/GraphUtils.java new file mode 100644 index 00000000000..36edafae3b7 --- /dev/null +++ b/neo4j/src/main/java/org/apache/zeppelin/graph/utils/GraphUtils.java @@ -0,0 +1,39 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.zeppelin.graph.utils; + +/** + * + * @author a.santurbano + * + */ +public class GraphUtils { + private GraphUtils() {} + + private static final String[] LETTERS = "0123456789ABCDEF".split(""); + + public static String getRandomColor() { + char[] color = new char[7]; + color[0] = '#'; + for (int i = 1; i < color.length; i++) { + color[i] = LETTERS[(int) Math.floor(Math.random() * 16)].charAt(0); + } + return new String(color); + } + +} diff --git a/neo4j/src/main/resources/interpreter-setting.json b/neo4j/src/main/resources/interpreter-setting.json new file mode 100644 index 00000000000..8d2189b3574 --- /dev/null +++ b/neo4j/src/main/resources/interpreter-setting.json @@ -0,0 +1,33 @@ +[ + { + "group": "neo4j", + "name": "neo4j", + "className": "org.apache.zeppelin.graph.neo4j.Neo4jCypherInterpreter", + "properties": { + "neo4j.url": { + "envName": null, + "propertyName": "neo4j.url", + "defaultValue": "bolt://localhost:7687", + "description": "The Neo4j's BOLT url." + }, + "neo4j.user": { + "envName": null, + "propertyName": "neo4j.user", + "defaultValue": "neo4j", + "description": "The Neo4j user name" + }, + "neo4j.password": { + "envName": null, + "propertyName": "neo4j.password", + "defaultValue": "neo4j", + "description": "The Neo4j user password" + }, + "neo4j.max.concurrency": { + "envName": null, + "propertyName": "neo4j.max.concurrency", + "defaultValue": "50", + "description": "Max concurrency call to Neo4j server" + } + } + } +] diff --git a/neo4j/src/test/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreterTest.java b/neo4j/src/test/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreterTest.java new file mode 100644 index 00000000000..2506f2f9a2a --- /dev/null +++ b/neo4j/src/test/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreterTest.java @@ -0,0 +1,144 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.zeppelin.graph.neo4j; + +import static org.junit.Assert.assertEquals; + +import java.io.IOException; +import java.util.HashMap; +import java.util.LinkedList; +import java.util.Properties; + +import org.apache.zeppelin.display.AngularObjectRegistry; +import org.apache.zeppelin.display.GUI; +import org.apache.zeppelin.graph.model.GraphResult; +import org.apache.zeppelin.graph.neo4j.Neo4jCypherInterpreter; +import org.apache.zeppelin.interpreter.InterpreterContext; +import org.apache.zeppelin.interpreter.InterpreterContextRunner; +import org.apache.zeppelin.interpreter.InterpreterGroup; +import org.apache.zeppelin.interpreter.InterpreterOutput; +import org.apache.zeppelin.interpreter.InterpreterOutputListener; +import org.apache.zeppelin.interpreter.InterpreterResult; +import org.apache.zeppelin.interpreter.InterpreterResult.Code; +import org.apache.zeppelin.resource.LocalResourcePool; +import org.apache.zeppelin.user.AuthenticationInfo; +import org.junit.After; +import org.junit.Before; +import org.junit.FixMethodOrder; +import org.junit.Test; +import org.junit.runners.MethodSorters; +import org.neo4j.harness.ServerControls; +import org.neo4j.harness.TestServerBuilders; + +import com.fasterxml.jackson.core.JsonParseException; +import com.fasterxml.jackson.databind.JsonMappingException; +import com.fasterxml.jackson.databind.ObjectMapper; + +@FixMethodOrder(MethodSorters.NAME_ASCENDING) +public class Neo4jCypherInterpreterTest { + + private Neo4jCypherInterpreter interpreter; + + private InterpreterContext context; + + private ServerControls server; + + private static final ObjectMapper jsonMapper = new ObjectMapper(); + + private static final String LABEL_PERSON = "Person"; + private static final String REL_KNOWS = "KNOWS"; + + private static final String CYPHER_FOREACH = "FOREACH (x in range(1,1000) | CREATE (:%s{name: \"name\" + x, age: %s}))"; + private static final String CHPHER_UNWIND = "UNWIND range(1,1000) as x " + + "MATCH (n), (m) WHERE id(n) = x AND id(m) = toInt(rand() * 1000) " + + "CREATE (n)-[:%s]->(m)"; + + + private static final String EXPECTED_TABLE = "name\tage\n\"name1\"\t1\n"; + + @Before + public void setUp() throws Exception { + server = TestServerBuilders.newInProcessBuilder() + .withConfig("dbms.security.auth_enabled","false") + .withFixture(String.format(CYPHER_FOREACH, LABEL_PERSON, "x % 10")) + .withFixture(String.format(CHPHER_UNWIND, REL_KNOWS)) + .newServer(); + Properties p = new Properties(); + p.setProperty(Neo4jCypherInterpreter.NEO4J_SERVER_URL, server.boltURI().toString()); + interpreter = new Neo4jCypherInterpreter(p); + context = new InterpreterContext("note", "id", "title", "text", + new AuthenticationInfo(), + new HashMap(), + new GUI(), + new AngularObjectRegistry(new InterpreterGroup().getId(), null), + new LocalResourcePool("id"), + new LinkedList(), + new InterpreterOutput(new InterpreterOutputListener() { + @Override + public void onAppend(InterpreterOutput out, byte[] line) { + + } + + @Override + public void onUpdate(InterpreterOutput out, byte[] output) { + + } + })); + } + + @After + public void tearDown() throws Exception { + server.close(); + interpreter.close(); + } + + @Test + public void testRenderTable() { + interpreter.open(); + InterpreterResult result = interpreter.interpret("MATCH (n:Person{name: 'name1'}) RETURN n.name AS name, n.age AS age", context); + assertEquals(EXPECTED_TABLE, result.message()); + assertEquals(Code.SUCCESS, result.code()); + } + + @Test + public void testRenderNetwork() throws JsonParseException, JsonMappingException, IOException { + interpreter.open(); + InterpreterResult result = interpreter.interpret("MATCH (n)-[r:KNOWS]-(m) RETURN n, r, m LIMIT 1", context); + GraphResult.Graph graph = jsonMapper.readValue(result.message(), GraphResult.Graph.class); + assertEquals(2, graph.getNodes().size()); + assertEquals(1, graph.getEdges().size()); + assertEquals(1, graph.getLabels().size()); + assertEquals(1, graph.getTypes().size()); + assertEquals(true, graph.getLabels().containsKey(LABEL_PERSON)); + assertEquals(REL_KNOWS, graph.getTypes().iterator().next()); + assertEquals(Code.SUCCESS, result.code()); + } + + @Test + public void testFallingQuery() { + interpreter.open(); + InterpreterResult result = interpreter.interpret("", context); + assertEquals(Code.ERROR, result.code()); + + result = interpreter.interpret(null, context); + assertEquals(Code.ERROR, result.code()); + + result = interpreter.interpret("MATCH (n:Person{name: }) RETURN n.name AS name, n.age AS age", context); + assertEquals(Code.ERROR, result.code()); + } + +} diff --git a/neo4j/src/test/java/org/apache/zeppelin/graph/utils/GraphUtilsTest.java b/neo4j/src/test/java/org/apache/zeppelin/graph/utils/GraphUtilsTest.java new file mode 100644 index 00000000000..e8f2af863e1 --- /dev/null +++ b/neo4j/src/test/java/org/apache/zeppelin/graph/utils/GraphUtilsTest.java @@ -0,0 +1,40 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.zeppelin.graph.utils; + +import static org.junit.Assert.assertEquals; + +import java.util.regex.Pattern; + +import org.junit.FixMethodOrder; +import org.junit.Test; +import org.junit.runners.MethodSorters; +/** + * + * @author a.santurbano + * + */ +@FixMethodOrder(MethodSorters.NAME_ASCENDING) +public class GraphUtilsTest { + + private static final Pattern HEX_PATTERN = Pattern.compile("^#([A-F0-9]{6}|[A-F0-9]{3})$"); + + @Test + public void testGetRandomColor() { + assertEquals(true, HEX_PATTERN.matcher(GraphUtils.getRandomColor()).matches()); + } +} diff --git a/pom.xml b/pom.xml index 558ce0624a1..3e637552361 100644 --- a/pom.xml +++ b/pom.xml @@ -75,6 +75,7 @@ elasticsearch bigquery alluxio + neo4j zeppelin-web zeppelin-server zeppelin-distribution diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/InterpreterResult.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/InterpreterResult.java index d2137961464..cfb386bdce5 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/InterpreterResult.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/InterpreterResult.java @@ -46,7 +46,8 @@ public static enum Type { TABLE, IMG, SVG, - NULL + NULL, + NETWORK } Code code; diff --git a/zeppelin-web/Gruntfile.js b/zeppelin-web/Gruntfile.js index 34f73040cc7..7fa1078d42f 100644 --- a/zeppelin-web/Gruntfile.js +++ b/zeppelin-web/Gruntfile.js @@ -56,6 +56,24 @@ module.exports = function(grunt) { } }, + //shell is used to build component that doesn't exists in bower + shell: { + buildSigma: { + command: function() { + var component = { + path: 'sigma.js', + pathToCheck: 'build' + }; + var path = 'bower_components/' + component.path; + if (grunt.file.exists(path + '/' + component.pathToCheck)) { + var exists = 'echo ' + component.path + ' component exists'; + return exists; + } + return 'cd bower_components/' + component.path + ' && npm install && npm run build'; + } + } + }, + htmlhint: { options: { 'tagname-lowercase': true, @@ -507,6 +525,7 @@ module.exports = function(grunt) { grunt.task.run([ 'clean:server', + 'shell', 'wiredep', 'concurrent:server', 'postcss', @@ -522,6 +541,7 @@ module.exports = function(grunt) { grunt.registerTask('test', [ 'clean:server', + 'shell', 'wiredep', 'concurrent:test', 'postcss', @@ -534,8 +554,9 @@ module.exports = function(grunt) { 'eslint', 'htmlhint', 'clean:dist', + 'shell', 'wiredep', - 'goog-webfont-dl', + //'goog-webfont-dl', 'useminPrepare', 'concurrent:dist', 'postcss', diff --git a/zeppelin-web/bower.json b/zeppelin-web/bower.json index 6a101b8e1f2..b637e82c95a 100644 --- a/zeppelin-web/bower.json +++ b/zeppelin-web/bower.json @@ -33,7 +33,8 @@ "handsontable": "~0.24.2", "moment-duration-format": "^1.3.0", "select2": "^4.0.3", - "github-markdown-css": "^2.4.0" + "github-markdown-css": "^2.4.0", + "sigma.js": "sigma#^1.1.0" }, "devDependencies": { "angular-mocks": "1.5.0" @@ -63,6 +64,16 @@ ], "version": "9.4.0", "name": "highlightjs" + }, + "sigma.js": { + "main": [ + "build/sigma.min.js", + "build/plugins/sigma.renderers.edgeLabels.min.js", + "build/plugins/sigma.plugins.dragNodes.min.js", + "build/plugins/sigma.renderers.parallelEdges.min.js" + ], + "version": "1.1.0", + "name": "sigma.js" } } } diff --git a/zeppelin-web/package.json b/zeppelin-web/package.json index 73a374f2d47..414b3e7192e 100644 --- a/zeppelin-web/package.json +++ b/zeppelin-web/package.json @@ -4,7 +4,8 @@ "version": "0.0.0", "dependencies": { "grunt-angular-templates": "^0.5.7", - "grunt-dom-munger": "^3.4.0" + "grunt-dom-munger": "^3.4.0", + "grunt-shell": "^1.3.1" }, "devDependencies": { "autoprefixer": "^6.1.0", diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html b/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html index d42dcf5a783..0dad92f270e 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html @@ -13,49 +13,55 @@ -->
+
+ - +
diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js index deab258ed65..a6c0a7e642a 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js @@ -124,6 +124,9 @@ $scope.renderAngular(); } else if ($scope.getResultType() === 'TEXT') { $scope.renderText(); + } else if ($scope.getResultType() === 'NETWORK') { + $scope.loadNetworkData($scope.paragraph.result); + $scope.setGraphMode($scope.getGraphMode(), false, false); } getApplicationStates(); @@ -136,6 +139,81 @@ } }; + var setNetwork = function(result, refresh) { + var retryRenderer = function() { + var networkId = 'p' + $scope.paragraph.id + '_network'; + var height = $scope.paragraph.config.graph.height || 400; + if (angular.element('#' + networkId + '_container').length) { + try { + angular.element('#' + networkId).height(height - 50); + angular.element('#' + networkId + '_container').height(height); + //destroy sigmajs to force reinitialization. + var Sigma = $window.sigma; + if ($scope.sigma) { + Sigma.plugins.dragNodes($scope.sigma, $scope.sigma.renderers[0]).unbind('drop'); + $scope.sigma.graph.clear(); + $scope.sigma.kill(); + $scope.sigma = null; + } + result.graph.nodes + .forEach(function(node) { + var selected = $scope.paragraph.config.graph.network.properties[node.defaultLabel].selected; + node.label = (selected in node ? node[selected] : node.data[selected]) + ''; + }); + var nodeIds = Object.keys($scope.paragraph.config.graph.network.nodes) + .map(function(id) { + return +id; + }); + if (nodeIds.length) { + result.graph.nodes + .filter(function(node) { + return nodeIds.indexOf(node.id) !== -1; + }) + .forEach(function(node) { + node.x = $scope.paragraph.config.graph.network.nodes[node.id].x; + node.y = $scope.paragraph.config.graph.network.nodes[node.id].y; + }); + } + $scope.sigma = new Sigma({ + renderer: { + container: networkId, + type: 'canvas' + }, + graph: result.graph, + settings: {//see https://github.com/jacomyal/sigma.js/wiki/Settings#rescale-settings + minNodeSize: 0, + maxNodeSize: 0, + minEdgeSize: 0, + maxEdgeSize: 0 + } + }); + if ($scope.asIframe) { + return; + } + var dragListener = Sigma.plugins.dragNodes($scope.sigma, $scope.sigma.renderers[0]); + dragListener.bind('drop', function(event) { + var nodeId = event.data.node.id; + $scope.paragraph.config.graph.network.nodes[nodeId] = { + x: event.data.node.x, + y: event.data.node.y + }; + $scope.setGraphMode('network', true, false); + }); + } catch (err) { + console.log('Network rendering error %o', err); + } + } else { + $timeout(retryRenderer, 10); + } + }; + $timeout(retryRenderer); + }; + + $scope.setNetworkLabel = function(label, value) { + $scope.paragraph.config.graph.network.properties[label].selected = value; + $scope.setGraphMode('network', true, false); + }; + $scope.renderHtml = function() { var retryRenderer = function() { if (angular.element('#p' + $scope.paragraph.id + '_html').length) { @@ -255,6 +333,18 @@ config.graph.scatter = {}; } + if (!config.graph.network) { + config.graph.network = {}; + } + + if (!config.graph.network.nodes) { + config.graph.network.nodes = {}; + } + + if (!config.graph.network.properties) { + config.graph.network.properties = {}; + } + if (config.enabled === undefined) { config.enabled = true; } @@ -896,6 +986,48 @@ return cell; }; + $scope.loadNetworkData = function(result) { + if (!result || result.type !== 'NETWORK') { + return; + } + result.graph = JSON.parse(result.msg.trim() || '{}'); + var entities = result.graph.nodes.concat(result.graph.edges); + var baseColumnNames = [{name: 'id', index: 0, aggr: 'sum'}, + {name: 'label', index: 1, aggr: 'sum'}]; + var internalFieldsToJump = ['count', 'type', 'size', + 'data', 'x', 'y', 'color', 'defaultLabel', + 'labels']; + var baseCols = _.map(baseColumnNames, function(col) { return col.name; }); + var rows = []; + var array = []; + var keys = _.map(entities, function(elem) { return Object.keys(elem.data); }); + keys = _.flatten(keys); + keys = _.uniq(keys).filter(function(key) { + return baseCols.indexOf(key) === -1; + }); + var columnNames = baseColumnNames.concat(_.map(keys, function(elem, i) { + return {name: elem, index: i + baseColumnNames.length, aggr: 'sum'}; + })); + for (var i = 0; i < entities.length; i++) { + var entity = entities[i]; + var col = []; + var col2 = []; + for (var j = 0; j < columnNames.length; j++) { + var name = columnNames[j].name; + var value = name in entity && internalFieldsToJump.indexOf(name) === -1 ? + entity[name] : entity.data[name]; + var parsedValue = $scope.parseTableCell(value === undefined ? '' : value); + col.push(parsedValue); + col2.push({key: name, value: parsedValue}); + } + rows.push(col); + array.push(col2); + } + result.msgTable = array; + result.columnNames = columnNames; + result.rows = rows; + }; + $scope.loadTableData = function(result) { if (!result) { return; @@ -956,6 +1088,8 @@ if (!type || type === 'table') { setTable($scope.paragraph.result, refresh); + } else if (type === 'network') { + setNetwork($scope.paragraph.result, refresh); } else { setD3Chart(type, $scope.paragraph.result, refresh); } @@ -1188,7 +1322,9 @@ $scope.isGraphMode = function(graphName) { var activeAppId = _.get($scope.paragraph.config, 'helium.activeApp'); - if ($scope.getResultType() === 'TABLE' && $scope.getGraphMode() === graphName && !activeAppId) { + var resultType = $scope.getResultType(); + if ((resultType === 'TABLE' || resultType === 'NETWORK') && + $scope.getGraphMode() === graphName && !activeAppId) { return true; } else { return false; @@ -1328,6 +1464,22 @@ } }; + var setDefaultNetworkOption = function() { + $scope.paragraph.config.graph.network.nodes = {}; + var baseCols = ['id', 'label']; + var properties = {}; + $scope.paragraph.result.graph.nodes.forEach(function(node) { + var hasKey = node.label in properties; + var keys = _.uniq(Object.keys(node.data || {}) + .concat(hasKey ? properties[node.label].keys : baseCols)); + if (!hasKey) { + properties[node.label] = {selected: 'label'}; + } + properties[node.label].keys = keys; + }); + $scope.paragraph.config.graph.network.properties = properties; + }; + var pivot = function(data) { var keys = $scope.paragraph.config.graph.keys; var groups = $scope.paragraph.config.graph.groups; @@ -2298,12 +2450,19 @@ $scope.paragraph.config = data.paragraph.config; } - if (newType === 'TABLE') { - $scope.loadTableData($scope.paragraph.result); - if (oldType !== 'TABLE' || resultRefreshed) { + if (newType === 'TABLE' || newType === 'NETWORK') { + if (newType === 'TABLE') { + $scope.loadTableData($scope.paragraph.result); + } else { + $scope.loadNetworkData($scope.paragraph.result); + } + if ((oldType !== 'TABLE' && oldType !== 'NETWORK') || resultRefreshed) { clearUnknownColsFromGraphOption(); selectDefaultColsForGraphOption(); } + if (newType === 'NETWORK' && resultRefreshed) { + setDefaultNetworkOption(); + } /** User changed the chart type? */ if (oldGraphMode !== newGraphMode) { $scope.setGraphMode(newGraphMode, false, false); diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph.css b/zeppelin-web/src/app/notebook/paragraph/paragraph.css index 60b93d0f9a1..69a6d9fa806 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph.css +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph.css @@ -498,3 +498,7 @@ table.table-striped { padding-left: 4px !important; width: 20px; } + +.network-badge { + margin: 0.2em; +} diff --git a/zeppelin-web/src/components/resizable/resizable.directive.js b/zeppelin-web/src/components/resizable/resizable.directive.js index 912d474c1f4..7ef14248058 100644 --- a/zeppelin-web/src/components/resizable/resizable.directive.js +++ b/zeppelin-web/src/components/resizable/resizable.directive.js @@ -37,7 +37,9 @@ var colStep = window.innerWidth / 12; elem.off('resizestop'); var conf = angular.copy(resizableConfig); - if (resize.graphType === 'TABLE' || resize.graphType === 'TEXT') { + if (resize.graphType === 'TABLE' || + resize.graphType === 'TEXT' || + resize.graphType === 'NETWORK') { conf.grid = [colStep, 10]; conf.minHeight = 100; } else { diff --git a/zeppelin-web/src/index.html b/zeppelin-web/src/index.html index 05a349f2cfa..46c48517e4d 100644 --- a/zeppelin-web/src/index.html +++ b/zeppelin-web/src/index.html @@ -147,6 +147,10 @@ + + + + diff --git a/zeppelin-web/test/karma.conf.js b/zeppelin-web/test/karma.conf.js index f9f03a413fa..9eefa1b44b5 100644 --- a/zeppelin-web/test/karma.conf.js +++ b/zeppelin-web/test/karma.conf.js @@ -65,6 +65,10 @@ module.exports = function(config) { 'bower_components/handsontable/dist/handsontable.js', 'bower_components/moment-duration-format/lib/moment-duration-format.js', 'bower_components/select2/dist/js/select2.js', + 'bower_components/sigma.js/build/sigma.min.js', + 'bower_components/sigma.js/build/plugins/sigma.renderers.edgeLabels.min.js', + 'bower_components/sigma.js/build/plugins/sigma.plugins.dragNodes.min.js', + 'bower_components/sigma.js/build/plugins/sigma.renderers.parallelEdges.min.js', 'bower_components/angular-mocks/angular-mocks.js', // endbower 'src/app/app.js', diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java index 414aed2a5bb..d612858c463 100644 --- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java +++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java @@ -537,7 +537,8 @@ public static enum ConfVars { + "org.apache.zeppelin.jdbc.JDBCInterpreter," + "org.apache.zeppelin.hbase.HbaseInterpreter," + "org.apache.zeppelin.bigquery.BigQueryInterpreter," - + "org.apache.zeppelin.beam.BeamInterpreter"), + + "org.apache.zeppelin.beam.BeamInterpreter," + + "org.apache.zeppelin.neo4j.Neo4jCypherInterpreter"), ZEPPELIN_INTERPRETER_JSON("zeppelin.interpreter.setting", "interpreter-setting.json"), ZEPPELIN_INTERPRETER_DIR("zeppelin.interpreter.dir", "interpreter"), ZEPPELIN_INTERPRETER_LOCALREPO("zeppelin.interpreter.localRepo", "local-repo"), From acc4307dd1b7f90dedf76ecb8a4b27e93658399f Mon Sep 17 00:00:00 2001 From: conker84 Date: Wed, 26 Oct 2016 23:40:47 +0200 Subject: [PATCH 02/98] Added the graph footer to provide detailed data information --- .../notebook/paragraph/paragraph-graph.html | 8 +++-- .../paragraph/paragraph.controller.js | 30 +++++++++++++++---- 2 files changed, 30 insertions(+), 8 deletions(-) diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph-graph.html b/zeppelin-web/src/app/notebook/paragraph/paragraph-graph.html index 1a7f1acf39c..e904a06aebb 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph-graph.html +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph-graph.html @@ -52,7 +52,7 @@ -
@@ -71,9 +71,11 @@
-
+
-
+
diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js index a6c0a7e642a..d892cc43c34 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js @@ -25,6 +25,7 @@ '$location', '$timeout', '$compile', + '$interpolate', '$http', '$q', 'websocketMsgSrv', @@ -34,7 +35,7 @@ ]; function ParagraphCtrl($scope, $rootScope, $route, $window, $routeParams, $location, - $timeout, $compile, $http, $q, websocketMsgSrv, + $timeout, $compile, $interpolate, $http, $q, websocketMsgSrv, baseUrlSrv, ngToast, saveAsService) { var ANGULAR_FUNCTION_OBJECT_NAME_PREFIX = '_Z_ANGULAR_FUNC_'; $scope.parentNote = null; @@ -140,16 +141,23 @@ }; var setNetwork = function(result, refresh) { + var getContainerHeight = function(networkId) { + var footerHeight = angular.element('#' + networkId + '_footer').height() || 40; + var headerHeight = angular.element('#' + networkId + '_header').height() || 40; + var height = $scope.paragraph.config.graph.height || 400; + return height - footerHeight - headerHeight - 10; + }; var retryRenderer = function() { var networkId = 'p' + $scope.paragraph.id + '_network'; var height = $scope.paragraph.config.graph.height || 400; - if (angular.element('#' + networkId + '_container').length) { + if (angular.element('#' + networkId).length) { try { - angular.element('#' + networkId).height(height - 50); - angular.element('#' + networkId + '_container').height(height); + angular.element('#' + networkId).height(height); + angular.element('#' + networkId + '_container').height(getContainerHeight(networkId)); //destroy sigmajs to force reinitialization. var Sigma = $window.sigma; if ($scope.sigma) { + $scope.sigma.unbind('clickNode'); Sigma.plugins.dragNodes($scope.sigma, $scope.sigma.renderers[0]).unbind('drop'); $scope.sigma.graph.clear(); $scope.sigma.kill(); @@ -176,7 +184,7 @@ } $scope.sigma = new Sigma({ renderer: { - container: networkId, + container: networkId + '_container', type: 'canvas' }, graph: result.graph, @@ -199,6 +207,18 @@ }; $scope.setGraphMode('network', true, false); }); + $scope.sigma.bind('clickNode', function(event) { + var html = [$interpolate(['
  • graph_id: {{id}}
  • ', + '
  • graph_label: {{defaultLabel}}
  • '].join(''))(event.data.node)]; + html = html.concat(_.map(event.data.node.data, function(v, k) { + return $interpolate('
  • {{field}}: {{value}}
  • ')({field: k, value: v}); + })); + angular.element('#' + networkId + '_footer') + .find('.list-inline') + .empty() + .append(html.join('')); + angular.element('#' + networkId + '_container').height(getContainerHeight(networkId)); + }); } catch (err) { console.log('Network rendering error %o', err); } From 72f12036047e8fdd518712527380730ac139988d Mon Sep 17 00:00:00 2001 From: conker84 Date: Thu, 27 Oct 2016 00:15:39 +0200 Subject: [PATCH 03/98] Code clean --- .../paragraph/paragraph.controller.js | 29 ++++++++++++++----- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js index d892cc43c34..ec268841228 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js @@ -147,6 +147,15 @@ var height = $scope.paragraph.config.graph.height || 400; return height - footerHeight - headerHeight - 10; }; + var renderFooter = function(type, entity) { + var obj = {id: entity.id, label: entity.defaultLabel || entity.label, type: type}; + var html = [$interpolate(['
  • {{type}}_id: {{id}}
  • ', + '
  • {{type}}_type: {{label}}
  • '].join(''))(obj)]; + html = html.concat(_.map(entity.data, function(v, k) { + return $interpolate('
  • {{field}}: {{value}}
  • ')({field: k, value: v}); + })); + return html.join(''); + }; var retryRenderer = function() { var networkId = 'p' + $scope.paragraph.id + '_network'; var height = $scope.paragraph.config.graph.height || 400; @@ -192,7 +201,9 @@ minNodeSize: 0, maxNodeSize: 0, minEdgeSize: 0, - maxEdgeSize: 0 + maxEdgeSize: 0, + enableEdgeHovering: true, + edgeHoverExtremities: true } }); if ($scope.asIframe) { @@ -208,15 +219,19 @@ $scope.setGraphMode('network', true, false); }); $scope.sigma.bind('clickNode', function(event) { - var html = [$interpolate(['
  • graph_id: {{id}}
  • ', - '
  • graph_label: {{defaultLabel}}
  • '].join(''))(event.data.node)]; - html = html.concat(_.map(event.data.node.data, function(v, k) { - return $interpolate('
  • {{field}}: {{value}}
  • ')({field: k, value: v}); - })); + console.log('clickNode %o', event); + angular.element('#' + networkId + '_footer') + .find('.list-inline') + .empty() + .append(renderFooter('node', event.data.node)); + angular.element('#' + networkId + '_container').height(getContainerHeight(networkId)); + }); + $scope.sigma.bind('clickEdge', function(event) { + console.log('clickEdge %o', event); angular.element('#' + networkId + '_footer') .find('.list-inline') .empty() - .append(html.join('')); + .append(renderFooter('edge', event.data.edge)); angular.element('#' + networkId + '_container').height(getContainerHeight(networkId)); }); } catch (err) { From bd1b0f23fd1b5e35e5a3c125fff50abccebc4ba3 Mon Sep 17 00:00:00 2001 From: conker84 Date: Sat, 29 Oct 2016 15:37:30 +0200 Subject: [PATCH 04/98] Changes: Move the GraphResult to zeppelin-intepreter package in order to use as base api for other graph databases. Added neo4.md to the documentation. Prevented the nodes overlap. --- docs/interpreter/neo4j.md | 105 ++++++++++++ neo4j/pom.xml | 11 +- .../graph/neo4j/Neo4jCypherInterpreter.java | 10 +- .../neo4j/utils/Neo4jConversionUtils.java | 10 +- .../main/resources/interpreter-setting.json | 6 +- .../neo4j/Neo4jCypherInterpreterTest.java | 9 +- .../zeppelin/graph/utils/GraphUtilsTest.java | 1 + notebook/2A94M5J1Z/note.json | 162 ++++++++++++++---- .../interpreter/graph}/GraphEntity.java | 5 +- .../interpreter/graph}/GraphResult.java | 19 +- .../interpreter/graph}/GraphUtils.java | 5 +- .../zeppelin/interpreter/graph}/Node.java | 5 +- .../interpreter/graph}/Relationship.java | 8 +- zeppelin-web/bower.json | 6 +- .../paragraph/paragraph.controller.js | 59 ++++--- zeppelin-web/src/index.html | 4 +- zeppelin-web/test/karma.conf.js | 4 +- 17 files changed, 320 insertions(+), 109 deletions(-) create mode 100644 docs/interpreter/neo4j.md rename {neo4j/src/main/java/org/apache/zeppelin/graph/model => zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph}/GraphEntity.java (91%) rename {neo4j/src/main/java/org/apache/zeppelin/graph/model => zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph}/GraphResult.java (78%) rename {neo4j/src/main/java/org/apache/zeppelin/graph/utils => zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph}/GraphUtils.java (91%) rename {neo4j/src/main/java/org/apache/zeppelin/graph/model => zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph}/Node.java (92%) rename {neo4j/src/main/java/org/apache/zeppelin/graph/model => zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph}/Relationship.java (90%) diff --git a/docs/interpreter/neo4j.md b/docs/interpreter/neo4j.md new file mode 100644 index 00000000000..76fdb3742ee --- /dev/null +++ b/docs/interpreter/neo4j.md @@ -0,0 +1,105 @@ +--- +layout: page +title: "Neo4j Interpreter for Apache Zeppelin" +description: "Neo4j is a highly scalable, native graph database purpose-built to leverage not only data but also its relationships." +group: interpreter +--- + +{% include JB/setup %} + +# Neo4j Interpreter for Apache Zeppelin + +
    + +## Overview +[Neo4j](https://neo4j.com/) is a highly scalable, native graph database purpose-built to leverage not only data but also its relationships. +Neo4j's native graph storage and processing engine deliver constant, real-time performance, helping enterprises build intelligent applications to meet today’s evolving data challenges. + + + + + + + + + + + + +
    NameClassDescription
    %neo4jNeo4jCypherInterpreterEnable the Neo4j intepreter
    + +## Configuration +The Neo4j interpreter can be configured with properties provided by Zeppelin. + + + + + + + + + + + + + + + + + + + + + + + + + + +
    PropertyDefaultDescription
    neo4j.urlbolt://localhost:7687The Neo4j's BOLT url.
    neo4j.userneo4jThe Neo4j user name.
    neo4j.passwordneo4jThe Neo4j user password.
    neo4j.max.concurrency50Max concurrency call to Neo4j server.
    + +## Enabling the Neo4j Interpreter +In a notebook, to enable the **Neo4j** interpreter, click the **Gear** icon and select **neo4j**. + +## Using the Neo4j Interpreter +In a paragraph, use `%neo4j` to select the Neo4j interpreter and then write your cypher query. + +```cypher +MATCH (u:User)-[p:POSTS]->(t:Tweet) RETURN u, p, t; +``` + +The default visualization show the query result as a table. In the tabular result if nodes and relationships are return from the query, they will show together as rows +![Simple cypher query tabular visualization](../assets/themes/zeppelin/img/docs-img/neo4j-tabular-result.png) + +If the query result has almost a node the **Network** button will be enabled so you can switch to the graph visualization +![Network button on chart bar](../assets/themes/zeppelin/img/docs-img/zeppelin-switch-chart-network.png) + +![Simple cypher query network visualization](../assets/themes/zeppelin/img/docs-img/neo4j-newtwork-result.png) + +Leveraging the **settings** button you can customize your graph visualization, a list of nodes will be displayed and by click on each one you can set the property which will be used as node label. +![Simple cypher query network visualization](../assets/themes/zeppelin/img/docs-img/zeppelin-network-display-customization) + +### Apply Zeppelin Dynamic Forms +You can leverage [Zeppelin Dynamic Form](../manual/dynamicform.html) inside your queries. You can use both the `text input` and `select form` parameterization features. + +```cypher +match (n:User{screen_name: '${user_name}'})-[r]-(m:Tweet) return n, r, m limit 10 +``` +![Example of query with text input](../assets/themes/zeppelin/img/docs-img/neo4j-zeppelin-form-text-input.png) + +```cypher +match (n:User{screen_name: '${user_name=santand84,santand84|individue|maurofer79}'})-[r]-(m:Tweet) return n, r, m limit 10 +``` +![Example of query with select box](../assets/themes/zeppelin/img/docs-img/neo4j-zeppelin-form-select.png) diff --git a/neo4j/pom.xml b/neo4j/pom.xml index 417dc4e225c..4392e5fe3fd 100644 --- a/neo4j/pom.xml +++ b/neo4j/pom.xml @@ -36,7 +36,6 @@ 1.0.4 3.0.4 3.0.4 - 2.8.2 @@ -52,12 +51,6 @@ neo4j-java-driver ${neo4j.driver.version} - - - com.fasterxml.jackson.core - jackson-databind - ${jackson.databind.version} - org.slf4j @@ -68,13 +61,13 @@ org.slf4j slf4j-log4j12 - + junit junit test - + org.neo4j.test neo4j-harness diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreter.java b/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreter.java index be6af02223f..2c002a29c82 100644 --- a/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreter.java +++ b/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreter.java @@ -29,14 +29,14 @@ import java.util.regex.Pattern; import org.apache.commons.lang3.StringUtils; -import org.apache.zeppelin.graph.model.GraphResult; -import org.apache.zeppelin.graph.model.Relationship.Type; import org.apache.zeppelin.graph.neo4j.utils.Neo4jConversionUtils; -import org.apache.zeppelin.graph.utils.GraphUtils; import org.apache.zeppelin.interpreter.Interpreter; import org.apache.zeppelin.interpreter.InterpreterContext; import org.apache.zeppelin.interpreter.InterpreterResult; import org.apache.zeppelin.interpreter.InterpreterResult.Code; +import org.apache.zeppelin.interpreter.graph.GraphResult; +import org.apache.zeppelin.interpreter.graph.GraphUtils; +import org.apache.zeppelin.interpreter.graph.Relationship.Type; import org.apache.zeppelin.resource.Resource; import org.apache.zeppelin.resource.ResourcePool; import org.apache.zeppelin.scheduler.Scheduler; @@ -244,8 +244,8 @@ private InterpreterResult renderTable(Set cols, List> lines private InterpreterResult renderGraph(Set nodes, Set relationships) throws JsonProcessingException { logger.info("Executing renderGraph method"); - List nodesList = new ArrayList<>(); - List relsList = new ArrayList<>(); + List nodesList = new ArrayList<>(); + List relsList = new ArrayList<>(); Map relCount = new HashMap<>(); for (Relationship rel : relationships) { Type type = null; diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/utils/Neo4jConversionUtils.java b/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/utils/Neo4jConversionUtils.java index 59ea20a9fd4..ac4bebfb45d 100644 --- a/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/utils/Neo4jConversionUtils.java +++ b/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/utils/Neo4jConversionUtils.java @@ -21,7 +21,7 @@ import java.util.Map; import java.util.Set; -import org.apache.zeppelin.graph.model.Relationship.Type; +import org.apache.zeppelin.interpreter.graph.Relationship.Type; import org.neo4j.driver.v1.types.Node; import org.neo4j.driver.v1.types.Relationship; @@ -31,7 +31,7 @@ public class Neo4jConversionUtils { private Neo4jConversionUtils() {} - public static org.apache.zeppelin.graph.model.Node toZeppelinNode(Node n, + public static org.apache.zeppelin.interpreter.graph.Node toZeppelinNode(Node n, Map graphLabels) { Set labels = new LinkedHashSet<>(); String firstLabel = null; @@ -42,13 +42,13 @@ public static org.apache.zeppelin.graph.model.Node toZeppelinNode(Node n, labels.add(label); } String color = graphLabels.get(firstLabel); - return new org.apache.zeppelin.graph.model.Node(n.id(), n.asMap(), + return new org.apache.zeppelin.interpreter.graph.Node(n.id(), n.asMap(), labels, color); } - public static org.apache.zeppelin.graph.model.Relationship + public static org.apache.zeppelin.interpreter.graph.Relationship toZeppelinRelationship(Relationship r, Type type, int count) { - return new org.apache.zeppelin.graph.model.Relationship(r.id(), r.asMap(), + return new org.apache.zeppelin.interpreter.graph.Relationship(r.id(), r.asMap(), r.startNodeId(), r.endNodeId(), r.type(), type, count); } diff --git a/neo4j/src/main/resources/interpreter-setting.json b/neo4j/src/main/resources/interpreter-setting.json index 8d2189b3574..1e7bb30ef9c 100644 --- a/neo4j/src/main/resources/interpreter-setting.json +++ b/neo4j/src/main/resources/interpreter-setting.json @@ -14,19 +14,19 @@ "envName": null, "propertyName": "neo4j.user", "defaultValue": "neo4j", - "description": "The Neo4j user name" + "description": "The Neo4j user name." }, "neo4j.password": { "envName": null, "propertyName": "neo4j.password", "defaultValue": "neo4j", - "description": "The Neo4j user password" + "description": "The Neo4j user password." }, "neo4j.max.concurrency": { "envName": null, "propertyName": "neo4j.max.concurrency", "defaultValue": "50", - "description": "Max concurrency call to Neo4j server" + "description": "Max concurrency call from Zeppelin to Neo4j server." } } } diff --git a/neo4j/src/test/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreterTest.java b/neo4j/src/test/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreterTest.java index 2506f2f9a2a..baf1f593a46 100644 --- a/neo4j/src/test/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreterTest.java +++ b/neo4j/src/test/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreterTest.java @@ -25,8 +25,6 @@ import org.apache.zeppelin.display.AngularObjectRegistry; import org.apache.zeppelin.display.GUI; -import org.apache.zeppelin.graph.model.GraphResult; -import org.apache.zeppelin.graph.neo4j.Neo4jCypherInterpreter; import org.apache.zeppelin.interpreter.InterpreterContext; import org.apache.zeppelin.interpreter.InterpreterContextRunner; import org.apache.zeppelin.interpreter.InterpreterGroup; @@ -34,6 +32,7 @@ import org.apache.zeppelin.interpreter.InterpreterOutputListener; import org.apache.zeppelin.interpreter.InterpreterResult; import org.apache.zeppelin.interpreter.InterpreterResult.Code; +import org.apache.zeppelin.interpreter.graph.GraphResult; import org.apache.zeppelin.resource.LocalResourcePool; import org.apache.zeppelin.user.AuthenticationInfo; import org.junit.After; @@ -46,7 +45,7 @@ import com.fasterxml.jackson.core.JsonParseException; import com.fasterxml.jackson.databind.JsonMappingException; -import com.fasterxml.jackson.databind.ObjectMapper; +import com.google.gson.Gson; @FixMethodOrder(MethodSorters.NAME_ASCENDING) public class Neo4jCypherInterpreterTest { @@ -57,7 +56,7 @@ public class Neo4jCypherInterpreterTest { private ServerControls server; - private static final ObjectMapper jsonMapper = new ObjectMapper(); + private static final Gson gson = new Gson(); private static final String LABEL_PERSON = "Person"; private static final String REL_KNOWS = "KNOWS"; @@ -118,7 +117,7 @@ public void testRenderTable() { public void testRenderNetwork() throws JsonParseException, JsonMappingException, IOException { interpreter.open(); InterpreterResult result = interpreter.interpret("MATCH (n)-[r:KNOWS]-(m) RETURN n, r, m LIMIT 1", context); - GraphResult.Graph graph = jsonMapper.readValue(result.message(), GraphResult.Graph.class); + GraphResult.Graph graph = gson.fromJson(result.message(), GraphResult.Graph.class); assertEquals(2, graph.getNodes().size()); assertEquals(1, graph.getEdges().size()); assertEquals(1, graph.getLabels().size()); diff --git a/neo4j/src/test/java/org/apache/zeppelin/graph/utils/GraphUtilsTest.java b/neo4j/src/test/java/org/apache/zeppelin/graph/utils/GraphUtilsTest.java index e8f2af863e1..edf591af9ef 100644 --- a/neo4j/src/test/java/org/apache/zeppelin/graph/utils/GraphUtilsTest.java +++ b/neo4j/src/test/java/org/apache/zeppelin/graph/utils/GraphUtilsTest.java @@ -20,6 +20,7 @@ import java.util.regex.Pattern; +import org.apache.zeppelin.interpreter.graph.GraphUtils; import org.junit.FixMethodOrder; import org.junit.Test; import org.junit.runners.MethodSorters; diff --git a/notebook/2A94M5J1Z/note.json b/notebook/2A94M5J1Z/note.json index 5687785d99c..aa62888a37a 100644 --- a/notebook/2A94M5J1Z/note.json +++ b/notebook/2A94M5J1Z/note.json @@ -2,6 +2,8 @@ "paragraphs": [ { "text": "%md\n## Welcome to Zeppelin.\n##### This is a live tutorial, you can run the code yourself. (Shift-Enter to Run)", + "user": "anonymous", + "dateUpdated": "Oct 26, 2016 9:43:34 PM", "config": { "colWidth": 12.0, "graph": { @@ -11,14 +13,20 @@ "keys": [], "values": [], "groups": [], - "scatter": {} + "scatter": {}, + "network": { + "nodes": {}, + "properties": {} + } }, - "editorHide": true + "editorHide": true, + "enabled": true }, "settings": { "params": {}, "forms": {} }, + "apps": [], "jobName": "paragraph_1423836981412_-1007008116", "id": "20150213-231621_168813393", "result": { @@ -27,15 +35,16 @@ "msg": "\u003ch2\u003eWelcome to Zeppelin.\u003c/h2\u003e\n\u003ch5\u003eThis is a live tutorial, you can run the code yourself. (Shift-Enter to Run)\u003c/h5\u003e\n" }, "dateCreated": "Feb 13, 2015 11:16:21 PM", - "dateStarted": "Apr 1, 2015 9:11:09 PM", - "dateFinished": "Apr 1, 2015 9:11:10 PM", + "dateStarted": "Oct 26, 2016 9:43:34 PM", + "dateFinished": "Oct 26, 2016 9:43:45 PM", "status": "FINISHED", "progressUpdateIntervalMs": 500 }, { "title": "Load data into table", "text": "import org.apache.commons.io.IOUtils\nimport java.net.URL\nimport java.nio.charset.Charset\n\n// Zeppelin creates and injects sc (SparkContext) and sqlContext (HiveContext or SqlContext)\n// So you don\u0027t need create them manually\n\n// load bank data\nval bankText \u003d sc.parallelize(\n IOUtils.toString(\n new URL(\"https://s3.amazonaws.com/apache-zeppelin/tutorial/bank/bank.csv\"),\n Charset.forName(\"utf8\")).split(\"\\n\"))\n\ncase class Bank(age: Integer, job: String, marital: String, education: String, balance: Integer)\n\nval bank \u003d bankText.map(s \u003d\u003e s.split(\";\")).filter(s \u003d\u003e s(0) !\u003d \"\\\"age\\\"\").map(\n s \u003d\u003e Bank(s(0).toInt, \n s(1).replaceAll(\"\\\"\", \"\"),\n s(2).replaceAll(\"\\\"\", \"\"),\n s(3).replaceAll(\"\\\"\", \"\"),\n s(5).replaceAll(\"\\\"\", \"\").toInt\n )\n).toDF()\nbank.registerTempTable(\"bank\")", - "dateUpdated": "Jan 14, 2016 7:58:56 PM", + "user": "anonymous", + "dateUpdated": "Oct 26, 2016 9:43:34 PM", "config": { "colWidth": 12.0, "graph": { @@ -45,7 +54,11 @@ "keys": [], "values": [], "groups": [], - "scatter": {} + "scatter": {}, + "network": { + "nodes": {}, + "properties": {} + } }, "title": true, "enabled": true, @@ -55,26 +68,29 @@ "params": {}, "forms": {} }, + "apps": [], "jobName": "paragraph_1423500779206_-1502780787", "id": "20150210-015259_1403135953", "result": { "code": "SUCCESS", "type": "TEXT", - "msg": "import org.apache.commons.io.IOUtils\nimport java.net.URL\nimport java.nio.charset.Charset\nbankText: org.apache.spark.rdd.RDD[String] \u003d ParallelCollectionRDD[32] at parallelize at \u003cconsole\u003e:65\ndefined class Bank\nbank: org.apache.spark.sql.DataFrame \u003d [age: int, job: string, marital: string, education: string, balance: int]\n" + "msg": "\nimport org.apache.commons.io.IOUtils\n\nimport java.net.URL\n\nimport java.nio.charset.Charset\n\nbankText: org.apache.spark.rdd.RDD[String] \u003d ParallelCollectionRDD[23] at parallelize at \u003cconsole\u003e:36\n\ndefined class Bank\n\nbank: org.apache.spark.sql.DataFrame \u003d [age: int, job: string, marital: string, education: string, balance: int]\n" }, "dateCreated": "Feb 10, 2015 1:52:59 AM", - "dateStarted": "Jul 3, 2015 1:43:40 PM", - "dateFinished": "Jul 3, 2015 1:43:45 PM", + "dateStarted": "Oct 26, 2016 9:43:34 PM", + "dateFinished": "Oct 26, 2016 9:43:43 PM", "status": "FINISHED", "progressUpdateIntervalMs": 500 }, { "text": "%sql \nselect age, count(1) value\nfrom bank \nwhere age \u003c 30 \ngroup by age \norder by age", + "user": "anonymous", + "dateUpdated": "Oct 26, 2016 9:55:12 PM", "config": { "colWidth": 4.0, "graph": { "mode": "multiBarChart", - "height": 300.0, + "height": 234.0, "optionOpen": false, "keys": [ { @@ -102,13 +118,20 @@ "index": 1.0, "aggr": "sum" } + }, + "network": { + "nodes": {}, + "properties": {} } - } + }, + "enabled": true, + "editorMode": "ace/mode/sql" }, "settings": { "params": {}, "forms": {} }, + "apps": [], "jobName": "paragraph_1423500782552_-1439281894", "id": "20150210-015302_1492795503", "result": { @@ -117,13 +140,15 @@ "msg": "age\tvalue\n19\t4\n20\t3\n21\t7\n22\t9\n23\t20\n24\t24\n25\t44\n26\t77\n27\t94\n28\t103\n29\t97\n" }, "dateCreated": "Feb 10, 2015 1:53:02 AM", - "dateStarted": "Jul 3, 2015 1:43:17 PM", - "dateFinished": "Jul 3, 2015 1:43:23 PM", + "dateStarted": "Oct 26, 2016 9:43:35 PM", + "dateFinished": "Oct 26, 2016 9:43:47 PM", "status": "FINISHED", "progressUpdateIntervalMs": 500 }, { "text": "%sql \nselect age, count(1) value \nfrom bank \nwhere age \u003c ${maxAge\u003d30} \ngroup by age \norder by age", + "user": "anonymous", + "dateUpdated": "Oct 26, 2016 9:43:34 PM", "config": { "colWidth": 4.0, "graph": { @@ -156,8 +181,13 @@ "index": 1.0, "aggr": "sum" } + }, + "network": { + "nodes": {}, + "properties": {} } - } + }, + "enabled": true }, "settings": { "params": { @@ -171,6 +201,7 @@ } } }, + "apps": [], "jobName": "paragraph_1423720444030_-1424110477", "id": "20150212-145404_867439529", "result": { @@ -179,13 +210,15 @@ "msg": "age\tvalue\n19\t4\n20\t3\n21\t7\n22\t9\n23\t20\n24\t24\n25\t44\n26\t77\n27\t94\n28\t103\n29\t97\n30\t150\n31\t199\n32\t224\n33\t186\n34\t231\n" }, "dateCreated": "Feb 12, 2015 2:54:04 PM", - "dateStarted": "Jul 3, 2015 1:43:28 PM", - "dateFinished": "Jul 3, 2015 1:43:29 PM", + "dateStarted": "Oct 26, 2016 9:43:44 PM", + "dateFinished": "Oct 26, 2016 9:43:50 PM", "status": "FINISHED", "progressUpdateIntervalMs": 500 }, { "text": "%sql \nselect age, count(1) value \nfrom bank \nwhere marital\u003d\"${marital\u003dsingle,single|divorced|married}\" \ngroup by age \norder by age", + "user": "anonymous", + "dateUpdated": "Oct 26, 2016 9:43:35 PM", "config": { "colWidth": 4.0, "graph": { @@ -218,8 +251,13 @@ "index": 1.0, "aggr": "sum" } + }, + "network": { + "nodes": {}, + "properties": {} } - } + }, + "enabled": true }, "settings": { "params": { @@ -244,6 +282,7 @@ } } }, + "apps": [], "jobName": "paragraph_1423836262027_-210588283", "id": "20150213-230422_1600658137", "result": { @@ -252,13 +291,15 @@ "msg": "age\tvalue\n19\t4\n20\t3\n21\t7\n22\t9\n23\t17\n24\t13\n25\t33\n26\t56\n27\t64\n28\t78\n29\t56\n30\t92\n31\t86\n32\t105\n33\t61\n34\t75\n35\t46\n36\t50\n37\t43\n38\t44\n39\t30\n40\t25\n41\t19\n42\t23\n43\t21\n44\t20\n45\t15\n46\t14\n47\t12\n48\t12\n49\t11\n50\t8\n51\t6\n52\t9\n53\t4\n55\t3\n56\t3\n57\t2\n58\t7\n59\t2\n60\t5\n66\t2\n69\t1\n" }, "dateCreated": "Feb 13, 2015 11:04:22 PM", - "dateStarted": "Jul 3, 2015 1:43:33 PM", - "dateFinished": "Jul 3, 2015 1:43:34 PM", + "dateStarted": "Oct 26, 2016 9:43:48 PM", + "dateFinished": "Oct 26, 2016 9:43:52 PM", "status": "FINISHED", "progressUpdateIntervalMs": 500 }, { "text": "%md\n## Congratulations, it\u0027s done.\n##### You can create your own notebook in \u0027Notebook\u0027 menu. Good luck!", + "user": "anonymous", + "dateUpdated": "Oct 26, 2016 9:43:35 PM", "config": { "colWidth": 12.0, "graph": { @@ -268,14 +309,20 @@ "keys": [], "values": [], "groups": [], - "scatter": {} + "scatter": {}, + "network": { + "nodes": {}, + "properties": {} + } }, - "editorHide": true + "editorHide": true, + "enabled": true }, "settings": { "params": {}, "forms": {} }, + "apps": [], "jobName": "paragraph_1423836268492_216498320", "id": "20150213-230428_1231780373", "result": { @@ -284,13 +331,15 @@ "msg": "\u003ch2\u003eCongratulations, it\u0027s done.\u003c/h2\u003e\n\u003ch5\u003eYou can create your own notebook in \u0027Notebook\u0027 menu. Good luck!\u003c/h5\u003e\n" }, "dateCreated": "Feb 13, 2015 11:04:28 PM", - "dateStarted": "Apr 1, 2015 9:12:18 PM", - "dateFinished": "Apr 1, 2015 9:12:18 PM", + "dateStarted": "Oct 26, 2016 9:43:44 PM", + "dateFinished": "Oct 26, 2016 9:43:45 PM", "status": "FINISHED", "progressUpdateIntervalMs": 500 }, { "text": "%md\n\nAbout bank data\n\n```\nCitation Request:\n This dataset is public available for research. The details are described in [Moro et al., 2011]. \n Please include this citation if you plan to use this database:\n\n [Moro et al., 2011] S. Moro, R. Laureano and P. Cortez. Using Data Mining for Bank Direct Marketing: An Application of the CRISP-DM Methodology. \n In P. Novais et al. (Eds.), Proceedings of the European Simulation and Modelling Conference - ESM\u00272011, pp. 117-121, Guimarães, Portugal, October, 2011. EUROSIS.\n\n Available at: [pdf] http://hdl.handle.net/1822/14838\n [bib] http://www3.dsi.uminho.pt/pcortez/bib/2011-esm-1.txt\n```", + "user": "anonymous", + "dateUpdated": "Oct 26, 2016 9:43:35 PM", "config": { "colWidth": 12.0, "graph": { @@ -300,14 +349,20 @@ "keys": [], "values": [], "groups": [], - "scatter": {} + "scatter": {}, + "network": { + "nodes": {}, + "properties": {} + } }, - "editorHide": true + "editorHide": true, + "enabled": true }, "settings": { "params": {}, "forms": {} }, + "apps": [], "jobName": "paragraph_1427420818407_872443482", "id": "20150326-214658_12335843", "result": { @@ -316,29 +371,74 @@ "msg": "\u003cp\u003eAbout bank data\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eCitation Request:\n This dataset is public available for research. The details are described in [Moro et al., 2011]. \n Please include this citation if you plan to use this database:\n\n [Moro et al., 2011] S. Moro, R. Laureano and P. Cortez. Using Data Mining for Bank Direct Marketing: An Application of the CRISP-DM Methodology. \n In P. Novais et al. (Eds.), Proceedings of the European Simulation and Modelling Conference - ESM\u00272011, pp. 117-121, Guimarães, Portugal, October, 2011. EUROSIS.\n\n Available at: [pdf] http://hdl.handle.net/1822/14838\n [bib] http://www3.dsi.uminho.pt/pcortez/bib/2011-esm-1.txt\n\u003c/code\u003e\u003c/pre\u003e\n" }, "dateCreated": "Mar 26, 2015 9:46:58 PM", - "dateStarted": "Jul 3, 2015 1:44:56 PM", - "dateFinished": "Jul 3, 2015 1:44:56 PM", + "dateStarted": "Oct 26, 2016 9:43:45 PM", + "dateFinished": "Oct 26, 2016 9:43:45 PM", "status": "FINISHED", "progressUpdateIntervalMs": 500 }, { - "config": {}, + "text": "", + "user": "anonymous", + "dateUpdated": "Oct 26, 2016 9:43:36 PM", + "config": { + "colWidth": 12.0, + "graph": { + "mode": "table", + "height": 300.0, + "optionOpen": false, + "keys": [], + "values": [], + "groups": [], + "scatter": {}, + "network": { + "nodes": {}, + "properties": {} + } + }, + "enabled": true + }, "settings": { "params": {}, "forms": {} }, + "apps": [], "jobName": "paragraph_1435955447812_-158639899", "id": "20150703-133047_853701097", + "result": { + "code": "SUCCESS", + "type": "TEXT", + "msg": "" + }, "dateCreated": "Jul 3, 2015 1:30:47 PM", - "status": "READY", + "dateStarted": "Oct 26, 2016 9:43:50 PM", + "dateFinished": "Oct 26, 2016 9:43:52 PM", + "status": "FINISHED", "progressUpdateIntervalMs": 500 } ], "name": "Zeppelin Tutorial", "id": "2A94M5J1Z", "angularObjects": { - "2B6FF8NNU": [], - "2B67PH63Z": [] + "2C2NGYJAY:shared_process": [], + "2BZMEJ9C7:shared_process": [], + "2BZXMCJ74:shared_process": [], + "2C14DFS9Z:shared_process": [], + "2C2DW6TCY:shared_process": [], + "2C2KYUBUK:shared_process": [], + "2C2AN4YQM:shared_process": [], + "2BYNBHTEF:shared_process": [], + "2C2XY636R:shared_process": [], + "2BYDTH74Q:shared_process": [], + "2C1QZJR1V:shared_process": [], + "2C2T72BH8:shared_process": [], + "2BYZ71A1P:shared_process": [], + "2C28TWZKJ:shared_process": [], + "2C1ZQWU4X:shared_process": [], + "2BZF5DNYH:shared_process": [], + "2BY5FXH41:shared_process": [], + "2C2U52VQY:shared_process": [], + "2BYR1HVQK:shared_process": [], + "2BYYRSS5N:shared_process": [] }, "config": { "looknfeel": "default" diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphEntity.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/GraphEntity.java similarity index 91% rename from neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphEntity.java rename to zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/GraphEntity.java index b2aca3fbd6d..2e5b27c3368 100644 --- a/neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphEntity.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/GraphEntity.java @@ -15,13 +15,12 @@ * limitations under the License. */ -package org.apache.zeppelin.graph.model; +package org.apache.zeppelin.interpreter.graph; import java.util.Map; /** - * - * @author a.santurbano + * The base network entity * */ public abstract class GraphEntity { diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphResult.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/GraphResult.java similarity index 78% rename from neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphResult.java rename to zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/GraphResult.java index 8524bd8266f..02fb014b1e4 100644 --- a/neo4j/src/main/java/org/apache/zeppelin/graph/model/GraphResult.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/GraphResult.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.zeppelin.graph.model; +package org.apache.zeppelin.interpreter.graph; import java.util.Collection; import java.util.Map; @@ -23,19 +23,16 @@ import org.apache.zeppelin.interpreter.InterpreterResult; -import com.fasterxml.jackson.core.JsonProcessingException; -import com.fasterxml.jackson.databind.ObjectMapper; +import com.google.gson.Gson; + /** - * - * @author a.santurbano + * The intepreter result template for Networks * */ public class GraphResult extends InterpreterResult { - private static final long serialVersionUID = -7269726748696145519L; /** - * - * @author a.santurbano + * The Graph structure parsed from the front-end * */ public static class Graph { @@ -92,10 +89,10 @@ public void setTypes(Set types) { } - private static final ObjectMapper jsonMapper = new ObjectMapper(); + private static final Gson gson = new Gson(); - public GraphResult(Code code, Graph response) throws JsonProcessingException { - super(code, Type.NETWORK, jsonMapper.writeValueAsString(response)); + public GraphResult(Code code, Graph graphObject) { + super(code, Type.NETWORK, gson.toJson(graphObject)); } } diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/utils/GraphUtils.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/GraphUtils.java similarity index 91% rename from neo4j/src/main/java/org/apache/zeppelin/graph/utils/GraphUtils.java rename to zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/GraphUtils.java index 36edafae3b7..59c51619471 100644 --- a/neo4j/src/main/java/org/apache/zeppelin/graph/utils/GraphUtils.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/GraphUtils.java @@ -15,11 +15,10 @@ * limitations under the License. */ -package org.apache.zeppelin.graph.utils; +package org.apache.zeppelin.interpreter.graph; /** - * - * @author a.santurbano + * An utiliy class for networks * */ public class GraphUtils { diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/model/Node.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/Node.java similarity index 92% rename from neo4j/src/main/java/org/apache/zeppelin/graph/model/Node.java rename to zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/Node.java index 018b2eeca7f..12620b6b4a0 100644 --- a/neo4j/src/main/java/org/apache/zeppelin/graph/model/Node.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/Node.java @@ -15,14 +15,13 @@ * limitations under the License. */ -package org.apache.zeppelin.graph.model; +package org.apache.zeppelin.interpreter.graph; import java.util.Map; import java.util.Set; /** - * - * @author a.santurbano + * The Zeppelin Node Entity * */ public class Node extends GraphEntity { diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/model/Relationship.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/Relationship.java similarity index 90% rename from neo4j/src/main/java/org/apache/zeppelin/graph/model/Relationship.java rename to zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/Relationship.java index d52fbae4e1b..26fd8f187e9 100644 --- a/neo4j/src/main/java/org/apache/zeppelin/graph/model/Relationship.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/graph/Relationship.java @@ -15,13 +15,12 @@ * limitations under the License. */ -package org.apache.zeppelin.graph.model; +package org.apache.zeppelin.interpreter.graph; import java.util.Map; /** - * - * @author a.santurbano + * The Zeppelin Relationship entity * */ public class Relationship extends GraphEntity { @@ -35,8 +34,7 @@ public class Relationship extends GraphEntity { private int count; /** - * - * @author a.santurbano + * The relationship shape type * */ public enum Type{arrow, curvedArrow} diff --git a/zeppelin-web/bower.json b/zeppelin-web/bower.json index b637e82c95a..eb6288cd41b 100644 --- a/zeppelin-web/bower.json +++ b/zeppelin-web/bower.json @@ -34,7 +34,7 @@ "moment-duration-format": "^1.3.0", "select2": "^4.0.3", "github-markdown-css": "^2.4.0", - "sigma.js": "sigma#^1.1.0" + "sigma.js": "https://github.com/jacomyal/sigma.js.git#master" }, "devDependencies": { "angular-mocks": "1.5.0" @@ -68,8 +68,10 @@ "sigma.js": { "main": [ "build/sigma.min.js", - "build/plugins/sigma.renderers.edgeLabels.min.js", + "build/plugins/sigma.plugins.animate.min.js", + "build/plugins/sigma.layout.noverlap.min.js", "build/plugins/sigma.plugins.dragNodes.min.js", + "build/plugins/sigma.renderers.edgeLabels.min.js", "build/plugins/sigma.renderers.parallelEdges.min.js" ], "version": "1.1.0", diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js index ec268841228..04026d1e1f9 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js @@ -147,14 +147,21 @@ var height = $scope.paragraph.config.graph.height || 400; return height - footerHeight - headerHeight - 10; }; - var renderFooter = function(type, entity) { + var renderFooterOnClick = function(event) { + var type = 'node' in event.data ? 'node' : 'edge'; + var entity = event.data[type]; + var networkId = event.data.renderer.container.id.replace('_container', ''); var obj = {id: entity.id, label: entity.defaultLabel || entity.label, type: type}; var html = [$interpolate(['
  • {{type}}_id: {{id}}
  • ', '
  • {{type}}_type: {{label}}
  • '].join(''))(obj)]; html = html.concat(_.map(entity.data, function(v, k) { return $interpolate('
  • {{field}}: {{value}}
  • ')({field: k, value: v}); })); - return html.join(''); + angular.element('#' + networkId + '_footer') + .find('.list-inline') + .empty() + .append(html.join('')); + angular.element('#' + networkId + '_container').height(getContainerHeight(networkId)); }; var retryRenderer = function() { var networkId = 'p' + $scope.paragraph.id + '_network'; @@ -167,6 +174,7 @@ var Sigma = $window.sigma; if ($scope.sigma) { $scope.sigma.unbind('clickNode'); + $scope.sigma.unbind('edgeNode'); Sigma.plugins.dragNodes($scope.sigma, $scope.sigma.renderers[0]).unbind('drop'); $scope.sigma.graph.clear(); $scope.sigma.kill(); @@ -197,15 +205,15 @@ type: 'canvas' }, graph: result.graph, - settings: {//see https://github.com/jacomyal/sigma.js/wiki/Settings#rescale-settings + settings: { minNodeSize: 0, maxNodeSize: 0, minEdgeSize: 0, - maxEdgeSize: 0, - enableEdgeHovering: true, - edgeHoverExtremities: true + maxEdgeSize: 0 } }); + $scope.sigma.bind('clickNode', renderFooterOnClick); + $scope.sigma.bind('clickEdge', renderFooterOnClick); if ($scope.asIframe) { return; } @@ -218,22 +226,29 @@ }; $scope.setGraphMode('network', true, false); }); - $scope.sigma.bind('clickNode', function(event) { - console.log('clickNode %o', event); - angular.element('#' + networkId + '_footer') - .find('.list-inline') - .empty() - .append(renderFooter('node', event.data.node)); - angular.element('#' + networkId + '_container').height(getContainerHeight(networkId)); - }); - $scope.sigma.bind('clickEdge', function(event) { - console.log('clickEdge %o', event); - angular.element('#' + networkId + '_footer') - .find('.list-inline') - .empty() - .append(renderFooter('edge', event.data.edge)); - angular.element('#' + networkId + '_container').height(getContainerHeight(networkId)); - }); + var nooverlapConf = { + nodeMargin: 0.5, + scaleNodes: 1.05, + gridSize: 75, + easing: 'quadraticInOut', + duration: 0 + }; + if (!nodeIds.length) { + var overlapListener = $scope.sigma.configNoverlap(nooverlapConf); + overlapListener.bind('stop', function(event) { + console.log(event); + $scope.sigma.graph.nodes() + .forEach(function(node) { + $scope.paragraph.config.graph.network.nodes[node.id] = { + x: node.x, + y: node.y + }; + }); + overlapListener.unbind('stop'); + }); + $scope.sigma.startNoverlap(); + //on nooverlap stop i get each node position and overwrite the configuration + } } catch (err) { console.log('Network rendering error %o', err); } diff --git a/zeppelin-web/src/index.html b/zeppelin-web/src/index.html index 46c48517e4d..81eb70811aa 100644 --- a/zeppelin-web/src/index.html +++ b/zeppelin-web/src/index.html @@ -148,8 +148,10 @@ - + + + diff --git a/zeppelin-web/test/karma.conf.js b/zeppelin-web/test/karma.conf.js index 9eefa1b44b5..ad17950c2bc 100644 --- a/zeppelin-web/test/karma.conf.js +++ b/zeppelin-web/test/karma.conf.js @@ -66,8 +66,10 @@ module.exports = function(config) { 'bower_components/moment-duration-format/lib/moment-duration-format.js', 'bower_components/select2/dist/js/select2.js', 'bower_components/sigma.js/build/sigma.min.js', - 'bower_components/sigma.js/build/plugins/sigma.renderers.edgeLabels.min.js', + 'bower_components/sigma.js/build/plugins/sigma.plugins.animate.min.js', + 'bower_components/sigma.js/build/plugins/sigma.layout.noverlap.min.js', 'bower_components/sigma.js/build/plugins/sigma.plugins.dragNodes.min.js', + 'bower_components/sigma.js/build/plugins/sigma.renderers.edgeLabels.min.js', 'bower_components/sigma.js/build/plugins/sigma.renderers.parallelEdges.min.js', 'bower_components/angular-mocks/angular-mocks.js', // endbower From 251fba0a16ded784be33995ba83abe0cb23f388a Mon Sep 17 00:00:00 2001 From: conker84 Date: Sat, 29 Oct 2016 15:43:02 +0200 Subject: [PATCH 05/98] Added doc images --- .../img/docs-img/neo4j-form-select.png | Bin 0 -> 95350 bytes .../img/docs-img/neo4j-network-result.png | Bin 0 -> 96632 bytes .../img/docs-img/neo4j-tabular-result.png | Bin 0 -> 73421 bytes .../neo4j-zeppelin-form-text-input.png | Bin 0 -> 101231 bytes .../zeppelin-network-display-customization.png | Bin 0 -> 95349 bytes .../docs-img/zeppelin-switch-chart-network.png | Bin 0 -> 2228 bytes 6 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/assets/themes/zeppelin/img/docs-img/neo4j-form-select.png create mode 100644 docs/assets/themes/zeppelin/img/docs-img/neo4j-network-result.png create mode 100644 docs/assets/themes/zeppelin/img/docs-img/neo4j-tabular-result.png create mode 100644 docs/assets/themes/zeppelin/img/docs-img/neo4j-zeppelin-form-text-input.png create mode 100644 docs/assets/themes/zeppelin/img/docs-img/zeppelin-network-display-customization.png create mode 100644 docs/assets/themes/zeppelin/img/docs-img/zeppelin-switch-chart-network.png diff --git a/docs/assets/themes/zeppelin/img/docs-img/neo4j-form-select.png b/docs/assets/themes/zeppelin/img/docs-img/neo4j-form-select.png new file mode 100644 index 0000000000000000000000000000000000000000..f86325b0b8fd16a2025efdf367154396faa3b977 GIT binary patch literal 95350 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 Q4$x#iD84U#r|12D0PZ@N(*OVf literal 0 HcmV?d00001 diff --git a/docs/assets/themes/zeppelin/img/docs-img/neo4j-network-result.png b/docs/assets/themes/zeppelin/img/docs-img/neo4j-network-result.png new file mode 100644 index 0000000000000000000000000000000000000000..f68e2b7aef8961f272bc921d010c42f79e10c05d GIT binary patch literal 96632 zcmdS9WmjBHw>69e2u>ilCAhmg!QI`1ySoQ>cXxMphu{*lac!h=_m|w)b)R!SJb&OF zJ-U0;?%KPmdexe>)?718URDed4hIel3=C01Tv!nd3`z(L48rv@^v9L%BY}dCFX*3A zV!~kWe_y#>B?%u_VC}>;9Kpbl2LHanlcj)(tJD$4BuQ? z-ATyS+S=I0>7xk-Cgfmj;ACv{&DGq=?3oD7|B5uT15Vn;urH7p2VL`{XVFF5>>5fZ=a=}m6dVtWN4LIm|m+|GumJ0_$rEN z8!K#Z?lkOIN!XFg8VKaoF2H^wd=B^q**{_T@XDAu{h93W#HYi(V|zk->9%`g3A`HE ziL6TObDbg?i1Op}_kTZj_)LjazWv+C=Y~5v?@ipUcH;v4{3CQM6l%d=jOko
    yfFuyIZGR`%FZn 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

    N)9=5mZ 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 literal 0 HcmV?d00001 diff --git a/docs/assets/themes/zeppelin/img/docs-img/neo4j-tabular-result.png b/docs/assets/themes/zeppelin/img/docs-img/neo4j-tabular-result.png new file mode 100644 index 0000000000000000000000000000000000000000..247740bfdb42ac1781fcc737da47b3dac2271e50 GIT binary patch literal 73421 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 literal 0 HcmV?d00001 diff --git a/docs/assets/themes/zeppelin/img/docs-img/neo4j-zeppelin-form-text-input.png b/docs/assets/themes/zeppelin/img/docs-img/neo4j-zeppelin-form-text-input.png new file mode 100644 index 0000000000000000000000000000000000000000..730322f1118211a47dda6a88cc3df5783bbdbdae GIT binary patch literal 101231 zcmc$`V|ZL$*ajM>anm$*}fwsG?6`@Zw<{5#iNv*(&M zd+)VoJ-+W}CPY?R1PLAo9t;c&Nla8o9t;dx84L`<^%Km;$S*^H_s0v2zJ!Pn*!y3P zthU0~j}bTjw6?S~ zvU2!%3kD`=XQby~WJu&}=3q)BA|@qkNNWTO21W!XCd9AkvV5}Ut{LaJ{_u`j=!*)= zk35|9DU=T<2Pq{;yi9qKlR?UCZeIEIb^0vy2>H1nq4dnkxC7mpbsaS1x@V#S>V&Zhll6~Cr5|Gm8wL&um3an@$rhNuF`+!{B?H9VxzTA&0)n z9z^sbIvG7t%6P1$*~HZm6XSR!YOUu!Bhf~_Q{-ziisS?;AzPzq@wh^hO|kbG(2OAV9oSB5(uY`E=8j8x@P_e=xP| ze$v6r%~54;Z4xBIOO^}S=3<(}x&^NN;0nx9WYZ18FZU!i3&OuccDgyv&C(%+&h{dB z2{Qh)Zx{M-H0l^>w3>BcoS#P3CTSClqvVTh84@1w&%E8kU0wXYKj!;#cX!7&xJ!M; z#LZH5w7tVOx(HSfg+OZKgG(!oytq|fSWk2Kj)&;n>!`fS4CXyYG8sKe+$}seHj zJP&WoRw%Bqx!r!+L_wB*C(ePhTQjk;m)(WFAir6z-cpP$~hY+ZoWx&p>2PPKHXTlo6T3Ybd*OUStTb&kIE6dG^E^{%#WDif zWF3pOm3Bmp>>o{Q5*a0nQ*_&FX2p1-SMaJ9Q?h7;hi9;@v5grr-TVG$V33LeA z*)eQ?xsq62UB%+@aH(8wT;^|9ERm?r>Xc)JN<2rm>-^RD$PZD9eCO0eg&wDp%&;)K zJulJ~Q%sV~&hr_Q0)SaE%KRZgwySfl57)JQpeu7D_!f?E)iokDwDu&>yEL?Q_7g8> z>v}&GMhP&f!!>fPK^yIyII!ZJl=4|ztj+Ft99Is7R9wmN-O&5aZXEK(_4@F7bje); zM)2=&5KK$8HHsO6H>q8ihhyW=#rhzoZ_Lv@>HcMtbE0s>sq@8=i?@a~TnD@u4wr2c zYYeyY*Y=Es3Qr%9W`d~(ZGiZ;=YGhwrt#$d^>n!&@FBy5OV9usK7K@QF0(RdbCb{1 zl#+mez~kw#5RbE>|e+Ig4)_jTviqmt6X!;+0s@}16i;|qRSR$4HnQR@re`fO(74x}Qf7R-8jBJQKJ$k;8 zdC;$c9k08>s&*ridj+t$S5&=vg{Swb*uP%n1d>r8UytrfSqTuV3nAO`Idg2>oygwu z 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νbpw=LphyU(?1zhKyo>`H*fw4t( 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 peIQofR*0; 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 a8>x%}`xwyY;883G$f@J!?23@ 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%0DnA_*G9^erV&;1EPgWX zNf*%wXdP_!2gFY?fkea04_;|yMOKbATzC-KSLRyhCwFMe&7^dlS5OFfg%z`0Ho_ii zkiC@|MAj^9H-z|~Tamekzw&22P-`|+|_ zxEAZ}gz(2*6s9PnH=Ud0gGO4_odP%K_8m#izNN62oWoHX_FNBV*c$~?a6PPmXTJ4M zQjVVJ5|qtNqw>|w5q++tIOnCZ(b zcT(&qylvFI-;*w(s!3iqrOROJ;R`#Tm!%-yjZA-qvtDc30GxsB0h7Kopk~MyS=QTF zT*0kJge`Dki_E&)U{dx&MfhxPfaYb#$E5@(7JyV4Set#;!;0eqi`hvTU2Vb#oI3Jq zs7e;O51$TwZaWs1zWfcgP`r1P_s5Yf_^*xPnHn31lw$n1!b6Q>m6q)~@bs^3B0ne{-l^;eo;tEw57$PSeKo9W_%_6TjH{)r+_`cF z4mZJ3|cMAjrw@}fQqPd#-nY1Xxb5)8}Vqm3i+O=}B|>|J5= z9rC~BRupuqj@n;fx5h%c8||LHII{h6sCbadhkM7~PX=yKQk`;h-QEf3?Mw;xp;M|O zgBq^`0*gF7T0s%D!%-kT@;XD?UrTCDQz}bi203i~!jomUqv=0~!QNV|<#~(u2wrv9 zm4S4L;xIc1*Q&Heeo_?uvQfX+8r^KONui&&-9>Q;IfM`y|I#565 zbTJh2!(82|BB?MpBR{%(tj$_z=>TUQERHFITO>8SN@C>2skbJ)EIBvwE^kzZ`gn14 z409x2scM{0m@l#cHg6uzs}05%7S2MhG;&X!%oS@%T5C7npU=ApHC>-IouFV! zem-q%toE)yJ(E(U#232VyD%aF*Jx%7@wm*}XkAsY%Cyr=dN96FPQ8ke1pf5gj0jXJ zPBUo{9}W95Dc7ClX_$U#a8Ph`s5Gj*$JymhKsWcG03KKxIH1?1cIPd-in~~0wW#R~ zuP9{hXDCWBcqMOQVJ8L-LmmTXOup%YUoy@udht7b8-|bm%y6poj8WKT`Ay}J{g$Z> zE*r$rGTngI+yXn&;{HZc!44iqikSmbMEfO2hGGeG_rdi|4~M-NIY zuHW8kw5-x~Mt_{>GqTZW_?sF$dB4J5GQ6hXP1+IcE!^I_(bi6?QzeXkCARZu=>YcX zL|%%}703B>xU27dd+FxxtM`I6|7dX>r6BNdr3LJ{TqSfD6Z)ZN+53S^-u(K0JDzeL zbHu^sYxFUNXz+{y8LOyr*XJ*Dkq%E!0@w_tzkxY$pLwx+)Jm-Q7c2WKo}uU8aITtwj{4KswtUp^n9K0ia^UhzU# ziPlCIZh$_b4C0>QUY{Vzk8HmuzNdLzXFWb1eu@Ad-}`fLtbBWE{_w#^^pc_U#`qdo zVR$#&^s%$sQ$M*W$m86@hq<$EBSiwprkCPx@A}Dh3E&P_3esx^eE0?_YXsCPTHcAC;Dq23GS#1_3cl}r~V)zb5 z2ZHQ?gBMk;^J^Tla~ghUG*=Jq89$qU)qs}PbJCg>z(Y9T`kMa!LsBE@#W9nxz>Qkq zDLOZ_451O3tZY;A5 zcA2b&H3!B_kT`>?kI#CmOK3;%vHJZ+$2?aHK>m8>9h11|1{1-m$c^|-lW~#5eaOvi-N5~LDrVS9 z8rcJ56vHRE6V}4$TNSMbleP2>v3IjFy{`DBZlSx!RXM7$QUH|x+09Po5cXB~# z!@rYHdszSB2fLC!aPf>n>(W)-qH}vKxc|mvEx676d^97BN}bVc8dENM4z~!@EYxfX}KSyo&cB7q=nz*B{TFySh=bW@;br z5uZSZ*ydR?8lJ}=o_Kts0vR;=L7d;^VM8Na1SB)J-OB*iLrj$e-Gz3VK(CGoC&(Hf zr5e6=l396#MY!4a`zB!&($Y>vi z7JWE8lk83Cna$u8@q;t|aA15{p)S2A$l^}&PKI7?vq0SK*MiMtj$M*(+M?1_8mph> zscsu;qxXNKf9dtnjRdopt+@1WO}^e8k9zeaZ$8&5cVl_)XzW_+cPv`5cHZTG-;{N{ z^K}-u9F<45|9H=Ocrv&2zD~>~GQ;Nn$ESs?!-bEF_4gyOfrd4I83o`H>IuWi>FA?# zJ#4%`M-;xUWid~dtF2mDU%N(BIbPY!F%K0b2(s9IaufWce^3Owl`V<EGk zxFR<`cH?gXT)&$89@)+6#PvdcC2cs<%=jL&;Y`4~b;05UKB=9!7Yj3Z@=N489Fa3b z_aVtbVVYU?DZ>5oQw{d!N0UwD0&1tvd{rv$S?d=C02s4dPFk_lH#cB7@Z~lyYLL5NyLL&eP+Il^g#O1N$1b^5`(E zs~;m*`tsGBZpSDDs|#}bJvI*>tO?@Y`ob@cvYf=0}9d`QQo?t3g z+%1dhlZ((`B-d`N>*P0{(6#emH;)@rEU(PgrhD4RM`4rk3jSsaMzFjyI+E zD?q$A0iYnSyBqde4%eFV=I~aP2ISZ}uldevW}uNc(7}Eq6_S*fF#NsGxphNfYn&7& zer5qY1de61zx%yQd6gp6FYjU}8V#v9D)ruD-VS+WE91yKg+1V%q{o@|q$MEQ+$teb6T94Hl$ZN_;DGu5u09e-l8q5QeMD z*Kn@Jz%s0|uN?imYy|N0?6@}LCO+LP$0`jVi{Ofde^*cqW~IS9p7QmVjvN@%Zcn7o zUI$NmO@2YKlbsw(hQERv#%~=DDS5v?`+fN8Cju;VVQ zV-L@jYy?_fa4&+`Aj^m{yQ@R#({n5N;m=5w56VEh82q;fwzZFq(V8;Wi-3Oi^xdLg z!Z>TFz4pz^PuIt{ap+4JLp9SaqL!VMy%91ed_ABKDNt)wk3@?l*x(YDpKF|p83=8l zO8>MWjWHJ{Ug1MDBa`oHzE31&N-09h8IHwb_!Z=yEbarX44*N$7j%565@(NDEWFf~ z7bWRqG$qHEu5invTxjM$6;;V(KTYa5f9P9VWUAoU&2Ynvxqtlhuykur<-&iQlvLU5 zVBAy@dd{DG`3u|k**#i3>p7_4mlwzN`*~q;sRQTd0+T0aU-xa%6qK_5EG!deeaQnc z139IU!FM(gPMYzx-GKG7T(#TlBRW{W&(3_$mB13grQN7O{Brw_3}@TMrYWS9lMK3Ij%7&u3xnd9;=i+8eDRts9#Q z_65J3aF^=|m{FPk)v|*^;{VIPNc+EA?-;TFXApd-AIkq{&IU(?^dD0Dww#c^N5}t> z0h>OhRc@<1KH7i(1pM>N#seD3pS!~qx4HOMF(mANhaSL(PF+My=n!lD=PO~ye1gH< z)WWl*pwNlvgf;g7xX%c$p#6M1trAx8-!DVj2%gsb#^4of2dP(b&LCeCv6-$mY?y>SnS*56KK`#c|8 zgJctiAKv$!ZV=}Z+d~8JJ}x#^zD8%hhAt(`@5(|L-mIc!ICr!Pg%c&5!Fez$S^ttR z{3{FcU2%MItOT)fY_E%{b00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY4#WTe4#WYKD-Ig~000McNliru;0hfL4IG;!myiGe03B&m zSad^gZEa<4bN~PV002XBWnpw>WFU8GbZ8()Nlj2>E@cM*00+` zz(4*=DCf|Y$d-upX8REDp+n2f7HW@mbM(+H)E-=X>Fk60qHt}NrMd^!2P2#cS3OEo zj@3QTyd*ElzF0Vw9?5p0*_SMZ^kL0Icf=*)k)UNPCF8$)P`ll_YQ4+EP<|f>OfnOG zlke~M`OWwHb4*G$H#avC2n6pWr6L3Zfe>6E5D38q0zolRzSoZR^>yaw=UHA}W_^8K zL`opohq<}ABWbs`ww80}&QVcOaX7(sT?e49u8w2JjurgG6Nv<>suo4(6~noRcocU` z=H}+8t*tF+o12@PJb(V2Cr_Sm;lhQ(3BJ6%jG`#mY&J1H3j}XLSy>q+B_*#OR*Jpz zIDY&%>2&(=DLNqJ76=Y0cxh>=<$~`>zOk`EX=y2IYis|T-~xf*@Pe0@mlxy;zP7e@ zU^_x^fgn$mmX=acQSmBOw~~#G4N6K%SY2Hef(rzNpuD`Cva&KNDk>-~weBy_JL&n( zwh&w(C;&UP_f8#dWji|=!$Iwc8(j)S&M?S{FbFJ?-O?*~E}i7*f_dO^HirvEmh%1~ z4LynBRH(KWo7HJ%pJtKHLg@GHgs4QlIl@4jN|j}e8t6#_r&5jm$UlCP1xdkzEMyojAg!IO-&v=cDj=Gb}$ru;PJd35WMG4xjd z!Gfn__#;Uaj~92frNfD7UpM^^Qkc}!H`THI`U;8rom@-w5%xD@%_-$S0o>|p5*+dNe>>Gk-l1!&0+?V9-Sj{rwX(!$m zX0+MrXf5*S?j3?l@AJpY4b+@mVm3U$-+nlW_W5TtoXSrtc}dYt`4;2RDA8z?@mntb zbZ=`rI(`e+)nTThQKHc)hOdHIpuv@i`Oq{UvCPkUnLr>wB5SSOlin73AEfsDtY*BQ z+Y!A$m##^=wNKExrb!oNl39(aLM#v{K;OJE70wLN+dc7WasdY}w}(cT!*aPF{`C&e zF8lbR{{~kY6cnX_D>wT2qW43R1ARPPEF!^iNH`@4Ns@3#687zF$tmHG98^gXl2nDG zkm-?;C6&rz6nMC1CWq*cA3Tjcorp1Oz1>U>^%FN?socHuq{@xn5BVnWEh~9wD?h8~ z@ew+;5OyG!PLXwJBsqN4)gEb~;;o*;c{;4$=GzAj4WHYJ_4{r;+yxl*1Jy*e(EAu zxWji#7il8UJ<>mK^b7ZDN|kFifx=)k?|&sa<}X zU@B=`UwZ((_C%L`d513F2~Q==KTR3N!+E?mwO@%ux- z>v9*Yh+;O8#nJ4g8H1Sb6S|YP2uC!$;V>PtZ21^D`C^$RU_WJ^!4Mcsbx!Xc|% zQdLy-5~}>J3vNek>){t1-zB-Nu?tUKah&yoc*@eU$;@V1sQie5;0R6CfL)<0@)&=i zJ6X6SBNud@wV|}MkPQ5b#XT~w@4viD^4ew26vrZ)le0G8TP?EXY*!hy zGMH733`X5xlaLr>Yg3{z8l?jplGI2v+F@;pUfs;_s7`xlfRy>Bp^Gbq$hiZnQpWr9qCObCT7;a*q%{L!+fi_NRkCp(5XMrdwqi2-FNx; z&#g3^If)H07r*D>L-{L!ef>+Tr5-HH)$X;_yme8jfp+mjtDm_6BE0$C2 zikIMYBhwQBzKZJ@fb*;ekJiYg?c2KSb}PdX;#2K#(co$iK`qbGkQ^k2G_*s#$wkLK zAMQL~2psBJ(lZlG9B!7x<8@ndgOKevZ4CRK@hJQyeRqG{x|6NuGA){qp_6E5D38q0)Y@*AP@+_1pH$m;4Ui;Igmoz6XvDcRiPdso-j*U@zy!!X2;4+;baa8y4&c>45d z&YwTO=Z_EWDY!r&c*kpSfj}Sx7YGDGaDhNjX#NY*ZvX{Td->u30000 Date: Sat, 29 Oct 2016 15:45:27 +0200 Subject: [PATCH 06/98] doc fix --- ...rm-select.png => neo4j-zeppelin-form-select.png} | Bin docs/interpreter/neo4j.md | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) rename docs/assets/themes/zeppelin/img/docs-img/{neo4j-form-select.png => neo4j-zeppelin-form-select.png} (100%) diff --git a/docs/assets/themes/zeppelin/img/docs-img/neo4j-form-select.png b/docs/assets/themes/zeppelin/img/docs-img/neo4j-zeppelin-form-select.png similarity index 100% rename from docs/assets/themes/zeppelin/img/docs-img/neo4j-form-select.png rename to docs/assets/themes/zeppelin/img/docs-img/neo4j-zeppelin-form-select.png diff --git a/docs/interpreter/neo4j.md b/docs/interpreter/neo4j.md index 76fdb3742ee..e5e4e4eaf01 100644 --- a/docs/interpreter/neo4j.md +++ b/docs/interpreter/neo4j.md @@ -86,10 +86,10 @@ The default visualization show the query result as a table. In the tabular resul If the query result has almost a node the **Network** button will be enabled so you can switch to the graph visualization ![Network button on chart bar](../assets/themes/zeppelin/img/docs-img/zeppelin-switch-chart-network.png) -![Simple cypher query network visualization](../assets/themes/zeppelin/img/docs-img/neo4j-newtwork-result.png) +![Simple cypher query network visualization](../assets/themes/zeppelin/img/docs-img/neo4j-network-result.png) Leveraging the **settings** button you can customize your graph visualization, a list of nodes will be displayed and by click on each one you can set the property which will be used as node label. -![Simple cypher query network visualization](../assets/themes/zeppelin/img/docs-img/zeppelin-network-display-customization) +![Simple cypher query network visualization](../assets/themes/zeppelin/img/docs-img/zeppelin-network-display-customization.png) ### Apply Zeppelin Dynamic Forms You can leverage [Zeppelin Dynamic Form](../manual/dynamicform.html) inside your queries. You can use both the `text input` and `select form` parameterization features. From c8249b6c45c1b5957957ea3cac13d8fb4c17ef5d Mon Sep 17 00:00:00 2001 From: conker84 Date: Tue, 1 Nov 2016 14:43:07 +0100 Subject: [PATCH 07/98] Removed Jackson Dependencies --- .../apache/zeppelin/graph/neo4j/Neo4jCypherInterpreter.java | 4 +--- .../zeppelin/graph/neo4j/Neo4jCypherInterpreterTest.java | 5 +---- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreter.java b/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreter.java index 2c002a29c82..ade58decf16 100644 --- a/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreter.java +++ b/neo4j/src/main/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreter.java @@ -61,8 +61,6 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.fasterxml.jackson.core.JsonProcessingException; - /** * Neo4j interpreter for Zeppelin. */ @@ -242,7 +240,7 @@ private InterpreterResult renderTable(Set cols, List> lines } private InterpreterResult renderGraph(Set nodes, - Set relationships) throws JsonProcessingException { + Set relationships) { logger.info("Executing renderGraph method"); List nodesList = new ArrayList<>(); List relsList = new ArrayList<>(); diff --git a/neo4j/src/test/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreterTest.java b/neo4j/src/test/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreterTest.java index baf1f593a46..64e1f011b2d 100644 --- a/neo4j/src/test/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreterTest.java +++ b/neo4j/src/test/java/org/apache/zeppelin/graph/neo4j/Neo4jCypherInterpreterTest.java @@ -18,7 +18,6 @@ import static org.junit.Assert.assertEquals; -import java.io.IOException; import java.util.HashMap; import java.util.LinkedList; import java.util.Properties; @@ -43,8 +42,6 @@ import org.neo4j.harness.ServerControls; import org.neo4j.harness.TestServerBuilders; -import com.fasterxml.jackson.core.JsonParseException; -import com.fasterxml.jackson.databind.JsonMappingException; import com.google.gson.Gson; @FixMethodOrder(MethodSorters.NAME_ASCENDING) @@ -114,7 +111,7 @@ public void testRenderTable() { } @Test - public void testRenderNetwork() throws JsonParseException, JsonMappingException, IOException { + public void testRenderNetwork() { interpreter.open(); InterpreterResult result = interpreter.interpret("MATCH (n)-[r:KNOWS]-(m) RETURN n, r, m LIMIT 1", context); GraphResult.Graph graph = gson.fromJson(result.message(), GraphResult.Graph.class); From d5997778c2edf9b75cef66d36ec95bf5a14fc5bb Mon Sep 17 00:00:00 2001 From: conker84 Date: Tue, 1 Nov 2016 15:04:59 +0100 Subject: [PATCH 08/98] reactivate "goog-webfont-dl" task --- zeppelin-web/Gruntfile.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zeppelin-web/Gruntfile.js b/zeppelin-web/Gruntfile.js index 7fa1078d42f..9257111d8b9 100644 --- a/zeppelin-web/Gruntfile.js +++ b/zeppelin-web/Gruntfile.js @@ -556,7 +556,7 @@ module.exports = function(grunt) { 'clean:dist', 'shell', 'wiredep', - //'goog-webfont-dl', + 'goog-webfont-dl', 'useminPrepare', 'concurrent:dist', 'postcss', From 9aefddfc5a95fb469f21cec1a968cc917020dea5 Mon Sep 17 00:00:00 2001 From: conker84 Date: Wed, 2 Nov 2016 14:47:48 +0100 Subject: [PATCH 09/98] Added tests and changed network icon --- .../paragraph/paragraph-chart-selector.html | 2 +- zeppelin-web/test/spec/controllers/paragraph.js | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html b/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html index 0dad92f270e..497adbc6645 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html @@ -57,7 +57,7 @@ ng-if="paragraph.result.type == 'NETWORK'" ng-class="{'active': isGraphMode('network')}" ng-click="setGraphMode('network', true)" - tooltip="Network" tooltip-placement="bottom"> + tooltip="Network" tooltip-placement="bottom">

    diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js index 40b744ba1a2..0e5e4aec453 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js @@ -185,8 +185,20 @@ } result.graph.nodes .forEach(function(node) { - var selected = $scope.paragraph.config.graph.network.properties[node.defaultLabel].selected; + node.defaultLabel = node.defaultLabel || node.label || ''; + var properties = $scope.paragraph.config.graph.network.properties[node.defaultLabel] || {}; + var selected = properties.selected || 'id'; node.label = (selected in node ? node[selected] : node.data[selected]) + ''; + node.x = node.x || Math.random(); + node.y = node.y || Math.random(); + node.size = node.size || 10; + }); + result.graph.edges + .forEach(function(edge) { + edge.size = edge.size || 4; + edge.type = edge.type || 'arrow'; + edge.color = edge.color || '#D3D3D3'; + edge.count = edge.count || 1; }); var nodeIds = Object.keys($scope.paragraph.config.graph.network.nodes) .map(function(id) { @@ -209,6 +221,7 @@ }, graph: result.graph, settings: { + enableEdgeHovering: true, minNodeSize: 0, maxNodeSize: 0, minEdgeSize: 0, @@ -239,7 +252,6 @@ if (!nodeIds.length) { var overlapListener = $scope.sigma.configNoverlap(nooverlapConf); overlapListener.bind('stop', function(event) { - console.log(event); $scope.sigma.graph.nodes() .forEach(function(node) { $scope.paragraph.config.graph.network.nodes[node.id] = { @@ -1053,7 +1065,7 @@ var baseCols = _.map(baseColumnNames, function(col) { return col.name; }); var rows = []; var array = []; - var keys = _.map(entities, function(elem) { return Object.keys(elem.data); }); + var keys = _.map(entities, function(elem) { return Object.keys(elem.data || {}); }); keys = _.flatten(keys); keys = _.uniq(keys).filter(function(key) { return baseCols.indexOf(key) === -1; @@ -1065,11 +1077,12 @@ var entity = entities[i]; var col = []; var col2 = []; + entity.data = entity.data || {}; for (var j = 0; j < columnNames.length; j++) { var name = columnNames[j].name; var value = name in entity && internalFieldsToJump.indexOf(name) === -1 ? entity[name] : entity.data[name]; - var parsedValue = $scope.parseTableCell(value === undefined ? '' : value); + var parsedValue = $scope.parseTableCell(value === null || value === undefined ? '' : value); col.push(parsedValue); col2.push({key: name, value: parsedValue}); } @@ -1522,7 +1535,11 @@ var baseCols = ['id', 'label']; var properties = {}; $scope.paragraph.result.graph.nodes.forEach(function(node) { - var hasKey = node.label in properties; + var hasLabel = 'label' in node && node.label !== ''; + if (!hasLabel) { + return; + } + var hasKey = hasLabel && node.label in properties; var keys = _.uniq(Object.keys(node.data || {}) .concat(hasKey ? properties[node.label].keys : baseCols)); if (!hasKey) { @@ -1530,7 +1547,8 @@ } properties[node.label].keys = keys; }); - $scope.paragraph.config.graph.network.properties = properties; + $scope.paragraph.config.graph.network.properties = Object.keys(properties).length ? + properties : []; }; var pivot = function(data) { From 956a53735b8e69ed92815e8e8a84587af88997ac Mon Sep 17 00:00:00 2001 From: conker84 Date: Tue, 8 Nov 2016 20:27:01 +0100 Subject: [PATCH 17/98] Changes: Updated documentation Fixed perfomance issues --- .../img/screenshots/display_network.png | Bin 0 -> 16850 bytes .../img/screenshots/display_network1.png | Bin 0 -> 17355 bytes .../img/screenshots/display_network2.png | Bin 0 -> 34376 bytes docs/displaysystem/basicdisplaysystem.md | 47 ++++++ .../notebook/paragraph/paragraph-graph.html | 13 +- .../paragraph/paragraph.controller.js | 148 +++++++++--------- 6 files changed, 124 insertions(+), 84 deletions(-) create mode 100644 docs/assets/themes/zeppelin/img/screenshots/display_network.png create mode 100644 docs/assets/themes/zeppelin/img/screenshots/display_network1.png create mode 100644 docs/assets/themes/zeppelin/img/screenshots/display_network2.png diff --git a/docs/assets/themes/zeppelin/img/screenshots/display_network.png b/docs/assets/themes/zeppelin/img/screenshots/display_network.png new file mode 100644 index 0000000000000000000000000000000000000000..5804a97f1267c9ba4a28780bb372f629938f9f65 GIT binary patch literal 16850 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 literal 0 HcmV?d00001 diff --git a/docs/assets/themes/zeppelin/img/screenshots/display_network2.png b/docs/assets/themes/zeppelin/img/screenshots/display_network2.png new file mode 100644 index 0000000000000000000000000000000000000000..92e5c869c55521b6724ca64769ee6fd7ce3c6c32 GIT binary patch literal 34376 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 +## Network + +Zeppelin can render a network following this sample json structure: + +```json +{"nodes" : [{"id" : 1}, {"id" : 2}], "edges" : [{"source" : 2, "target" : 1, "id" : 1 }]} +``` + +You can leverage this visualization by using the `%network` directive + + + + + +The network visualization can also leverage the Property Graph with a json structure like this: + +```json +{ + "nodes": [ + { + "id": 1, + "label": "User", + "data": {"fullname": "Andrea Santurbano"} + }, + { + "id": 2, + "label": "User", + "data": {"fullname": "Moon soo Lee"} + } + ], + "edges": [ + { + "source": 2, + "target": 1, + "id": 1, + "label": "HELPS", + "data": { + "project" : "Zeppelin", + "githubUrl": "https://github.com/apache/zeppelin/pull/1582" + } + } + ] +} +``` + + + > **Note :** Display system is backend independent. diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph-graph.html b/zeppelin-web/src/app/notebook/paragraph/paragraph-graph.html index b5eb6c8df56..a9c38f0dfe3 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph-graph.html +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph-graph.html @@ -13,8 +13,8 @@ -->
    + ng-show="getGraphMode()=='network' && paragraph.result.graph.nodes.length > 0">
    -
      -
    • Nodes +
        +
      • Nodes {{paragraph.result.graph.nodes.length}}: @@ -75,7 +74,7 @@
    -