SideBySideGraphs
VTKEx/Python/Graphs/SideBySideGraphs
Other languages
See (Cxx)
Question
If you have a simple question about this example contact us at VTKExProject If your question is more complex and may require extended discussion, please use the VTK Discourse Forum
Code¶
SideBySideGraphs.py
#!/usr/bin/env python
import vtk
def main():
# Create the first graph
g0 = vtk.vtkMutableUndirectedGraph()
v1 = g0.AddVertex()
v2 = g0.AddVertex()
v3 = g0.AddVertex()
g0.AddEdge(v1, v2)
g0.AddEdge(v2, v3)
g0.AddEdge(v1, v3)
# Create points
points = vtk.vtkPoints()
points.InsertNextPoint(0.0, 0.0, 0.0)
points.InsertNextPoint(1.0, 0.0, 0.0)
points.InsertNextPoint(0.0, 1.0, 0.0)
# Add the coordinates of the points to the graph
g0.SetPoints(points)
# Create the second graph
g1 = vtk.vtkMutableUndirectedGraph()
v1 = g1.AddVertex()
v2 = g1.AddVertex()
g1.AddEdge(v1, v2)
# Create points
points = vtk.vtkPoints()
points.InsertNextPoint(0.0, 0.0, 0.0)
points.InsertNextPoint(1.0, 0.0, 0.0)
# Add the coordinates of the points to the graph
g1.SetPoints(points)
# There will be one render window
renderWindow = vtk.vtkRenderWindow()
renderWindow.SetSize(600, 300)
renderWindowInteractor = vtk.vtkRenderWindowInteractor()
# Define viewport ranges
# (xmin, ymin, xmax, ymax)
leftViewport = [0.0, 0.0, 0.5, 1.0]
rightViewport = [0.5, 0.0, 1.0, 1.0]
graphLayoutView0 = vtk.vtkGraphLayoutView()
graphLayoutView0.SetRenderWindow(renderWindow)
graphLayoutView0.SetInteractor(renderWindowInteractor)
graphLayoutView0.GetRenderer().SetViewport(leftViewport)
graphLayoutView0.AddRepresentationFromInput(g0)
graphLayoutView0.ResetCamera()
graphLayoutView0.Render()
graphLayoutView1 = vtk.vtkGraphLayoutView()
graphLayoutView1.SetRenderWindow(renderWindow)
graphLayoutView1.SetInteractor(renderWindowInteractor)
graphLayoutView1.GetRenderer().SetViewport(rightViewport)
graphLayoutView1.AddRepresentationFromInput(g1)
graphLayoutView1.ResetCamera()
graphLayoutView1.Render()
#graphLayoutView0.GetInteractor().Start()
renderWindowInteractor.Start()
if __name__ == '__main__':
main()