class Graph

Public Class Methods

run(opts={}) click to toggle source

usage params = {api_key: “533c98700765e035b1000001”, term: “SNA”, nodes: [19512246, 18911399, 2192301], attributes: {“name” => {“19512246” => 1, “18911399” => 2}}`, domain: “twitter”}

# File lib/response_types/graph.rb, line 58
def self.run(opts={})
  opts[:api_version] ||= 1
  opts[:host] ||= "0.0.0.0:8083"
  client = LittleBird::Client.new(opts[:api_key], opts[:api_version], opts[:host])
  sub_graph = client.graph_create(term: opts[:term])
  sub_graph.add(opts[:nodes], domain: opts[:domain])
  sub_graph.analyze
end

Public Instance Methods

add(ids, opts={}) click to toggle source
# File lib/response_types/graph.rb, line 2
def add(ids, opts={})
  client.graph_add({identities: [ids].flatten, id: id}.merge(opts))
end
analyze() click to toggle source
# File lib/response_types/graph.rb, line 14
def analyze
  client.graph_analyze(id: id)
end
clear_attribute(opts) click to toggle source
# File lib/response_types/graph.rb, line 25
def clear_attribute(opts)
  client.graph_analyze(opts.merge(id: id))
end
clear_attributes(opts) click to toggle source
# File lib/response_types/graph.rb, line 18
def clear_attributes(opts)
  names = opts.delete(:names) || opts.delete("names")
  names.each do |name|
    client.graph_clear_attribute(opts.merge(id: id, name: name))
  end
end
communities(analysis_id) click to toggle source
# File lib/response_types/graph.rb, line 29
def communities(analysis_id)
  client.graph_community(analysis_id: analysis_id)
end
communities_users(analysis_id) click to toggle source
# File lib/response_types/graph.rb, line 37
def communities_users(analysis_id)
  client.graph_community(analysis_id: analysis_id, users: true)
end
community(analysis_id, community_id) click to toggle source
# File lib/response_types/graph.rb, line 33
def community(analysis_id, community_id)
  client.graph_community(analysis_id: analysis_id, community_id: community_id)
end
community_users(analysis_id, community_id) click to toggle source
# File lib/response_types/graph.rb, line 41
def community_users(analysis_id, community_id)
  client.graph_community(analysis_id: analysis_id, community_id: community_id, users: true)
end
download_csv_to(analysis_id, file=StringIO.new) click to toggle source
# File lib/response_types/graph.rb, line 10
def download_csv_to(analysis_id, file=StringIO.new)
  client.graph_download(analysis_id: analysis_id, format: "csv").to_file(file)
end
download_gexf_to(analysis_id, file=StringIO.new) click to toggle source
# File lib/response_types/graph.rb, line 6
def download_gexf_to(analysis_id, file=StringIO.new)
  client.graph_download(analysis_id: analysis_id, format: "gexf").to_file(file)
end
drop() click to toggle source
# File lib/response_types/graph.rb, line 45
def drop
  client.graph_drop(id: id)
end
info() click to toggle source
# File lib/response_types/graph.rb, line 49
def info
  client.graph_info(id: id)
end
set_attribute() click to toggle source
# File lib/response_types/graph.rb, line 53
def set_attribute
  client.graph_set_attribute(opts.merge(id: id))
end