NetDraw is free and may be freely distributed. For more information about the program, contact its author, Steve Borgatti, at steve@analytictech.com or +1 978 456 7372.
NetDraw is a program for drawing networks. It uses (or will use) several different algorithms for laying out nodes in 2-dimensional space (3D will come later). Netdraw reads UCINET system files, UCINET DL text files, and Pajek text files (.net, .clu and .vec). It can save data to Pajek and to Mage. It can save diagrams as EMF, WMF, BMP and JPG files. It can also print directly from the program at high resolution (much better than printing document containing embedded graphics).
The program has a number of useful features, including:
Multiple Relations. You can read in multiple relations on the same nodes, and switch between them (or combine them) easily.
Valued Relations. If you read in valued data, you can sequentially “step” through different levels of dichotomization, effectively selecting only strong ties, only weak ties, etc. In addition, you have the option of letting the thickness of lines correspond to strength of ties.
Node Attributes. The program makes it convenient to read in multiple node attributes for use in setting colors and sizes of nodes (as well as rims, labels, etc.). In addition, the program makes it easy to turn on and off groups of nodes defined by a variable, such as males or members of a given organization. [In addition, there are buttons for deleting isolates and pendants.]
Analysis. A limited set of analytical procedures are included, such as the identification of isolates, components, k-cores, cut-points and bi-components (blocks).
2-mode Data. NetDraw can read 2-mode data, such as the Davis, Gardner and Gardner data and automatically create a bipartite representation of it.
Saving Pictures. Network diagrams can be saved as bitmaps (.bmp), jpegs (.jpg), windows metafiles (.wmf) and enhanced metafiles (.emf). In addition, the program exports to Pajek and Mage.
Printing. There is a Print button. This is very good for creating publication-quality diagrams because the results utilize the full resolution of the printer. (When you save an image like a bitmap to disk and insert into a document and then print that, the image resolution is no better than your screen’s.)
Appearance Options. A full range of options is implemented, including the ability to change sizes and colors of nodes, node-rims, labels, lines and background. Different node shapes are not yet implemented. You can also rotate, flip, shift, resize and zoom configurations.
Layout. Two basic kinds of layouts are implemented at present: a circle and an MDS/ spring embedding based on geodesic distance. The MDS includes options for exaggerating clustering, biasing toward equal-length edges, and turning on/off node-repulsion.
Documentation
There is no documentation yet, nor online help. But the whole idea of the program is that it should be easy to figure out. For those users who do not use UCINET or Pajek, however, here is some documention on the DL text file format for reading data in.
The DL protocol is a flexible language for describing data and itself encompasses a number of different formats. Three of these formats – nodelist, edgelist and fullmatrix – are described here. A sample nodelist file called borg4cent.txt is provided with the program.
Nodelist Format
This is usually the most efficient format. Just create a text file using any word processor (make sure to remember to save as text). Enter the data in the following format:
dl
n = 50
format = nodelist
data:
1 7 8 2
3 19 21 49 6
2 6
…
The "DL" at the top is required and identifies the type of file. The "n=50" tells program to expect up to 50 distinct nodes. The "format = nodelist" tells the program to expect the node list format (as opposed to edge list and full matrix). The word "data:" (don't forget the colon) marks the end of information about the data and the beginning of the data itself.
The first line of the data ("1 7 8 2" says that person 1 has ties to three people, who are 7, 8 and 2. The ordering of the people is arbitrary and makes no difference. The second line, "3 19 21 49 6" says that person 3 has ties to four people, who are 19, 21, 49 and 6.
Important note: each value is separated by a space (or tab). Each value is a "sequential" ID number. By "sequential" I mean that the numbers run from 1 to n. You can't have arbitrary ID numbers like "1001" or non-numeric IDs like "BOS007" or "Steve" unless you add the words "Labels embedded" some time before the "data:" statement, as follows:
dl
n = 50
labels embedded
format = nodelist
data:
binlad geobus tonblai kenski
bilste jeabar stebor judcla jandoe
kenski jandoe
…
These names or labels must be less than 20 characters long and should not contain spaces or punctuation (as in "osama bin laden" unless they are enclosed in full quotes.
A sample data file called borg4cent.txt using nodelist format is provided with the program.
Edgelist Format
This format requires more typing but is convenient when entering data as one encounters it, such as when pulling links between people from newspaper articles. Again, create a text file using any word processor (make sure to remember to save as text). Enter the data in the following format:
dl
n = 50
format = edgelist
data:
1 7
1 8
1 2
3 19
…
Note that "nodelist" has been replaced by "edgelist" in the format statement. Then, after "data:", the data are in pairs, separated by spaces or tabs. The first line ("1 7" says that persons 1 and 7 have a tie. The second line says that persons 1 and 8 have a tie. The ordering of nodes within in a pair, and of pairs within the file, is immaterial.
As with the nodelist format, you can also use non-sequential, non-numeric IDs as long as you add the words "Labels embedded" some time before the "data:" statement, as follows:
dl
n = 50
labels embedded
format = edgelist
data:
binlad geobus
binlad tonblai
binlad kenski
bilste jeabar
…
FullMatrix Format
This format works well for small datasets that contain a lot of ties. Again, create a text file using any word processor or with Excel (making sure to remember to save as text). Enter the data in the following format:
dl
n = 5
format = fullmatrix
data:
0 0 1 0 0
0 0 0 1 1
1 0 0 1 0
0 1 1 0 0
0 1 0 0 0
Here, the format statement reads "format=fullmatrix". Then, after "data:", the data are in the form of a person-by-person table. Since n=5, there are 5 rows and 5 columns. The first row has values 0, 0, 1, 0, 0, indicating that person one has ties only with the third person. In contrast, the second row of the table shows that person 2 has ties with person 4 and person 5.
Note that this format does not have id codes at all: people are identified by their position in the table. The third row corresponds to the third person. The fourth column corresponds to the fourth person, and so on.
However, non-numeric labels can be added with "labels embedded" statement as follows:
dl
n = 5
labels embedded
format = fullmatrix
data:
Bill Jan Jim Sue Zoe
Bill 0 0 1 0 0
Jan 0 0 0 1 1
Jim 1 0 0 1 0
Sue 0 1 1 0 0
Zoe 0 1 0 0 0
Typing the data is the hardest part. Once you do that, the rest is easy.
Technical Support
Feel free to contact me (steve@analytictech.com; +1 978 456 7372) for help or to report bugs or to make suggestions for improvements.
NetDraw Introduction
[来源:]
[作者:]

