c ++中的代码:
#include <iostream>
#include <map>
#include <string>
using namespace std;
struct keyInfo
{
string Key1;
string Key2;
bool keyInfo::operator <(keyInfo &A) const
{ return ((this->Key1<A.Key1)&&(this->Key2<A.Key2)); }
};
struct valueInfo
{
int value1;
int value2;
int value3;
valueInfo(const int A,const int B,const int C) :
value1(A),value2(B),value3(C) {}
};
typedef std::map<keyInfo, valueInfo> MapTYPE;
int main()
{
MapTYPE TMap;
keyInfo K;
K.Key1="main";
K.Key2="i";
valueInfo V(-2,-3322,9000);
TMap.insert(MapTYPE::value_type(K,V));
MapTYPE::iterator It1=TMap.find(K);
It1=TMap.find(K);
if(It1!=TMap.end())
std::cout<<"Success(K): "<<It1->second.value2<<std::endl;
keyInfo E;
E.Key1="main";
E.Key2="j";
//TMap.insert(std::pair<keyInfo,valueInfo>(E,V));
MapTYPE::iterator It2=TMap.find(E);
if (It2!=TMap.end())
std::cout<<"Success(E): …Run Code Online (Sandbox Code Playgroud) 我们可以在R-igraph中改变文本大小和节点大小吗?如果是,我们可以使用什么属性?任何例子?
(通过文字我的意思是节点名称)

例如,我使用igraph函数在网络上绘制如下:
plot.igraph(net,vertex.label=V(net)$name,layout=layout.fruchterman.reingold,
edge.color="black",edge.width=Eweight,edge.curved=F)
Run Code Online (Sandbox Code Playgroud)
如果我们查看与每个节点对应的标签,则每个节点具有相同的大小.我想根据相应的节点大小改变这个标签大小.例如尺寸("w1")>尺寸("w5")>尺寸("w6")等.
我想在neo4j(java)中根据Facebook数据构建社交网络图.我正在尝试搜索相关的示例来理解这些概念,但仍然无法获得任何这些特定类型.请帮助我知道如何实现它,如果可能的话,提供适当的链接,我可以获得相关的帮助.
我想拥有节点和关系(边缘)属性,如下所示:
Node properties:
String id, name, town;
int numOfFriends;
Double age;
Date dateOfJoining
HashSet<String> postIdSet;
Relationship Properties:
boolean Knows;
int numOfLikes, numOfComments;
float wtLikes, wtComments;
String relationship;
Run Code Online (Sandbox Code Playgroud)
如何创建graphDB具有上述属性的节点和边?
我有一个示例代码结构,用于创建graphDB和添加节点和关系,如下所示:
GraphDatabaseService graphDB = new GraphDatabaseFactory().newEmbeddedDatabase(DB_PATH);
registerShutdownHook(graphDB);
Transaction tx = graphDB.beginTx();
try {
/* define relationshipType*/
RelationshipType rel = DynamicRelationshipType.withName(??);
/* create new node with given properties*/
Node node1 = graphDB.createNode();
/* set node1 properties e.g. node1.id="1234" */
/* create another new node with given properties */ …Run Code Online (Sandbox Code Playgroud) 我正在用java编写neo4j演示代码.以下是我正在创建节点,索引它们并打印其属性的代码的一部分.
String NODE_KEY = "UserID";
String NODE_PROPERTIES = "UserProperties";
createAndIndexUser(String userID){
Node node = graphDB.createNode();
node.setProperty(NODE_KEY, nodeID);
neo4jGraph.nodeIndex.add(node, NODE_KEY, userID);
return node;
}
for(int i=0 ; i<100 ; i++){
String userID = "userID_"+i;
Node node = createAndIndexUser(userID);
node.setProperty(NODE_PROPERTIES, strNodeProperties);
}
Iterable<Node> allNodes = GlobalGraphOperations.at(graphDB).getAllNodes();
for(Node n: allNodes){
System.out.println("n.getPropertyKeys: "+n.getPropertyKeys());
System.out.println(n.getProperty(NODE_KEY));
}
Run Code Online (Sandbox Code Playgroud)
当我执行此代码时,第一个println的输出是:
n.getPropertyKeys: []
Run Code Online (Sandbox Code Playgroud)
而对于第二次打印,我收到一个错误:
Exception in thread "main" org.neo4j.graphdb.NotFoundException: 'UserID' property not found for NodeImpl#0.
Run Code Online (Sandbox Code Playgroud)
在哪里以及我做错了什么?为什么不打印所有属性键n.getProperty(NODE_KEY)?
是否还有其他方法可以获取所有节点并打印其属性?
我正在尝试将自定义类用作a中的值Map<String, Class<?>>.以下是代码的相关部分:
以下是Map的声明和初始化main():
public static Map<String, Class<?>> mapQuery2ResponseType = new HashMap<String, Class<?>>();
static {
mapQuery2ResponseType.put("string1", CustomClass1.class);
mapQuery2ResponseType.put("string2", CustomClass2.class);
mapQuery2ResponseType.put("string3", CustomClass3.class);
}
Run Code Online (Sandbox Code Playgroud)
现在我使用这个映射将一个对象类型转换为这些类之一:(假设所有类都包含一个getName()返回a 的方法String)
String name = (
(
mapQuery2ResponseType.get("string1")
)obj1
).getName();
Run Code Online (Sandbox Code Playgroud)
其中,obj1是通用类型T,
但它不允许我这样做并说:Syntax error on token "obj1", delete this token.
请帮我理解我在哪里做错了?
Edit:
当我使用下面的代码时,它完美地给了我预期的结果,
String name = (
(
CustomClass1
)obj1
).getName();
Run Code Online (Sandbox Code Playgroud)
和返回的obj1 类型相同mapQuery2ResponseType.put("string1", CustomClass1.class);.
在这里我可以看到一件事...如果我使用它直接使用它,我使用它"CustomClass1",而如果我从map中得到它mapQuery2ResponseType.get("string1"),它返回"CustomClass1.class".我不确定这两种方法有什么不同吗?如果有,那是什么?
所以实际上不会有任何转换,只是我将它用于大量的类 …
我刚开始看neo4j将它用于我的社交网络相关项目.在此期间,我遇到了以下代码:
https://github.com/neo4j/neo4j/blob/1.9.M04/community/embedded-examples/src/main/java/org/neo4j/examples/EmbeddedNeo4jWithIndexing.java
Run Code Online (Sandbox Code Playgroud)
通过它(请参阅上面的代码链接),我很难知道如何获得添加到给定的节点总数graphDb.有没有办法找到它(节点的总数)使用graphDb或nodeIndex或referenceIndex其他任何东西?如果是,怎么样?
我还需要帮助才能知道如何将graphdb存储到磁盘上的任何给定路径?如何加载这个存储的graphdb并对其执行操作,如搜索节点/关系等?
(DB_PATH当执行上面的代码时,有几个文件,比如*.db,*.id,*.keys等.在这些文件中有用的是什么?这些文件是否包含创建的节点?如果是,如何我们可以使用它们吗?)
我们如何graphDb从诸如Dashboard at http://localhost:7474/webadmin/或数据的Web界面访问它http://localhost:7474/db/data/?
如果您需要任何具体信息,请告知我们.
谢谢,Nitin.