I would like to have my data in a format so that I can create a
contour plot.
My data is in a file with a format, where there may be multiple fields
field = 1
1a 0
2a 0
3a 5
4a 5
5a 5
6a 5
7a 5
8a 5
9a 0
10a 0
1b 0
2b 0
3b 5
4b 5
5b 5
6b 5
7b 5
8b 5
9b 0
10b 0
field = 2
1a 0
2a 0
3a 0
4a 4
5a 4
6a 4
7a 4
8a 0
9a 0
10a 0
1b 0
2b 0
3b 0
4b 4
5b 4
6b 4
7b 4
8b 0
9b 0
10b 0
field = 3
1a 0
2a 0
3a 0
4a 0
5a 3
6a 3
7a 0
8a 0
9a 0
10a 0
1b 0
2b 0
3b 0
4b 0
5b 3
6b 3
7b 0
8b 0
9b 0
10b 0
where the value is how far from the center it will be displaced,
a b a
b a b
10 0000000000|0000000000 0000000000|0000000000 0000000000|
0000000000
9 0000000000|0000000000 0000000000|0000000000 0000000000|
0000000000
8 0000011111|1111100000 0000000000|0000000000 0000000000|
0000000000
7 0000011111|1111100000 0000001111|1111000000 0000000000|
0000000000
6 0000011111|1111100000 0000001111|1111000000 0000000111|
1110000000
5 0000011111|1111100000 0000001111|1111000000 0000000111|
1110000000
4 0000011111|1111100000 0000001111|1111000000 0000000000|
0000000000
3 0000011111|1111100000 0000000000|0000000000 0000000000|
0000000000
2 0000000000|0000000000 0000000000|0000000000 0000000000|
0000000000
1 0000000000|0000000000 0000000000|0000000000 0000000000|
0000000000
I could possibly have many of these that I will add together and
normalize to one.
Also, there are 60 a and b blocks, the middle 40 are 0.5 times the
width of the outer 20.
I thought about filling an array, but there is not a one to one
symmetry.
I cannot seem to get my head around this. Can anybody help me get
started?
I have tried to use a dictionary, but cannot seem to get it to work
the way I want.
I try this,
---------------------------------------------------------------------------------
f = open('TEST1.MLC')
fields = {}
for line in f:
if line.split()[0] == 'Field':
field = int(line.split()[-1])
elif line.split()[0] == 'Leaf':
fields[field] = line.split()[-1]
else:
line = f.next()
---------------------------------------------------------------------------------
and get,
---------------------------------------------------------------------------------
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
line.split()[0]
IndexError: list index out of range
---------------------------------------------------------------------------------
Here is my data file,
---------------------------------------------------------------------------------
File Rev = G
Treatment = Dynamic Dose
Last Name = Fodness
First Name = Bryan
Patient ID = 0001
Number of Fields = 4
Number of Leaves = 120
Tolerance = 0.50
Field = 10
Index = 0.0000
Carriage Group = 1
Operator =
Collimator = 0.0
Leaf 1A = 0.00
Leaf 2A = 0.00
Leaf 3A = 0.00
Leaf 4A = 0.00
Leaf 5A = 0.00
Leaf 6A = 0.00
Leaf 7A = 0.00
Leaf 8A = 0.00
Leaf 9A = 0.00
Leaf 10A = 0.00
Leaf 11A = 0.00
Leaf 12A = 0.00
Leaf 13A = 0.00
Leaf 14A = 0.00
Leaf 15A = 0.00
Leaf 16A = 0.00
Leaf 17A = 0.00
Leaf 18A = 0.00
Leaf 19A = 0.00
Leaf 20A = 0.00
Leaf 21A = 5.00
Leaf 22A = 5.00
Leaf 23A = 5.00
Leaf 24A = 5.00
Leaf 25A = 5.00
Leaf 26A = 5.00
Leaf 27A = 5.00
Leaf 28A = 5.00
Leaf 29A = 5.00
Leaf 30A = 5.00
Leaf 31A = 5.00
Leaf 32A = 5.00
Leaf 33A = 5.00
Leaf 34A = 5.00
Leaf 35A = 5.00
Leaf 36A = 5.00
Leaf 37A = 5.00
Leaf 38A = 5.00
Leaf 39A = 5.00
Leaf 40A = 5.00
Leaf 41A = 0.00
Leaf 42A = 0.00
Leaf 43A = 0.00
Leaf 44A = 0.00
Leaf 45A = 0.00
Leaf 46A = 0.00
Leaf 47A = 0.00
Leaf 48A = 0.00
Leaf 49A = 0.00
Leaf 50A = 0.00
Leaf 51A = 0.00
Leaf 52A = 0.00
Leaf 53A = 0.00
Leaf 54A = 0.00
Leaf 55A = 0.00
Leaf 56A = 0.00
Leaf 57A = 0.00
Leaf 58A = 0.00
Leaf 59A = 0.00
Leaf 60A = 0.00
Leaf 1B = 0.00
Leaf 2B = 0.00
Leaf 3B = 0.00
Leaf 4B = 0.00
Leaf 5B = 0.00
Leaf 6B = 0.00
Leaf 7B = 0.00
Leaf 8B = 0.00
Leaf 9B = 0.00
Leaf 10B = 0.00
Leaf 11B = 0.00
Leaf 12B = 0.00
Leaf 13B = 0.00
Leaf 14B = 0.00
Leaf 15B = 0.00
Leaf 16B = 0.00
Leaf 17B = 0.00
Leaf 18B = 0.00
Leaf 19B = 0.00
Leaf 20B = 0.00
Leaf 21B = 5.00
Leaf 22B = 5.00
Leaf 23B = 5.00
Leaf 24B = 5.00
Leaf 25B = 5.00
Leaf 26B = 5.00
Leaf 27B = 5.00
Leaf 28B = 5.00
Leaf 29B = 5.00
Leaf 30B = 5.00
Leaf 31B = 5.00
Leaf 32B = 5.00
Leaf 33B = 5.00
Leaf 34B = 5.00
Leaf 35B = 5.00
Leaf 36B = 5.00
Leaf 37B = 5.00
Leaf 38B = 5.00
Leaf 39B = 5.00
Leaf 40B = 5.00
Leaf 41B = 0.00
Leaf 42B = 0.00
Leaf 43B = 0.00
Leaf 44B = 0.00
Leaf 45B = 0.00
Leaf 46B = 0.00
Leaf 47B = 0.00
Leaf 48B = 0.00
Leaf 49B = 0.00
Leaf 50B = 0.00
Leaf 51B = 0.00
Leaf 52B = 0.00
Leaf 53B = 0.00
Leaf 54B = 0.00
Leaf 55B = 0.00
Leaf 56B = 0.00
Leaf 57B = 0.00
Leaf 58B = 0.00
Leaf 59B = 0.00
Leaf 60B = 0.00
Note = 0
Shape = 4
500 500
500 -500
-500 -500
-500 500
Magnification = 1.00
Field = 8
Index = 0.4000
Carriage Group = 1
Operator =
Collimator = 0.0
Leaf 1A = 0.00
Leaf 2A = 0.00
Leaf 3A = 0.00
Leaf 4A = 0.00
Leaf 5A = 0.00
Leaf 6A = 0.00
Leaf 7A = 0.00
Leaf 8A = 0.00
Leaf 9A = 0.00
Leaf 10A = 0.00
Leaf 11A = 0.00
Leaf 12A = 0.00
Leaf 13A = 0.00
Leaf 14A = 0.00
Leaf 15A = 0.00
Leaf 16A = 0.00
Leaf 17A = 0.00
Leaf 18A = 0.00
Leaf 19A = 0.00
Leaf 20A = 0.00
Leaf 21A = 0.00
Leaf 22A = 0.00
Leaf 23A = 4.00
Leaf 24A = 4.00
Leaf 25A = 4.00
Leaf 26A = 4.00
Leaf 27A = 4.00
Leaf 28A = 4.00
Leaf 29A = 4.00
Leaf 30A = 4.00
Leaf 31A = 4.00
Leaf 32A = 4.00
Leaf 33A = 4.00
Leaf 34A = 4.00
Leaf 35A = 4.00
Leaf 36A = 4.00
Leaf 37A = 4.00
Leaf 38A = 4.00
Leaf 39A = 0.00
Leaf 40A = 0.00
Leaf 41A = 0.00
Leaf 42A = 0.00
Leaf 43A = 0.00
Leaf 44A = 0.00
Leaf 45A = 0.00
Leaf 46A = 0.00
Leaf 47A = 0.00
Leaf 48A = 0.00
Leaf 49A = 0.00
Leaf 50A = 0.00
Leaf 51A = 0.00
Leaf 52A = 0.00
Leaf 53A = 0.00
Leaf 54A = 0.00
Leaf 55A = 0.00
Leaf 56A = 0.00
Leaf 57A = 0.00
Leaf 58A = 0.00
Leaf 59A = 0.00
Leaf 60A = 0.00
Leaf 1B = 0.00
Leaf 2B = 0.00
Leaf 3B = 0.00
Leaf 4B = 0.00
Leaf 5B = 0.00
Leaf 6B = 0.00
Leaf 7B = 0.00
Leaf 8B = 0.00
Leaf 9B = 0.00
Leaf 10B = 0.00
Leaf 11B = 0.00
Leaf 12B = 0.00
Leaf 13B = 0.00
Leaf 14B = 0.00
Leaf 15B = 0.00
Leaf 16B = 0.00
Leaf 17B = 0.00
Leaf 18B = 0.00
Leaf 19B = 0.00
Leaf 20B = 0.00
Leaf 21B = 0.00
Leaf 22B = 0.00
Leaf 23B = 4.00
Leaf 24B = 4.00
Leaf 25B = 4.00
Leaf 26B = 4.00
Leaf 27B = 4.00
Leaf 28B = 4.00
Leaf 29B = 4.00
Leaf 30B = 4.00
Leaf 31B = 4.00
Leaf 32B = 4.00
Leaf 33B = 4.00
Leaf 34B = 4.00
Leaf 35B = 4.00
Leaf 36B = 4.00
Leaf 37B = 4.00
Leaf 38B = 4.00
Leaf 39B = 0.00
Leaf 40B = 0.00
Leaf 41B = 0.00
Leaf 42B = 0.00
Leaf 43B = 0.00
Leaf 44B = 0.00
Leaf 45B = 0.00
Leaf 46B = 0.00
Leaf 47B = 0.00
Leaf 48B = 0.00
Leaf 49B = 0.00
Leaf 50B = 0.00
Leaf 51B = 0.00
Leaf 52B = 0.00
Leaf 53B = 0.00
Leaf 54B = 0.00
Leaf 55B = 0.00
Leaf 56B = 0.00
Leaf 57B = 0.00
Leaf 58B = 0.00
Leaf 59B = 0.00
Leaf 60B = 0.00
Note = 0
Shape = 4
400 400
400 -400
-400 -400
-400 400
Magnification = 1.00
Field = 4
Index = 0.8000
Carriage Group = 1
Operator =
Collimator = 0.0
Leaf 1A = 0.00
Leaf 2A = 0.00
Leaf 3A = 0.00
Leaf 4A = 0.00
Leaf 5A = 0.00
Leaf 6A = 0.00
Leaf 7A = 0.00
Leaf 8A = 0.00
Leaf 9A = 0.00
Leaf 10A = 0.00
Leaf 11A = 0.00
Leaf 12A = 0.00
Leaf 13A = 0.00
Leaf 14A = 0.00
Leaf 15A = 0.00
Leaf 16A = 0.00
Leaf 17A = 0.00
Leaf 18A = 0.00
Leaf 19A = 0.00
Leaf 20A = 0.00
Leaf 21A = 0.00
Leaf 22A = 0.00
Leaf 23A = 0.00
Leaf 24A = 0.00
Leaf 25A = 0.00
Leaf 26A = 0.00
Leaf 27A = 2.00
Leaf 28A = 2.00
Leaf 29A = 2.00
Leaf 30A = 2.00
Leaf 31A = 2.00
Leaf 32A = 2.00
Leaf 33A = 2.00
Leaf 34A = 2.00
Leaf 35A = 0.00
Leaf 36A = 0.00
Leaf 37A = 0.00
Leaf 38A = 0.00
Leaf 39A = 0.00
Leaf 40A = 0.00
Leaf 41A = 0.00
Leaf 42A = 0.00
Leaf 43A = 0.00
Leaf 44A = 0.00
Leaf 45A = 0.00
Leaf 46A = 0.00
Leaf 47A = 0.00
Leaf 48A = 0.00
Leaf 49A = 0.00
Leaf 50A = 0.00
Leaf 51A = 0.00
Leaf 52A = 0.00
Leaf 53A = 0.00
Leaf 54A = 0.00
Leaf 55A = 0.00
Leaf 56A = 0.00
Leaf 57A = 0.00
Leaf 58A = 0.00
Leaf 59A = 0.00
Leaf 60A = 0.00
Leaf 1B = 0.00
Leaf 2B = 0.00
Leaf 3B = 0.00
Leaf 4B = 0.00
Leaf 5B = 0.00
Leaf 6B = 0.00
Leaf 7B = 0.00
Leaf 8B = 0.00
Leaf 9B = 0.00
Leaf 10B = 0.00
Leaf 11B = 0.00
Leaf 12B = 0.00
Leaf 13B = 0.00
Leaf 14B = 0.00
Leaf 15B = 0.00
Leaf 16B = 0.00
Leaf 17B = 0.00
Leaf 18B = 0.00
Leaf 19B = 0.00
Leaf 20B = 0.00
Leaf 21B = 0.00
Leaf 22B = 0.00
Leaf 23B = 0.00
Leaf 24B = 0.00
Leaf 25B = 0.00
Leaf 26B = 0.00
Leaf 27B = 2.00
Leaf 28B = 2.00
Leaf 29B = 2.00
Leaf 30B = 2.00
Leaf 31B = 2.00
Leaf 32B = 2.00
Leaf 33B = 2.00
Leaf 34B = 2.00
Leaf 35B = 0.00
Leaf 36B = 0.00
Leaf 37B = 0.00
Leaf 38B = 0.00
Leaf 39B = 0.00
Leaf 40B = 0.00
Leaf 41B = 0.00
Leaf 42B = 0.00
Leaf 43B = 0.00
Leaf 44B = 0.00
Leaf 45B = 0.00
Leaf 46B = 0.00
Leaf 47B = 0.00
Leaf 48B = 0.00
Leaf 49B = 0.00
Leaf 50B = 0.00
Leaf 51B = 0.00
Leaf 52B = 0.00
Leaf 53B = 0.00
Leaf 54B = 0.00
Leaf 55B = 0.00
Leaf 56B = 0.00
Leaf 57B = 0.00
Leaf 58B = 0.00
Leaf 59B = 0.00
Leaf 60B = 0.00
Note = 0
Shape = 4
200 200
200 -200
-200 -200
-200 200
Magnification = 1.00
Field = 1
Index = 1.0000
Carriage Group = 1
Operator =
Collimator = 0.0
Leaf 1A = 0.00
Leaf 2A = 0.00
Leaf 3A = 0.00
Leaf 4A = 0.00
Leaf 5A = 0.00
Leaf 6A = 0.00
Leaf 7A = 0.00
Leaf 8A = 0.00
Leaf 9A = 0.00
Leaf 10A = 0.00
Leaf 11A = 0.00
Leaf 12A = 0.00
Leaf 13A = 0.00
Leaf 14A = 0.00
Leaf 15A = 0.00
Leaf 16A = 0.00
Leaf 17A = 0.00
Leaf 18A = 0.00
Leaf 19A = 0.00
Leaf 20A = 0.00
Leaf 21A = 0.00
Leaf 22A = 0.00
Leaf 23A = 0.00
Leaf 24A = 0.00
Leaf 25A = 0.00
Leaf 26A = 0.00
Leaf 27A = 0.00
Leaf 28A = 0.00
Leaf 29A = 0.00
Leaf 30A = 0.50
Leaf 31A = 0.50
Leaf 32A = 0.00
Leaf 33A = 0.00
Leaf 34A = 0.00
Leaf 35A = 0.00
Leaf 36A = 0.00
Leaf 37A = 0.00
Leaf 38A = 0.00
Leaf 39A = 0.00
Leaf 40A = 0.00
Leaf 41A = 0.00
Leaf 42A = 0.00
Leaf 43A = 0.00
Leaf 44A = 0.00
Leaf 45A = 0.00
Leaf 46A = 0.00
Leaf 47A = 0.00
Leaf 48A = 0.00
Leaf 49A = 0.00
Leaf 50A = 0.00
Leaf 51A = 0.00
Leaf 52A = 0.00
Leaf 53A = 0.00
Leaf 54A = 0.00
Leaf 55A = 0.00
Leaf 56A = 0.00
Leaf 57A = 0.00
Leaf 58A = 0.00
Leaf 59A = 0.00
Leaf 60A = 0.00
Leaf 1B = 0.00
Leaf 2B = 0.00
Leaf 3B = 0.00
Leaf 4B = 0.00
Leaf 5B = 0.00
Leaf 6B = 0.00
Leaf 7B = 0.00
Leaf 8B = 0.00
Leaf 9B = 0.00
Leaf 10B = 0.00
Leaf 11B = 0.00
Leaf 12B = 0.00
Leaf 13B = 0.00
Leaf 14B = 0.00
Leaf 15B = 0.00
Leaf 16B = 0.00
Leaf 17B = 0.00
Leaf 18B = 0.00
Leaf 19B = 0.00
Leaf 20B = 0.00
Leaf 21B = 0.00
Leaf 22B = 0.00
Leaf 23B = 0.00
Leaf 24B = 0.00
Leaf 25B = 0.00
Leaf 26B = 0.00
Leaf 27B = 0.00
Leaf 28B = 0.00
Leaf 29B = 0.00
Leaf 30B = 0.50
Leaf 31B = 0.50
Leaf 32B = 0.00
Leaf 33B = 0.00
Leaf 34B = 0.00
Leaf 35B = 0.00
Leaf 36B = 0.00
Leaf 37B = 0.00
Leaf 38B = 0.00
Leaf 39B = 0.00
Leaf 40B = 0.00
Leaf 41B = 0.00
Leaf 42B = 0.00
Leaf 43B = 0.00
Leaf 44B = 0.00
Leaf 45B = 0.00
Leaf 46B = 0.00
Leaf 47B = 0.00
Leaf 48B = 0.00
Leaf 49B = 0.00
Leaf 50B = 0.00
Leaf 51B = 0.00
Leaf 52B = 0.00
Leaf 53B = 0.00
Leaf 54B = 0.00
Leaf 55B = 0.00
Leaf 56B = 0.00
Leaf 57B = 0.00
Leaf 58B = 0.00
Leaf 59B = 0.00
Leaf 60B = 0.00
Note = 0
Shape = 4
50 50
50 -50
-50 -50
-50 50
Magnification = 1.00
CRC = B4DC
---------------------------------------------------------------------------------