2010-12-22 72 views
0

我有一个想法,为我的网站创建像来自Facebook的“社交图”应用程序的图。
我希望这是在互联网上的应用程序和作为一个软件,这将使中心的用户和他的网站上的朋友sorrounding他,与功能缩放到特定的人,并显示他的最后一条消息论坛,他的名字,他的照片,并寻找一个特定的用户。
创建图表 - 哪种语言?

我不知道应该使用哪种编程?
我知道HTML(4/5),CSS,JavaScript,服务器端语言(PHP/Ruby/Python)和C#。

我想获得有关编程语言和特定技术的建议。
非常感谢,Yosy ATTIAS

+1

你到目前为止尝试过什么?你卡在哪里?我可以看到编码吗?不要吝啬骑士,但如果你真的了解上述语言,从哪里开始应该是显而易见的。 – 2010-12-22 17:03:01

回答

3

这听起来像你正在寻找技术建议可视化图表,而不是如何以编程方式操纵它们。

如果是这样的话,我知道有几个选项。一种选择是利用与graphviz相关的开源工具的生态系统。我使用Graphviz工具为网页生成SVG输出。 Graphviz预计这些图将以一种名为DOT的语言来定义。这里是定义其中A与B相关的三个节点(A,B和C)的曲线图的点代码的例子,B是与C和C是有关回答:

graph myfriendgraph { 
a -- b -- c -- a 
}; 

你可以使这个定向(连接节点的边有“方向”,这意味着什么)图如下所示:

digraph myfriendgraph { 
a -> b -> c -> a 
}; 

DOT是图一个非常有效的语言,但它不是XML,这可能是一个问题,你根据对你的系统的设计。

如果您需要基于XML的图形定义语言,则可能需要试用使用DGML的Automated Graph Layout库。如果你有一个MSDN订阅,你可以免费下载这个库。我很确定这是VS2010中用于显示DGML文件的相同库。对于上面的第二个(有向图)DOT示例,DGML看起来像这样:

<?xml version='1.0' encoding='utf-8'?> 
<DirectedGraph xmlns="http://schemas.microsoft.com/vs/2009/dgml"> 
    <Nodes> 
    <Node Id="A" Label="A" /> 
    <Node Id="B" Label="B" /> 
    <Node Id="C" Label="C" /> 
    </Nodes> 
    <Links> 
    <Link Source="A" Target="B" /> 
    <Link Source="B" Target="C" /> 
    <Link Source="C" Target="A" /> 
    </Links> 
    <Properties> 
    <Property Id="Label" Label="Label" DataType="String" /> 
    </Properties> 
</DirectedGraph> 

微软库允许渲染到Windows应用程序或网页。