| Node Properties | Description |
|---|---|
| Border Line Type | The type of line used for the border of the node. |
| Border Transparency | The opacity of the color of the border of the node. Zero means totally transparent, and 255 means totally opaque. |
| Border Width | The width of the node border. This property is visible by default. |
| Label | The text used for the node label. This property is visible by default. |
| Label Background Color | The color of the edge label background. The value is relevant only when Label Background Shape is used. |
| Label Background Shape | The shape of the label background. Default is None. The value is relevant only when Label Background Color is used. |
| Label Background Transparency | The opacity of the color of the edge background. Zero means totally transparent, and 255 means totally opaque. |
| Label Font Face | The font used for the node label. |
| Label Font Size | The size of the font used for the node label. This property is visible by default. |
| Label Position | The position of the node label relative to the node. |
| Label Rotation. | The rotation of the node label, default is 0. |
| Label Transparency | The opacity of the node label. Zero means totally transparent, and 255 means totally opaque. |
| Label Width | The maximum width of the node label. If the node label is wider than the specified width, Cytoscape will automatically wrap the label on space characters. Cytoscape will not hyphenate words, meaning that if a single word (i.e. no spaces) is longer than maximum width, the word will be displayed beyond the maximum width. |
| Nested Network Image Visible | A boolean value that indicates whether a nested network should be visualized (assuming a nested network is present for the specified node). |
| Padding (Compound Node) | Internal padding of the compound node (a node that contains other nodes). |
| Paint | The color of the whole node, including its border, label and selected paint. |
| Border Paint | The color of the border of the node. This property is visible by default. |
| Image/Chart 1-9 | A user-defined graphic (image, chart or gradient) that is displayed on the node. Image/Chart 1 is visible by default, others (maximum of nine) can be added to the list from the drop-down menu Properties → Paint → Custom Paint n → Image/Chart n. |
| Image/Chart Position 1-9 | The position of each graphic (image, chart or gradient). These properties (maximum of nine) can be found in the drop-down menu Properties → Paint → Custom Paint n → Image/Chart Position n. |
| Fill Color | The color of the node. This property is visible by default. |
| Label Color | The color of the node label. This property is visible by default. |
| Selected Paint | The fill color of the node when selected. |
| Shape | The shape of the node. This property is visible by default. |
| Shape (Compound Node) | The shape of the compound node (a node that contains other nodes). |
| Size | The size of the node. Width and height will be equal. This property is mutually exclusive of Node Height and Node Width. This property is visible by default. |
| Height | The height of the node. Height will be independent of width. This property is mutually exclusive of Node Size. This property is visible by default. |
| Image/Chart Size 1-9 | The size of the related node Image/Chart. It can be added to the list from the drop-down menu Properties → Size → Image/Chart Size n. |
| Width | The width of the node. Width will be independent of height. This property is mutually exclusive of Node Size. This property is visible by default. |
| Fit Custom Graphics to node (checkbox) | Toggle to fit Image/Chart size to node size. |
| Lock node width and height (checkbox) | Toggle to ignore Width and Height, and to use Size for both values. |
| Tooltip | The text of the tooltip that appears when a mouse hovers over the node. |
| Transparency | The opacity of the color of the node. Zero means totally transparent, and 255 means totally opaque. This property is visible by default. |
| Visible | Hides the node if set to false. By default, this value is set to true. |
| X Location | X location of the node. Default value of this will be ignored. The value will be used only when mapping function is defined. |
| Y Location | Y location of the node. Default value of this will be ignored. The value will be used only when mapping function is defined. |
| Z Location | Z location of the node. Default value of this will be ignored. The value will be used only when mapping function is defined. |
| Edge Properties | Description |
|---|---|
| Bend | The edge bend. Defines how the edge is rendered. Users can add multiple handles to define how to bend the edge line. |
| Curved | If Edge Bend is defined, edges will be rendered as straight or curved lines. If this value is set to true, edges will be drawn as curved lines. |
| Label | The text used for the edge label. |
| Label Autorotate | Controls the Label Rotation of each edge label. If this value is set to true, the edge label will be automatically rotated so that the label aligns with the edge. If it is set to false, the edge label will be positioned horizontally. |
| Label Background Color | The color of the edge label background. The value is relevant only when Label Background Shape is used. |
| Label Background Shape | The shape of the label background. Default is None. The value is relevant only when Label Background Color is used. |
| Label Background Transparency | The opacity of the color of the edge background. Zero means totally transparent, and 255 means totally opaque. |
| Label Font Face | The font used for the edge label. |
| Label Font Size | The size of the font used for the edge label. |
| Label Position | The position of the edge label relative to the edge. |
| Label Rotation | The rotation of the edge label, default is 0 |
| Label Transparency | The opacity of the color of the edge label. Zero means totally transparent, and 255 means totally opaque. |
| Label Width | The width of the edge label. |
| Line Type | The type of stoke used to render the line (solid, dashed, etc.) |
| Paint | The color of the whole edge (including the stroke and arrows) when it is selected or unselected. |
| Color (Selected) | The color of the whole edge (stroke and arrows) when selected. It can be found in the drop-down menu Properties → Paint → Color (Unselected) → Color (Selected). |
| Color (Unselected) | The color of the whole edge (stroke and arrows) when it is not selected. It can be found in the drop-down menu Properties → Paint → Color (Unselected) → Color (Unselected). |
| Source Arrow Selected Paint | The selected color of the arrow on the source node end of the edge. It can be added to the list from the drop-down menu Properties → Paint → Color (Selected) → Source Arrow Selected Paint. |
| Label Color | The color of the edge label. It can be found in the drop-down menu Properties → Paint → Label Color. |
| Source Arrow Shape | The shape of the arrow on the source node end of the edge. |
| Source Arrow Size | The size of the edge source arrow. |
| Source Arrow Unselected Paint | The color of the arrow on the source node end of the edge. It can be found in the drop-down menu Properties → Paint → Color (Unselected) → Source Arrow Unselected Paint. |
| Stacking | Determines how edges are visualized when there are multiple edges between a pair of nodes. |
| Stacking Density | The spacing between edges when there are multiple edges between a pair of nodes. |
| Stroke Color (Selected) | The color of the edge line when selected. It can be found in the drop-down menu Properties → Paint → Color (Selected) → Stroke Color (Selected). |
| Stroke Color (Unselected) | The color of the edge line. It can be found in the drop-down menu Properties → Paint → Color (Unselected) → Stroke Color (Unselected). |
| Target Arrow Selected Paint | The selected color of the arrow on the target node end of the edge. It can be found in the drop-down menu Properties → Paint → Color (Selected) → Target Arrow Selected Paint. |
| Target Arrow Shape | The shape of the arrow on the target node end of the edge. |
| Target Arrow Size | The size of the edge target arrow. |
| Target Arrow Unselected Paint | The color of the arrow on the target node end of the edge. It can be found in the drop-down menu Properties → Paint → Color (Unselected) → Target Arrow Unselected Paint. |
| Tooltip | The text of the tooltip that appears when a mouse hovers over the edge. |
| Transparency | The opacity of the of the edge. Zero means totally transparent, and 255 means totally opaque. |
| Visible | Hides the edge if set to false. By default, this value is set to true. |
| Width | The width of the edge line. |
| Z Order | The ordering for overlapping edges. Edges with a lower value will be underneath edges with a higher value. Default value of this will be ignored. The value will be used only when mapping function is defined. |
| Edge color to arrows (checkbox) | If true then Color (Unselected) is used for the whole edge, including its line and arrows. It can be found in the drop-down menu Properties → Paint → Color (Unselected) → Edge color to arrows. |
| Network Properties | Description |
|---|---|
| Annotation Selection | Whether or not annotations are selectable. If this is false, users cannot select annotations. Avoid changing this property directly through the Style panel. |
| Background Paint | The background color of the network view. This property is visible by default. |
| Center X Location | The X location of network view center. |
| Center Y Location | The Y location of network view center. |
| Edge Selection | Whether or not edges are selectable. If this is false, users cannot select edges. Avoid changing this property directly through the Style panel. |
| Force High Detail | The Level of Detail policy for a network view. If this is true, the view elements will always be rendered in high detail. If false, Cytoscape will choose when it's best to lower the level of detail to improve performance. |
| Node Label Selection | Whether or not node labels can be selected and repositioned manually. Avoid changing this property directly through the Style panel. |
| Node Selection | Whether or not nodes are selectable. If this is false, users cannot select nodes. Avoid changing this property directly through the Style panel. |
| Scale Factor | The zoom level of the network view. |
| Size | The size (width and height) of the network view. It can be found in the drop-down menu Properties → Size → Size. |
| Height | The height of the network view. It can be found in the drop-down menu Properties → Size → Height. |
| Width | The width of the network view. It can be found in the drop-down menu Properties → Size → Width. |
| Title | The title of the network view. This property is visible by default. |
| Column Properties | Description |
|---|---|
| Cell Background Paint | The background color of the table/column cell. |
| Cell Font Face | The font used for the table/column cell text. |
| Cell Font Size | The size of the font used for table/column cell text. |
| Cell Image/Sparkline | Adds an image or chart in the table/column cell. |
| Cell Text Paint | The color of the text in the table/column cell. |
| Cell Tooltip | The tooltip showed on the table/column cell text. |
| Available Shapes and Line Styles | Sample |
|---|---|
| Node Shapes | ![]() |
| Line Types | ![]() |
| Arrow Shapes | ![]() |
| Edge Stacking | Sample |
|---|---|
Auto Bend ![]() | When Auto Bend is selected the first edge between a pair of nodes will be drawn as a straight line, then subsequent edges are drawn as bends at incrementally greater distances from the first edge. This creates a fan-out style visualization. ![]() |
Haystack | Haystack edges are drawn as straight lines from the source node to the target node, randomly placed along some angle from each node’s centre. In this manner, many parallel haystack edges make a tight bundle, especially when semi-transparent. This makes haystack edges an effective way to visualise graphs with a high number of parallel edges. Note: When haystack edges are enabled edge arrows will not be visible. ![]() |
| Symbol | Description |
|---|---|
| - | Mapping is not supported for the specified property. |
| + | Mapping is fully supported for the specified property. |
| o | Mapping is partially supported for the specified property. Support for "continuous to continuous" mapping is not supported. |
| Node Property | Passthrough Mapping | Discrete Mapping | Continuous Mapping | |
|---|---|---|---|---|
| Color | Fill Color | + | + | + |
| Transparency | + | + | + | |
| Border Paint | + | + | + | |
| Border Transparency | + | + | + | |
| Label Color | + | + | + | |
| Label Transparency | + | + | + | |
| Numeric | Size/Width/Height | + | + | + |
| Label Font Size | + | + | + | |
| Border Width | + | + | + | |
| Label Width | + | + | + | |
| Padding (Compound Node) | + | + | + | |
| Image/Chart Size | + | + | + | |
| Other | Border Line Type | + | + | o |
| Shape | + | + | o | |
| Shape (Compound Node) | + | + | o | |
| Label | + | + | o | |
| Tooltip | + | + | o | |
| Label Font Face | + | + | o | |
| Label Position | - | + | o | |
| Nested Network Image Visible | + | + | o | |
| Image/Chart | o | + | o | |
| Image/Chart Position | - | + | o | |
| Label Rotation | + | + | + | |
| Edge Property | Passthrough Mapping | Discrete Mapping | Continuous Mapping | |
|---|---|---|---|---|
| Color | Color | + | + | + |
| Transparency | + | + | + | |
| Target Arrow Color | + | + | + | |
| Source Arrow Color | + | + | + | |
| Label Color | + | + | + | |
| Label Transparency | + | + | + | |
| Numeric | Width | + | + | + |
| Label Font Size | + | + | + | |
| Label Width | + | + | + | |
| Other | Line Type | + | + | o |
| Bend | - | + | o | |
| Curved | + | + | o | |
| Source Arrow Shape | + | + | o | |
| Target Arrow Shape | + | + | o | |
| Label | + | + | o | |
| Tooltip | + | + | o | |
| Label Font Face | - | + | o | |
| Stacking | - | + | o | |
| Stacking Density | + | + | o | |
**Node Size Passthrough Mapping**
**Image Passthrough Mapping**
## Images, Charts and Gradients
Cytoscape allows you to set custom graphics to nodes. Using the **Style**
interface, you can map **Image/Chart** properties to nodes like any
other property. Cytoscape provides a set of images and you can also add
your own images in the **Image Manager**, as well as remove or modify
existing ones.
### Managing Images
The **Image Manager** is available under the menu option **View → Open
Image Manager...**:

- You can add images by drag-and-drop of image files.
- To add images from a web browser or local file system, click the **Add Images** button and add
your images under **From File** or **From URL**.

- If you want to add one or more images from a folder, select all the
images you want to add under **From File**.
- To remove images from the current session's image library, simply
select one or more images and press the **Remove
Selected Images** button (trash icon).
### Using Graphics in Styles

| Editor Type | Supported Data Type | Properties |
|---|---|---|
| Color Gradient Editor | Color | node/edge/border/label colors |
| Continuous-Continuous Editor | Numbers | size/width/transparency |
| Continuous-Discrete Editor | All others | font/shape/text/graphics/position/etc. |
| 1 handle (no gradient) | 2 handles |
|---|---|
![]() | ![]() |
type: argument1="val1" argument2="val2"
where type is the type of chart or gradient and the arguments are the instructions for constructing that chart or graphic.
To use **Enhanced Graphics**, first add the desired mapping to a new column in the **Node Table**. Then, create a **Style** for one of the **Custom Paint** properties using the new column in a **Passthrough Mapping**. This will add your custom defined chart or graphic to the nodes.
An example of using **Enhanced Graphics** to add a second label to nodes is shown below. In this case, the yeast ORF ID is added as a secondary node label, and offset to the upper right of the node. For the full list of supported graphics types can be found here. The mapping for this is as follows:
label: attribute=name labelsize=10 outline=false background=false color=orange

**label**
This chart type provides a mechanism to add text labels to nodes that have more display options than the simple labels provided by Cytoscape visual properties. Arguments:
- **color**: Specify the color of the label
- **attribute**: The attribute to get the label from.
- **background**: A boolean option that causes a translucent background to be painted behind the label and on top of the network.
- **bgcolor**: The color of the background.
- **dropShadow**: Add a drop shadow behind the label.
- **label**: The label to paint.
- **labelfont**: The font family to use for the labels
- **labelsize**: The font size to use for the labels
- **labelstyle**: The font style to use for the labels
- **outline**: Outline the font.
- **outlineColor**: The color of the outline.
For a more detailed description of the workflow for adding **Enhanced Graphics**, refer to the tutorial.
## Managing Styles
All Cytoscape style settings are initially loaded from a default file
that cannot be altered by users. When users make changes to the
properties, a `session_syle.xml` file is saved in the session file. This
means that if you save your session, you will not lose your properties.
No other style files are saved during normal operation.
### Saving Styles
Styles are automatically saved with the session they were created in.
Before Cytoscape exits, you will be prompted to make sure you save the
session before quitting. It is also possible to save your styles in a
file separate from the session file. To do this, navigate to the menu
option **File → Export → Styles to File...**, and save the selected styles to a
file. This feature can be used to share styles with other users.

You can also change the default list of styles for all future sessions
of Cytoscape. To do this, click the **Options**

drop-down in the **Style** section, and select **Make Current Styles
Default**. This will save the current styles as a `default_vizmap.xml`
file to your `CytoscapeConfiguration` directory (found in your home
directory). These styles will then be loaded each time Cytoscape is
started.
#### Style File Formats
The Cytoscape-native style format is **Style XML**. If you want to share
style files with other Cytoscape users, you need to export them to this
format.
From version 3.1.0 on, Cytoscape can also export
[Cytoscape.js](http://cytoscape.github.io/cytoscape.js/#style)
compatible JSON file. Since Cytoscape.js is an independent JavaScript
library, and there are some differences between Cytoscape and
Cytoscape.js, not all properties are mapped to JSON. The following
properties are not supported by the exporter:
- Custom Graphics and their locations
- Edge Bends
- Nested Networks
- Network Background (Note: This can be set manually as standard CSS
in Cytoscape.js)
The **Continuous-Discrete Editor** is used to create mappings from numerical
data values to discrete properties, such as fonts, shapes, or line
styles. To edit a value for a specific region, double-click on the icon
on the track.
### Importing Styles
To import existing styles, navigate to the menu option **File → Import →
Styles from File...** and select a `styles.xml` (Cytoscape 3 format) file.
Imported properties will supplement existing properties or override
existing ones if the properties have the same name. You can also specify
a style file using the -V command line option. Properties loaded from
the command line will override any default properties. Note that legacy
menu, but not by command line.