PyCharm 2022.1 Help

UML class diagrams

PyCharm lets you generate a diagram on a package in your project. Such diagrams always reflect the structure of actual classes and methods in your application.

View UML class diagram

  1. In the Project tool window, right-click an item for which you want to create a diagram and select Diagrams | Show Diagram Ctrl+Alt+Shift+U).

  2. In the list that opens, select Python Class Diagram. PyCharm generates a UML diagram for classes and their dependencies.

View local changes as a diagram

You can use the UML Class diagram to evaluate how your local code changes affect the application.

  • From the context menu of the code editor, the Project tool window, or the Local Changes view, select Show Local Changes as UML, or press Ctrl+Alt+Shift+D.

    The diagram opens in a popup. You can double-click a node to view changes in a Differences viewer.

To view changes in revisions as a UML Class diagram, in the History tab of the Version Control tool window, select the desired revision and select Show Diff as UML from the context menu or press Ctrl+Shift+D.

Analyze class diagram

To see the list of methods, fields, and other code elements, select the appropriate icon on the diagram toolbar located on top of the diagram editor.

Diagram editor

When you click through classes in the graph, PyCharm greys out classes that do not reside in the same package. This might be helpful, when you generate a diagram on a package that contains inner packages.

To save the diagram as a file, right-click the diagram editor and from the context menu, select Export Diagram | Save UML Diagram.

Manage class diagram

When working with diagrams, use the context menu in the diagram editor to perform different tasks. You can view members of the class, add new, delete the existing ones, see implementations, check parent classes, perform basic refactoring, add notes, and so on.

You can navigate to the underlying source code by selecting a diagram element and pressing F4 or Ctrl+Enter).

Select elements in a diagram

  • To select an element, click it in diagram.

  • To select multiple adjacent elements, keep Shift pressed and click the desired elements, or just drag a lasso around the elements to be selected.

  • To select multiple non-adjacent elements, keep Ctrl+Shift pressed and click the desired elements.

  • To select a class member, double-click the class element, and then use the arrow keys, or the mouse pointer.

Add an existing class to a diagram

  1. Press Space.

  2. In the search field that opens, start typing a name of the class you want to add. Then, select the desired class from the suggestion list.

    umlPopup.png

    If you want to add a class that is out of the project scope, select the Include non-project items checkbox.

Delete a node element from the diagram

  1. In the diagram editor, select a node element you want to delete.

  2. Right-click the element and from the context menu, select Delete Delete.

    Alternatively, select Refactor | Safe Delete Alt+Delete. In this case, PyCharm checks for usages before applying the changes.

Add new members to a class

You can perform some forward engineering while in the diagram editor.

  1. In the diagram editor, select a class to which you want to add a new member and from the context menu, select New or press Alt+Insert. Then select a code element (a field or a method) you want to create.

  2. Depending on your selection, PyCharm opens the appropriate dialog where you specify the necessary information for creating the new element.

PyCharm adds the item to your diagram and updates the source code accordingly.

View implementations and parent classes

You can view implementations and parent classes in your diagram. If PyCharm finds more than one parent class or implementation, it displays a list of appropriate items. Select the one you need to see the connections between the parent and its children.

  1. In the diagram editor, select an item for which you want to see implementations or parent classes.

  2. Right-click the items and from the context menu, select the Show Implementations Ctrl+Alt+B or Show Parents Ctrl+Alt+P respectively.

  3. In the popup that opens, select items you need and press Enter. To extend your selection up or down while in the popup, press Shift + Up or Shift + Down respectively.

Configure diagram settings

You can configure the diagram settings, so that you have certain options available to you by default when you create your diagram.

  1. Press Ctrl+Alt+S to open the IDE settings and select Tools | Diagrams.

  2. In the right-hand pane, select the options that you want to see by default and click OK to apply your changes.

Productivity tips

Enable the diagram preview

Open the Structure tool window Alt+7 and drag the shadow area to obtain the desired view. Select one or more nodes in the diagram to highlight the corresponding nodes in the preview area.

Manage diagram layout

Right-click the diagram background, and choose Layout from the context menu. Then select the desired layout from the submenu. To apply the selected layout, click the Apply Current Layout button on the diagram toolbar.

Alternatively, drag entities in the diagram manually to achieve the desired layout.

Zoom in and out

Use any of the following techniques:

  • Click the Zoom In button and the Zoom Out button on the diagram editor toolbar.

  • Keeping Ctrl pressed, rotate your mouse wheel.

  • Press NumPad+ or NumPad-.

Use the magnifier tool

Keeping Alt pressed, hover your mouse pointer over diagram areas.

View the structure of a database or table as a diagram

In the Database tool window, right-click a schema or a table and select Diagrams | Show Visualization Ctrl+Alt+Shift+U or Diagrams | Show Visualization Popup Ctrl+Alt+U from the context menu.

View SQL query plan as a diagram

In the editor, right-click an SQL statement and select Explain Plan. Then, in the Output pane, switch to the Plan tab. By default, the query is displayed as a tree. To see it as a diagram, click Show Visualization (the Show Visualization button) or press Ctrl+Alt+Shift+U.

Toolbar

Item

Description

Fields

Click this button to show fields in the class nodes.

Methods

Click this button to show methods in the class nodes.

inner class

Click this button to show inner classes in the class nodes.

Zoom In

Click this button to increase the scale of the diagram, or press NumPad+.

Zoom Out

Click this button to decrease the scale of the diagram, or press NumPad-.

Actual Size

Click this button to restore the actual size of the diagram.

Fit Content

Click this button to make the contents fit into the current diagram size.

Apply Current Layout

Click this button to apply the current layout, selected from the context menu of the diagram, or press F5.

Route Edges

Click this icon to scale the diagram to the edges of the window.

Copy Diagram to Clipboard

Click this icon to copy the diagram into the clipboard.

Copy Selection to Clipboard

Click this icon and then select any diagram area with the mouse cursor: the selected area will be copied into the clipboard.

Save diagram

Click this button to save the current diagram as a UML file.

Export to file

Click this button to save the diagram in an image file.

Print

Click this button to print the diagram.

Context menu

The table below contains commands that are not available from the toolbar.

Item

Description

New

Use this node to add new elements to a diagram.

Show Categories

Shows or hides categories like methods, inner classes, and fields.

Add Class to Diagram

Enables adding an existing class to the diagram. Start typing the class name and select the target item from the completion list.

Delete

Deletes the selected diagram.

Refactor

This node contains refactoring commands, enabled in the current context.

Jump to Source

Choose this command to open the selected diagram node element in the editor.

Find Usages

Choose this command to search for usages of the selected node element.

Actual Size

Restores the actual size of the diagram

Fit Content

Fits the content into the current diagram size.

Layout

Select the desired diagram layout from the submenu.

Orientation

Provides you with the following opientation options: Bottom to Top, Top to Bottom,

Apply Current Layout

Applies the current layout, selected from the Layout node of the diagram context menu

Route Edges

Scales the diagram content to the edges of the diagram window.

Appearance

Manages the way the diagram is presented by showing the grid, edge labels, bridges. Allows you to merge edges and select edge shapes.

Snap to grid.

Aligns elements against the grid.

Fit Content After Layout

Fits the diagram content after selecting the layout. Enabled by default.

Copy Diagram to Clipboard

Click this icon to copy the diagram into the clipboard.

Copy Selection to Clipboard

Click this icon and then select any diagram area with the mouse cursor: the selected area will be copied into the clipboard.

Export to Image File

Saves the diagram in an image file with the specified name and path. The possible formats are: jpeg, png, svg, svgz, or gif.

Print

Prints the diagram.

Save UML Diagram

Saves the current diagram in the specified location as xml file.

Legend of the Class Diagram

PyCharm follows the UML conventions in showing relationships between the classes.

Besides that, PyCharm supports the following colors and arrows:

Item

Description

implements

The green arrow corresponds to the implements clause in a class declaration.

extends

The blue arrow corresponds to the class extension.

inner class

This sign appears for the inner classes.

Last modified: 17 March 2022