1

i have a file with the following data the first field is UNIXTimestamp,

1351734672.095 25
1351734674.449 52
1351734676.638 612
1351734680.669 44
1351734681.121 16
1351734684.182 15
1351734684.386 17
1351734686.823 16
1351734689.807 22
1351734689.807 28

how do i load the x,y from this file to python?

#!/usr/bin/env python

from numpy import *
import Gnuplot

g = Gnuplot.Gnuplot()
g.title('My Systems Plot')
g.xlabel('Date')
g.ylabel('Value')
g('set term png')
g('set out "output.png"')
proc = open("response","r")
databuff = Gnuplot.Data(proc.read(), title="test")
g.plot(databuff)

currently this is not working...any ideas??

UPDATE:

#!/usr/bin/env python
from numpy import *
import Gnuplot

g = Gnuplot.Gnuplot()
g.title('My Systems Plot')
g.xlabel('Date')
g.ylabel('Response')
g('set auto x')
g('set term png')
g('set out "output.png"')
g('set timefmt "%s"')
g('set xdata time')
g('set xtic rotate by 45 scale 1 font ",2"')
g('set key noenhanced')
g('set format x "%H:%M:%S"')
g('set grid')


databuff = Gnuplot.File("repo", using='1:2',title="test")
g.plot(databuff)

enter image description here

The time values on xaxis are overlapping with the graph..any ideas??

1 Answer 1

3

Using Gnuplot.File instead of Gnuplot.Data, it is possible to get the following plot:

output.png

#!/usr/bin/env python

#from numpy import *
import Gnuplot

g = Gnuplot.Gnuplot()
g.title('My Systems Plot')
g.xlabel('Date')
g.ylabel('Value')
g('set term png')
g('set out "output.png"')
#proc = open("response","r")
#databuff = Gnuplot.Data(proc.read(), title="test")

databuff = Gnuplot.File("response", using='1:2',with_='line', title="test")
g.plot(databuff)


UPDATE:

For the overlap, you can change 45 to -45 :

#g('set xtic rotate by 45 scale 1 font ",2"')
g('set xtic rotate by -45 scale 1 font ",2"')

enter image description here

Sign up to request clarification or add additional context in comments.

2 Comments

No need to import numpy here. Otherwise +1, better answer than mine.
I commented the numpy import line

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.