Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Seitosh
Seitosh
Commits
87284c78
Commit
87284c78
authored
Jan 31, 2019
by
thomas.forbriger
Browse files
croposp [WP]: plot curve legend
parent
5be6954f
Changes
1
Hide whitespace changes
Inline
Side-by-side
src/python/visu/croposplot.py
View file @
87284c78
...
...
@@ -47,6 +47,7 @@ import sys
import
os
import
getopt
import
string
import
re
import
numpy
as
np
import
matplotlib.pyplot
as
plt
...
...
@@ -56,7 +57,9 @@ def usage():
print usage information
"""
print
(
__version__
)
print
(
'Usage: '
+
sys
.
argv
[
0
]
+
' [-v] file [file [file ...]]'
)
print
(
'Usage: '
+
sys
.
argv
[
0
]
+
' [-v]'
)
print
(
' [-o file] [-g|--grid] [--nologlog] [--nologx] [--nology]'
)
print
(
' file [file [file ...]]'
)
print
(
' or: '
+
sys
.
argv
[
0
]
+
' --help|-h'
)
...
...
@@ -71,9 +74,14 @@ def help():
Read multicolumn output files of spectral values as written by croposp and
create graphical diagrams.
file ... multicolumn spectral data output of croposp
-v be verbose
-o file write to file
file ... multicolumn spectral data output of croposp
-v be verbose
-o file write to file
--xlabel l set label "l" on x-axis
-g|--grid plot grid
--nologlog plot on linear scales
--nologx use linear scale for x-axis
--nology use linear scale for y-axis
"""
)
# ============================================================================
...
...
@@ -88,7 +96,7 @@ def main(argv=None):
try
:
opts
,
args
=
getopt
.
getopt
(
sys
.
argv
[
1
:],
'hvo:g'
,
[
'help'
,
'nologlog'
,
'nologx'
,
'nology'
,
'grid'
])
'nologx'
,
'nology'
,
'grid'
,
'xlabel'
])
except
getopt
.
GetoptError
as
err
:
print
(
err
.
msg
)
exit
(
0
)
...
...
@@ -101,6 +109,7 @@ def main(argv=None):
nologx
=
False
nology
=
False
grid
=
False
xlabel
=
'frequency / Hz'
for
(
opt
,
arg
)
in
opts
:
if
opt
==
'-v'
:
...
...
@@ -109,6 +118,8 @@ def main(argv=None):
DEBUG
=
True
elif
opt
==
'-o'
:
outfile
=
arg
elif
opt
in
(
'--xlabel'
):
xlabel
=
arg
elif
opt
in
(
"-g"
,
"--grid"
):
grid
=
True
elif
opt
in
(
"--nologlog"
):
...
...
@@ -158,14 +169,22 @@ def main(argv=None):
if
verbose
:
sys
.
stdout
.
write
(
"specplot: Disable logscale ...
\n
"
)
plt
.
xlabel
(
xlabel
)
for
specfile
in
args
:
if
verbose
:
print
(
'read file %s'
%
specfile
)
# read trace labels
labellines
=
list
(
filter
((
lambda
x
:
re
.
match
(
'^# #'
,
x
)),
open
(
specfile
).
readlines
()))
# read trace data
data
=
np
.
loadtxt
(
specfile
,
unpack
=
False
)
for
i
in
range
(
1
,
len
(
data
[
0
,:])):
label
=
re
.
sub
(
'^# #\d+: '
,
''
,
labellines
[
i
-
1
].
strip
())
if
verbose
:
print
(
'plot curve %d'
%
i
)
plt
.
plot
(
data
[:,
0
],
data
[:,
i
])
print
(
'plot curve %d: %s'
%
(
i
,
label
))
plt
.
plot
(
data
[:,
0
],
data
[:,
i
],
label
=
label
)
plt
.
legend
()
if
outfile
==
'x11'
:
plt
.
show
(
True
)
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment