<｜begin▁of▁sentence｜>### Instruction:
Imagine you're working in a research lab, and the team has been mapping out a complex network which is key to your current project. This network has been meticulously documented in a DOT file named 'graph.dot', which is stored securely at 'path/to/graph.dot'. The file details the various nodes and their interconnections, with edges meticulously labeled to represent the relationships between these points.

Your lead researcher has tasked you with transitioning this network map into a form that's more manipulable for further analysis. Specifically, you're to utilize NetworkX, a powerful tool in the field of complex networks, to import this graph.

Could you devise a method to efficiently read this graph from the DOT file into a NetworkX graph object, and then present a comprehensive list of all the nodes and edges within it? Such information is crucial for the next phase of the research where patterns and interactions within the network will be analyzed in-depth.
### Response:
import networkx as nx

# Path to the DOT file
path_to_dot_file = 'path/to/graph.dot'

# Read the DOT file and create a NetworkX graph
G = nx.read_dot(path_to_dot_file)

# Print the nodes and edges of the graph
print('Nodes:', G.nodes(data=True))
print('Edges:', G.edges(data=True))
<|EOT|>
