Я новичок в RDFLIB в Python. Я нашел здесь пример создания графика. Как проще всего визуализировать граф, созданный этим кодом?
import rdflib
# Now we create a graph, a representaiton of the ontology
g = rdflib.Graph()
# Now define the key words that we will use (the edge weights of the graph)
has_border_with = rdflib.URIRef('http://www.example.org/has_border_with')
located_in = rdflib.URIRef('http://www.example.org/located_in')
# define the things - base level objects that will be the nodes
# In this case first we have countries
germany = rdflib.URIRef('http://www.example.org/country1')
france = rdflib.URIRef('http://www.example.org/country2')
china = rdflib.URIRef('http://www.example.org/country3')
mongolia = rdflib.URIRef('http://www.example.org/country4')
# then we have continents
europa = rdflib.URIRef('http://www.example.org/part1')
asia = rdflib.URIRef('http://www.example.org/part2')
# Having defined the things and the edge weights, now assemble the graph
g.add((germany,has_border_with,france))
g.add((china,has_border_with,mongolia))
g.add((germany,located_in,europa))
g.add((france,located_in,europa))
g.add((china,located_in,asia))
g.add((mongolia,located_in,asia))
Я вижу, что в пакете rdflib есть компонент инструментов, который имеет функцию под названием rdfs2dot. Как я могу использовать эту функцию для отображения графика с графиком RDF в нем?
g.serialize("world.rdf")
, затем преобразовать его в точечный синтаксис:rdfs2dot world.rdf > world.dot
, а затем использовать любые инструменты, позволяющие строить точечные графики. Например xdotxdot world.dot
. По какой-то причине rdfs2dot выдает пустой график. Согласно документу Graph.serialize, rdf должен быть форматом по умолчанию, поэтому либо здесь, либо в rdfs2dot есть ошибка. Возможно, посмотрите открытые тикеты на github или опубликуйте новый выпуск. - person Emilien   schedule 01.09.2016