问题标签 [social-graph]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
36 浏览

ruby-on-rails - 简单 Rails 3 应用程序元 OG 标签未重新配置

我一直在努力重新设计这个应用程序

我已将应用程序布局文件中的原始 OG 标签更改为:

application.html.erb

但是由于某种原因,当您单击“分享到 Facebook”按钮时,它会呈现这个。请注意,它仍然显示所有旧内容(我仍然没有更改剃刀图像,但应该设置其他内容。)

截屏]

我使用 Facebook 的开发人员工具来查看他们在抓取我的临时应用程序时看到的内容。

什么可能导致此问题?它与资产的管道有关吗?我已经能够毫无问题地进行预编译。

0 投票
0 回答
148 浏览

graph - 大数据可视化社交图

我正在从事一个涉及社交图可视化和分析的项目。

有一个图包含大约 ~2,000,000 个节点和 ~1,000,000,000 条边。

我们尝试使用Gephi,但超出了内存限制。

有人可以推荐一个可以处理这么多数据的数据可视化和分析工具吗?

0 投票
1 回答
319 浏览

elasticsearch - 如何在 ElasticSearch 中为社交关系建模?

鉴于 ElasticSearch NoSQL 数据库,我试图弄清楚如何最好地对社交关系数据建模(是的,图形数据库将是这项工作的最佳工具,但在我目前的情况下,这个选择可能会强加给我)。

我是 ElasticSearch 的新手,并且正在审查建模关系的方法,但它们似乎不适合社交关系的用例,或者至少我不清楚这些将如何建模。

我的要求的一个大大简化的版本如下:

  • 人们有身份证、姓名和工作地点(他们可能没有工作地点)
  • 人们可以与其他人建立友谊关系(以及建立友谊的日期)
  • 人们可以阻止其他人与他们交谈(方向性很重要,因为只有阻止的人才能解除阻止)
  • 人们可以在同一个工作地点工作

我们可能会查询的内容:

  • 把我所有的朋友都给我(给定我的ID)
  • 给我所有与我一起工作的人(给定我的 ID)
  • 给我上面2个的union,以及他们工作地点的名字和id,而不是那些我屏蔽过或者屏蔽过我的人。
  • 给我所有在我工作的城市有工作地点的朋友。

虽然查询看起来可能是一个挑战,但我更感兴趣的是在 ElasticSearch 中简单地对人员、工作场所以及它们之间的关系进行建模,使其有意义、可维护并且可以支持此类查询.

文档告诉我 ElasticSearch 没有连接。它有嵌套对象和父子关系,但这些似乎都不适合人与人之间的友谊关系;嵌套对象和父子对象都有一个隐含的单一所有权概念......除非我开始在任何地方复制人员数据,无论是在其他人对象(对于朋友和被阻止)还是在工作场所。这当然引入了保持数据一致的问题,因为更改人员数据需要在各处更改他们的重复数据,并且删除友谊关系必须删除该关系的另一方与另一个人。这也带来了事务的问题,因为我听说不支持跨不同文档的事务支持。

除了非规范化和复制,或数据库之外的应用程序端连接之外,有没有更好的方法(除了使用不同的数据库)以更容易查询的合理方式对此进行建模?

0 投票
1 回答
1219 浏览

database-design - Photo LIKE, COMMENTS NOSql 数据库设计

我正在尝试在 DynamoDB 中的 Instagram 和 Facebook 等 LIKE 和 COMMENT 系统中实现

我有 3 个表,用户、照片和 photo_likes

user 表和 photo 表有 user_id 和 photo_id 键。

对于 photo_likes 表,我将 photo_id 作为键,并以 like_by 列存储 user_id 作为列表。

因此,如果 user_id 10、35 喜欢 photo_id 1,我将其存储为:

如果这是正确的方法,我真的很困惑?或者我应该只要他们是新的喜欢就插入一个新行。

0 投票
0 回答
292 浏览

facebook - 如何获取 Facebook 搜索结果

我正在尝试建立一个与 FB 上的搜索条件相匹配的人脉网络并结交他们的朋友。当然,所有公共信息,或者至少可以访问我自己的帐户。假设我搜索名称“Smith”。我想获取所有与该查询匹配的人,然后在他们的连接中搜索所有与“Smith”匹配的名称以及彼此之间的关系等等。通过这种方式,我创建了各种相互关联的“Smith”(es)集群。

我很流利,R所以我尝试了这个Rfacebook包。那里有一个函数被调用searchFacebook,但它不再工作了,因为 API 搜索被 Facebook 本身禁用了。我得到的信息:

Searching for posts was deprecated with version 2.0 of the Facebook Graph API.

在这种情况下我有什么选择?这甚至可能吗?

语言不是问题,我也可以使用 Python。我只是使用 R,因为它对我来说更快。

谢谢

0 投票
1 回答
904 浏览

python - 从节点和边数组可视化社交网络

我想使用一些工具(最好是 python 中的一些工具)来可视化社交网络。目前,我有数组形式的数据:一个包含节点信息的数组(让我们给它命名Nodes)。这个数组的每一行都指向一个节点,而这个数组的每一列都指向一个特定的属性。Nodes描述属性值的每一列中的值。此数组中的零值Nodes代表缺失的属性值。

除了节点数组,我还有一个用于邻接矩阵(边)的数组。我们称之为数组Edges。该Edges数组是一个与数组中的行数(节点)相同大小的Nodes方阵。这个数组 ( Edges) 用01作为值填充。0in (i,j)position of的值Edges意味着节点ij不相互连接。而1in (m,n)position 的值则意味着节点m彼此n连接。

这是一个带有 10 个节点的数组Nodes的小说明性示例:Edges

在上面给出的数据中,我们有 10 个节点和 3 个属性。如何使用这些数组 (NodesEdges) 获得网络的可视化?

0 投票
2 回答
763 浏览

python - 将颜色分配给节点的社交网络可视化

我想用节点和边来可视化一个社交网络,节点的颜色代表属性的值如果我可以使用 python 中的工具(如networkx )来做到这一点会很好,但我也对其他工具(如Gephigraph-tools)持开放态度。我在社交网络中拥有的节点和边采用 numpy 数组的形式。我希望这个可视化的节点根据属性值着色。

节点数组中的每一行都指向一个用户。节点数组中的每一列都指向一个属性。节点数组的每一列中的值都指向属性值。下面是一个包含 10 个用户和 3 个属性(名称为 [ Att1, Att2, Att3].

类似地,边数组(邻接矩阵)是一个大小为节点数的方阵*。邻接矩阵中的值为 1 表示两个节点之间存在边,值为 0 表示不存在边。这是边数组的示例。

假设我希望节点根据中间列中给出的属性值着色Nodes(即Attribute_Value = Nodes[:,1] = [2, 3, 2, 1, 2, 1, 2, 0, 2, 0])有四个唯一的属性值[0,1,2,3],所以我希望节点有四种不同的颜色。在我的实际图中,我有更多属性的唯一值。此外,我有数万个节点,所以我希望能够调整我的绘图中节点的大小(半径)。

在我之前的帖子之后,我尝试了这个:

但是,上述代码片段的结果不允许我根据属性值选择颜色。另外,我需要调整节点的大小。如何以所述方式可视化社交图?

0 投票
1 回答
48 浏览

frameworks - 关于创建社交图和交叉引用关系的框架/API 的建议

简短的问题描述

我必须为一家安全公司开发一个应用程序,该应用程序将向他们的客户存储骚扰案例,并在检测到攻击他们的人是同一个人时将任何案例与其他案例进行交叉引用。

这些关系将用于创建罪犯和受害者的社交图谱

最初我考虑将它作为一个带有一些 CMS 的社交网络或者也许是带有一些前端 JS 框架的 Elastic Search 来管理,但我只有 PHP 和一些基本的 React/Node.js 的经验,所以我想知道是否有更好的东西可以让我制作当用户填写表格时,查询就会生效。

带有用例示例的长问题

假设他们有两个客户端:ProtectedPerson1ProtectedPerson2

并且有一个案例说BadGuy1在 Twitter 中用句柄@badguy1威胁PP1

然后另一个对这个案例一无所知的代理进入PP2的新案例,因为 facebook 中有人发布了客户的私人照片。

如果他们开始输入社交信息并输入@badguy1faceboo.com/badguy1或类似内容,系统应该询问“这是同一个人吗?” 如果代理人选择“是”,那么两个独立案件的两个记录都与同一个“罪犯”有关。

最后,最终目标是收集所有可能的先例,以便在必要时对某人采取法律行动。


是否有任何现有的框架、CMS 或 API 可用于管理这种关系并创建所需的建议图表