{"id":71626,"date":"2017-07-06T03:46:25","date_gmt":"2017-07-06T03:46:25","guid":{"rendered":"https:\/\/www.simple-talk.com\/?p=71626"},"modified":"2021-09-29T16:21:11","modified_gmt":"2021-09-29T16:21:11","slug":"using-r-illustrate-relationships-graph-objects","status":"publish","type":"post","link":"https:\/\/www.red-gate.com\/simple-talk\/blogs\/using-r-illustrate-relationships-graph-objects\/","title":{"rendered":"Using R to illustrate relationships from graph objects"},"content":{"rendered":"<p>My new <a href=\"https:\/\/www.simple-talk.com\/sql\/t-sql-programming\/sql-graph-objects-sql-server-2017-good-bad\/\">article about Graph Database Objects<\/a> was just published, it&#8217;s really a very good new feature.<\/p>\n<p>Another new feature we have since <strong>SQL Server 2016<\/strong> is <strong>R language<\/strong>. We can use R language inside the database to analyze our data.<\/p>\n<p>The possibility to use both technologies together is very interesting. Using graph objects we can store relationships between elements, for example, relationships between forum members. Using R scripts we can build a cluster graph from the stored graph information, illustrating the relationships in the graph.<\/p>\n<p>The script below creates a database for our example with a subset of the objects used in my article and a few more relationship records between the forum members.<\/p>\n<blockquote>\n<div><span style=\"font-family: Courier New;font-size: 10pt\"> <span style=\"color: blue\">use<\/span>\u00a0<span style=\"color: maroon\">master<\/span> <br \/>\n <span style=\"color: blue\">drop<\/span>\u00a0<span style=\"color: blue\">database<\/span>\u00a0<span style=\"color: blue\">if<\/span>\u00a0<span style=\"color: blue\">exists<\/span>\u00a0<span style=\"color: maroon\">RGraph<\/span> <br \/>\n <span style=\"color: maroon\">go<\/span> <br \/>\n <span style=\"color: blue\">create<\/span>\u00a0<span style=\"color: blue\">database<\/span>\u00a0<span style=\"color: maroon\">RGraph<\/span> <br \/>\n <span style=\"color: maroon\">go<\/span> <\/p>\n<p> <span style=\"color: blue\">use<\/span>\u00a0<span style=\"color: maroon\">RGraph<\/span> <br \/>\n <span style=\"color: maroon\">go<\/span> <\/p>\n<p> <span style=\"color: blue\">drop<\/span>\u00a0<span style=\"color: blue\">table<\/span>\u00a0<span style=\"color: blue\">if<\/span>\u00a0<span style=\"color: blue\">exists<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">Likes<\/span> <br \/>\n <span style=\"color: blue\">drop<\/span>\u00a0<span style=\"color: blue\">table<\/span>\u00a0<span style=\"color: blue\">if<\/span>\u00a0<span style=\"color: blue\">exists<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">ForumMembers<\/span> <\/p>\n<p>\n <span style=\"color: blue\">CREATE<\/span>\u00a0<span style=\"color: blue\">TABLE<\/span>\u00a0<span style=\"color: maroon\">[dbo]<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">[ForumMembers]<\/span><span style=\"color: maroon\">(<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">[MemberID]<\/span>\u00a0<span style=\"color: maroon\">[int]<\/span>\u00a0<span style=\"color: maroon\">IDENTITY<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: black\">1<\/span><span style=\"color: silver\">,<\/span><span style=\"color: black\">1<\/span><span style=\"color: maroon\">)<\/span>\u00a0<span style=\"color: blue\">NOT<\/span>\u00a0<span style=\"color: blue\">NULL<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">[MemberName]<\/span>\u00a0<span style=\"color: maroon\">[varchar]<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: black\">100<\/span><span style=\"color: maroon\">)<\/span>\u00a0<span style=\"color: blue\">NULL<\/span> <br \/>\n <span style=\"color: maroon\">)<\/span> <br \/>\n <span style=\"color: blue\">AS<\/span>\u00a0<span style=\"color: maroon\">NODE<\/span> <br \/>\n <span style=\"color: maroon\">GO<\/span> <\/p>\n<p> <span style=\"color: blue\">CREATE<\/span>\u00a0<span style=\"color: blue\">TABLE<\/span>\u00a0<span style=\"color: maroon\">[dbo]<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">[Likes]<\/span> <br \/>\n <span style=\"color: blue\">AS<\/span>\u00a0<span style=\"color: maroon\">EDGE<\/span> <\/p>\n<p> <span style=\"color: blue\">INSERT<\/span>\u00a0<span style=\"color: maroon\">ForumMembers<\/span>\u00a0<span style=\"color: blue\">values<\/span>\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: red\">&#8216;Mike&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: red\">&#8216;Carl&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: red\">&#8216;Paul&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: red\">&#8216;Christy&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: red\">&#8216;Jennifer&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: red\">&#8216;Charlie&#8217;<\/span><span style=\"color: maroon\">)<\/span> <\/p>\n<p> <span style=\"color: blue\">INSERT<\/span>\u00a0<span style=\"color: maroon\">Likes<\/span>\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: maroon\">$to_id<\/span><span style=\"color: silver\">,<\/span><span style=\"color: maroon\">$from_id<\/span><span style=\"color: maroon\">)<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: blue\">VALUES<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: blue\">SELECT<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">FROM<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">ForumMembers<\/span>\u00a0<span style=\"color: blue\">WHERE<\/span>\u00a0<span style=\"color: maroon\">MemberID<\/span>\u00a0<span style=\"color: silver\">=<\/span>\u00a0<span style=\"color: black\">1<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: blue\">SELECT<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">FROM<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">ForumMembers<\/span>\u00a0<span style=\"color: blue\">WHERE<\/span>\u00a0<span style=\"color: maroon\">MemberID<\/span>\u00a0<span style=\"color: silver\">=<\/span>\u00a0<span style=\"color: black\">2<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: blue\">SELECT<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">FROM<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">ForumMembers<\/span>\u00a0<span style=\"color: blue\">WHERE<\/span>\u00a0<span style=\"color: maroon\">MemberID<\/span>\u00a0<span style=\"color: silver\">=<\/span>\u00a0<span style=\"color: black\">3<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: blue\">SELECT<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">FROM<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">ForumMembers<\/span>\u00a0<span style=\"color: blue\">WHERE<\/span>\u00a0<span style=\"color: maroon\">MemberID<\/span>\u00a0<span style=\"color: silver\">=<\/span>\u00a0<span style=\"color: black\">2<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: blue\">SELECT<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">FROM<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">ForumMembers<\/span>\u00a0<span style=\"color: blue\">WHERE<\/span>\u00a0<span style=\"color: maroon\">MemberID<\/span>\u00a0<span style=\"color: silver\">=<\/span>\u00a0<span style=\"color: black\">1<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: blue\">SELECT<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">FROM<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">ForumMembers<\/span>\u00a0<span style=\"color: blue\">WHERE<\/span>\u00a0<span style=\"color: maroon\">MemberID<\/span>\u00a0<span style=\"color: silver\">=<\/span>\u00a0<span style=\"color: black\">4<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: blue\">SELECT<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">FROM<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">ForumMembers<\/span>\u00a0<span style=\"color: blue\">WHERE<\/span>\u00a0<span style=\"color: maroon\">MemberID<\/span>\u00a0<span style=\"color: silver\">=<\/span>\u00a0<span style=\"color: black\">5<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: blue\">SELECT<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">FROM<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">ForumMembers<\/span>\u00a0<span style=\"color: blue\">WHERE<\/span>\u00a0<span style=\"color: maroon\">MemberID<\/span>\u00a0<span style=\"color: silver\">=<\/span>\u00a0<span style=\"color: black\">4<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: maroon\">)<\/span> <\/p>\n<p> <span style=\"color: blue\">insert<\/span>\u00a0<span style=\"color: blue\">into<\/span>\u00a0<span style=\"color: maroon\">likes<\/span>\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: maroon\">$from_id<\/span><span style=\"color: silver\">,<\/span><span style=\"color: maroon\">$to_id<\/span><span style=\"color: maroon\">)<\/span>\u00a0<span style=\"color: blue\">values<\/span> <br \/>\n \u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: blue\">select<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">from<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">forummembers<\/span>\u00a0<span style=\"color: blue\">where<\/span>\u00a0<span style=\"color: maroon\">MemberName<\/span><span style=\"color: silver\">=<\/span><span style=\"color: red\">&#8216;Mike&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: blue\">select<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">from<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">forummembers<\/span>\u00a0<span style=\"color: blue\">where<\/span>\u00a0<span style=\"color: maroon\">MemberName<\/span><span style=\"color: silver\">=<\/span><span style=\"color: red\">&#8216;Paul&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: blue\">select<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">from<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">forummembers<\/span>\u00a0<span style=\"color: blue\">where<\/span>\u00a0<span style=\"color: maroon\">MemberName<\/span><span style=\"color: silver\">=<\/span><span style=\"color: red\">&#8216;Paul&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: blue\">select<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">from<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">forummembers<\/span>\u00a0<span style=\"color: blue\">where<\/span>\u00a0<span style=\"color: maroon\">MemberName<\/span><span style=\"color: silver\">=<\/span><span style=\"color: red\">&#8216;Christy&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: blue\">select<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">from<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">forummembers<\/span>\u00a0<span style=\"color: blue\">where<\/span>\u00a0<span style=\"color: maroon\">MemberName<\/span><span style=\"color: silver\">=<\/span><span style=\"color: red\">&#8216;Christy&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: blue\">select<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">from<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">forummembers<\/span>\u00a0<span style=\"color: blue\">where<\/span>\u00a0<span style=\"color: maroon\">MemberName<\/span><span style=\"color: silver\">=<\/span><span style=\"color: red\">&#8216;Carl&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: blue\">select<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">from<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">forummembers<\/span>\u00a0<span style=\"color: blue\">where<\/span>\u00a0<span style=\"color: maroon\">MemberName<\/span><span style=\"color: silver\">=<\/span><span style=\"color: red\">&#8216;Paul&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: blue\">select<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">from<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">forummembers<\/span>\u00a0<span style=\"color: blue\">where<\/span>\u00a0<span style=\"color: maroon\">MemberName<\/span><span style=\"color: silver\">=<\/span><span style=\"color: red\">&#8216;Jennifer&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: maroon\">(<\/span><span style=\"color: blue\">select<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">from<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">forummembers<\/span>\u00a0<span style=\"color: blue\">where<\/span>\u00a0<span style=\"color: maroon\">MemberName<\/span><span style=\"color: silver\">=<\/span><span style=\"color: red\">&#8216;Jennifer&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: silver\">,<\/span> <br \/>\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: maroon\">(<\/span><span style=\"color: blue\">select<\/span>\u00a0<span style=\"color: maroon\">$node_id<\/span>\u00a0<span style=\"color: blue\">from<\/span>\u00a0<span style=\"color: maroon\">dbo<\/span><span style=\"color: silver\">.<\/span><span style=\"color: maroon\">forummembers<\/span>\u00a0<span style=\"color: blue\">where<\/span>\u00a0<span style=\"color: maroon\">MemberName<\/span><span style=\"color: silver\">=<\/span><span style=\"color: red\">&#8216;Carl&#8217;<\/span><span style=\"color: maroon\">)<\/span><span style=\"color: maroon\">)<\/span> <\/span><\/div>\n<\/blockquote>\n<p>\n You need to follow a few steps to enable R scripts:<\/p>\n<p>1) Install R in SQL Server<\/p>\n<blockquote>\n<p>You can follow the instructions in this link to <a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/advanced-analytics\/r\/set-up-sql-server-r-services-in-database\">install R in SQL Server<\/a><\/p>\n<\/blockquote>\n<p>2) Install the package iGraph in R<\/p>\n<blockquote>\n<p>You can follow the instructions in this link to <a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/advanced-analytics\/r\/install-additional-r-packages-on-sql-server\">install iGraph package<\/a><\/p>\n<\/blockquote>\n<p>3) Enable the use of external scripts. You can execute the following t-sql code:<\/p>\n<blockquote>\n<div><span style=\"font-family: Courier New;font-size: 10pt\"> <span style=\"color: blue\">exec<\/span>\u00a0<span style=\"color: #ff0080\"><b>sp_configure<\/b><\/span>\u00a0<span style=\"color: red\">&#8216;external\u00a0scripts\u00a0enabled&#8217;<\/span><span style=\"color: silver\">,<\/span>\u00a0<span style=\"color: black\">1<\/span><span style=\"color: silver\">;<\/span><\/span><\/div>\n<div><span style=\"font-family: Courier New;font-size: 10pt\">RECONFIGURE<span style=\"color: silver\">;<\/span> <\/span><\/div>\n<\/blockquote>\n<p>4) Execute the script<\/p>\n<blockquote>\n<p>Below is the R script to build a cluster graph using iGraph our relationships stored in SQL Server. You need to change the folder to store the graph.<\/p>\n<div><span style=\"font-family: Courier New;font-size: 10pt\"> <span style=\"color: blue\">exec<\/span>\u00a0<span style=\"color: #ff0080\"><b>sp_execute_external_script<\/b><\/span>\u00a0<span style=\"color: #8000ff\">@language<\/span>\u00a0<span style=\"color: silver\">=<\/span>\u00a0<span style=\"color: red\">N&#8217;R&#8217;<\/span><span style=\"color: silver\">,<\/span> <br \/>\n <span style=\"color: #8000ff\">@script<\/span>\u00a0<span style=\"color: silver\">=<\/span>\u00a0<span style=\"color: red\">N&#8217; <\/span><\/span><\/div>\n<div><span style=\"font-family: Courier New;font-size: 10pt\"><span style=\"color: red\">require(igraph) <\/span><\/span><\/div>\n<div><span style=\"font-family: Courier New;font-size: 10pt\"><span style=\"color: red\">g\u00a0&lt;-\u00a0graph.data.frame(graphdf) <\/span><\/span><\/div>\n<div><span style=\"font-family: Courier New;font-size: 10pt\"><span style=\"color: red\">V(g)$label.cex\u00a0&lt;-\u00a02 <\/span><\/span><\/div>\n<div><span style=\"font-family: Courier New;font-size: 10pt\"><span style=\"color: red\">png(filename\u00a0=\u00a0&#8220;c:\\\\R\\\\plot1.png&#8221;,\u00a0height\u00a0=\u00a01200,\u00a0width\u00a0=\u00a01200,\u00a0res\u00a0=\u00a0100); plot(g,\u00a0vertex.label.family\u00a0=\u00a0&#8220;sans&#8221;,\u00a0vertex.size\u00a0=\u00a040) <\/span><\/span><\/div>\n<div><span style=\"font-family: Courier New;font-size: 10pt\"><span style=\"color: red\">dev.off() &#8216;<\/span><span style=\"color: silver\">,<\/span> <br \/>\n <span style=\"color: #8000ff\">@input_data_1<\/span>\u00a0<span style=\"color: silver\">=<\/span>\u00a0<span style=\"color: red\">N&#8217;select\u00a0LikeMember.MemberName\u00a0as\u00a0LikeMember, \u00a0\u00a0\u00a0LikedMember.MemberName\u00a0as\u00a0LikedMember \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0from\u00a0dbo.ForumMembers\u00a0as\u00a0LikeMember, \u00a0dbo.ForumMembers\u00a0as\u00a0LikedMember, \u00a0Likes <\/span><\/span><\/div>\n<div><span style=\"font-family: Courier New;font-size: 10pt\"><span style=\"color: red\">\u00a0 \u00a0 \u00a0 \u00a0 where\u00a0Match(LikeMember-(Likes)-&gt;LikedMember) &#8216;<\/span><span style=\"color: silver\">,<\/span> <br \/>\n <span style=\"color: #8000ff\">@input_data_1_name<\/span>\u00a0<span style=\"color: silver\">=<\/span>\u00a0<span style=\"color: red\">N&#8217;graphdf&#8217;<\/span><\/span><\/div>\n<div><span style=\"font-family: Courier New;font-size: 10pt\"><span style=\"color: maroon\">GO<\/span> <\/span><\/div>\n<\/blockquote>\n<p>\n The image below shows the resulting graph with the relations between forum members:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-71627\" src=\"https:\/\/www.red-gate.com\/simple-talk\/wp-content\/uploads\/2017\/07\/RAndGraph1.jpg\" alt=\"Cluster created with R from relationship graph information\" width=\"961\" height=\"966\" \/><\/p>\n<p>It&#8217;s interesting to remember about the new feature in SQL Server 2017: We can also build the same script using Python.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>My new article about Graph Database Objects was just published, it&#8217;s really a very good new feature. Another new feature we have since SQL Server 2016 is R language. We can use R language inside the database to analyze our data. The possibility to use both technologies together is very interesting. Using graph objects we&#8230;&hellip;<\/p>\n","protected":false},"author":50808,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[2,143531],"tags":[5134],"coauthors":[6810],"class_list":["post-71626","post","type-post","status-publish","format-standard","hentry","category-blogs","category-t-sql-programming-sql-server","tag-sql-prompt"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/posts\/71626","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/users\/50808"}],"replies":[{"embeddable":true,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/comments?post=71626"}],"version-history":[{"count":4,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/posts\/71626\/revisions"}],"predecessor-version":[{"id":83068,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/posts\/71626\/revisions\/83068"}],"wp:attachment":[{"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/media?parent=71626"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/categories?post=71626"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/tags?post=71626"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/coauthors?post=71626"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}