SourceForge logo
SourceForge logo
Menu

matplotlib-users — Discussion related to using matplotlib

You can subscribe to this list here.

2003 Jan
Feb
Mar
Apr
May
(3)
Jun
Jul
Aug
(12)
Sep
(12)
Oct
(56)
Nov
(65)
Dec
(37)
2004 Jan
(59)
Feb
(78)
Mar
(153)
Apr
(205)
May
(184)
Jun
(123)
Jul
(171)
Aug
(156)
Sep
(190)
Oct
(120)
Nov
(154)
Dec
(223)
2005 Jan
(184)
Feb
(267)
Mar
(214)
Apr
(286)
May
(320)
Jun
(299)
Jul
(348)
Aug
(283)
Sep
(355)
Oct
(293)
Nov
(232)
Dec
(203)
2006 Jan
(352)
Feb
(358)
Mar
(403)
Apr
(313)
May
(165)
Jun
(281)
Jul
(316)
Aug
(228)
Sep
(279)
Oct
(243)
Nov
(315)
Dec
(345)
2007 Jan
(260)
Feb
(323)
Mar
(340)
Apr
(319)
May
(290)
Jun
(296)
Jul
(221)
Aug
(292)
Sep
(242)
Oct
(248)
Nov
(242)
Dec
(332)
2008 Jan
(312)
Feb
(359)
Mar
(454)
Apr
(287)
May
(340)
Jun
(450)
Jul
(403)
Aug
(324)
Sep
(349)
Oct
(385)
Nov
(363)
Dec
(437)
2009 Jan
(500)
Feb
(301)
Mar
(409)
Apr
(486)
May
(545)
Jun
(391)
Jul
(518)
Aug
(497)
Sep
(492)
Oct
(429)
Nov
(357)
Dec
(310)
2010 Jan
(371)
Feb
(657)
Mar
(519)
Apr
(432)
May
(312)
Jun
(416)
Jul
(477)
Aug
(386)
Sep
(419)
Oct
(435)
Nov
(320)
Dec
(202)
2011 Jan
(321)
Feb
(413)
Mar
(299)
Apr
(215)
May
(284)
Jun
(203)
Jul
(207)
Aug
(314)
Sep
(321)
Oct
(259)
Nov
(347)
Dec
(209)
2012 Jan
(322)
Feb
(414)
Mar
(377)
Apr
(179)
May
(173)
Jun
(234)
Jul
(295)
Aug
(239)
Sep
(276)
Oct
(355)
Nov
(144)
Dec
(108)
2013 Jan
(170)
Feb
(89)
Mar
(204)
Apr
(133)
May
(142)
Jun
(89)
Jul
(160)
Aug
(180)
Sep
(69)
Oct
(136)
Nov
(83)
Dec
(32)
2014 Jan
(71)
Feb
(90)
Mar
(161)
Apr
(117)
May
(78)
Jun
(94)
Jul
(60)
Aug
(83)
Sep
(102)
Oct
(132)
Nov
(154)
Dec
(96)
2015 Jan
(45)
Feb
(138)
Mar
(176)
Apr
(132)
May
(119)
Jun
(124)
Jul
(77)
Aug
(31)
Sep
(34)
Oct
(22)
Nov
(23)
Dec
(9)
2016 Jan
(26)
Feb
(17)
Mar
(10)
Apr
(8)
May
(4)
Jun
(8)
Jul
(6)
Aug
(5)
Sep
(9)
Oct
(4)
Nov
Dec
2017 Jan
(5)
Feb
(7)
Mar
(1)
Apr
(5)
May
Jun
(3)
Jul
(6)
Aug
(1)
Sep
Oct
(2)
Nov
(1)
Dec
2018 Jan
Feb
Mar
Apr
(1)
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
2020 Jan
Feb
Mar
Apr
May
(1)
Jun
Jul
Aug
Sep
Oct
Nov
Dec
2025 Jan
(1)
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
S M T W T F S
1
(1)
2
(12)
3
(12)
4
(19)
5
(7)
6
(6)
7
(2)
8
(2)
9
(11)
10
(15)
11
(27)
12
(27)
13
(18)
14
(3)
15
(3)
16
(25)
17
(9)
18
(3)
19
(4)
20
(2)
21
(4)
22
(9)
23
(28)
24
(18)
25
(16)
26
(9)
27
(4)
28
(13)
29
(15)
30
(33)





Showing 2 results of 2

From: Tom L. <le...@ih...> - 2009年11月07日 22:07:47
Hi
I was asked off list how I created the little sparklines using Matplotlib.
There are two ways I create these:
The live graphs on the demo page (http://your.gridspy.co.nz/powertech/)
are created by a great little jquery app (so yeah, not matplotlib):
http://omnipotent.net/jquery.sparkline/
To get the data to the browser in order to render the sparkline, you
will need some sort of mechanism similar to Ajax (or at least a form of
it) called Comet. There is a great tutorial on using orbited for this here
http://cometdaily.com/2008/10/10/scalable-real-time-web-architecture-part-2-a-live-graph-with-orbited-morbidq-and-jsio/
If any of you need more help doing that, I am happy to provide some
source code examples.
If instead, you want to create static line graphs using matplotlib such
as those on this page:
http://your.gridspy.co.nz/powertech/history/04Nov2009.htm
http://your.gridspy.co.nz/powertech/graph/tiny/3-3-04Nov2009.png?c=2 (an
example)
To render static sparklines I use the following matplot lib code:
def render_simple_line(sensors, resolution = 'hour', span = 1,
 start=None, end=None, fig=None, column=0):
 """Builds a figure that shows the given sensors at the given
resolution and span in the given time period.
 """
 if fig is None:
 fig=Figure()
 fig.set_facecolor('white')
 fig.set_edgecolor('white')
 axes = fig.add_axes([0.00,0.00,1.0,1.0], axisbg='w', frame_on=False)
 axes.set_xticks([])
 axes.set_yticks([])
 axes.set_axis_off()
 if start is None:
 start = datetime.datetime.now()
 if end is None:
 end = start + datetime.timedelta(days=1)
 first_date = start.strftime('%Y-%m-%d')
 last_date = end.strftime('%Y-%m-%d')
 desc = [("mean", pk) for pk in sensors]
 np_table = data_table_matrix(desc, resolution, first_date,
last_date, span )
 #note that np_table[0] is datetime objects and [1] is data
 if np_table.size == 0:
 return None
 #replace nulls with 0
 np_table[1:][np_table[1:] == np.array([None])] = 0
 #replace -ve values
 np_table[1:][np_table[1:] < np.array([0])] = 0
 axes.xaxis.set_major_formatter(DateFormatter('%H'))
 fig.autofmt_xdate()
 base = np.zeros(np_table.shape[1])
 color = color_list[column % len(color_list)][1]
 axes.fill_between(np_table[0], base, np_table[column + 1], facecolor
= color)
 return fig
I pass fig in so it is easy to pass a figure from the ipython console,
since ipython makes special figures that are interactive.
-Tom
PS: Dan - I replied to your email directly but it bounced.
From: Tom L. <to...@wi...> - 2009年11月07日 21:29:10
Hi
I was asked off list how I created the little sparklines using Matplotlib.
There are two ways I create these:
The live graphs on the demo page (http://your.gridspy.co.nz/powertech/) 
are created by a great little jquery app (so yeah, not matplotlib):
http://omnipotent.net/jquery.sparkline/
To get the data to the browser in order to render the sparkline, you
will need some sort of mechanism similar to Ajax (or at least a form of
it) called Comet. There is a great tutorial on using orbited for this here
http://cometdaily.com/2008/10/10/scalable-real-time-web-architecture-part-2-a-live-graph-with-orbited-morbidq-and-jsio/
If any of you need more help doing that, I am happy to provide some 
source code examples.
If instead, you want to create static line graphs using matplotlib such 
as those on this page:
http://your.gridspy.co.nz/powertech/history/04Nov2009.htm
http://your.gridspy.co.nz/powertech/graph/tiny/3-3-04Nov2009.png?c=2 (an
example)
To render static sparklines I use the following matplot lib code:
def render_simple_line(sensors, resolution = 'hour', span = 1,
 start=None, end=None, fig=None, column=0):
 """Builds a figure that shows the given sensors at the given
resolution and span in the given time period.
 """
 if fig is None:
 fig=Figure()
 fig.set_facecolor('white')
 fig.set_edgecolor('white')
 axes = fig.add_axes([0.00,0.00,1.0,1.0], axisbg='w', frame_on=False)
 axes.set_xticks([])
 axes.set_yticks([])
 axes.set_axis_off()
 if start is None:
 start = datetime.datetime.now()
 if end is None:
 end = start + datetime.timedelta(days=1)
 first_date = start.strftime('%Y-%m-%d')
 last_date = end.strftime('%Y-%m-%d')
 desc = [("mean", pk) for pk in sensors]
 np_table = data_table_matrix(desc, resolution, first_date,
last_date, span )
 #note that np_table[0] is datetime objects and [1] is data
 if np_table.size == 0:
 return None
 #replace nulls with 0
 np_table[1:][np_table[1:] == np.array([None])] = 0
 #replace -ve values
 np_table[1:][np_table[1:] < np.array([0])] = 0
 axes.xaxis.set_major_formatter(DateFormatter('%H'))
 fig.autofmt_xdate()
 base = np.zeros(np_table.shape[1])
 color = color_list[column % len(color_list)][1]
 axes.fill_between(np_table[0], base, np_table[column + 1], facecolor
= color)
 return fig
I pass fig in so it is easy to pass a figure from the ipython console,
since ipython makes special figures that are interactive.
-Tom
PS: Dan - I replied to your email directly but it bounced.

Showing 2 results of 2

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.
Thanks for helping keep SourceForge clean.
X





Briefly describe the problem (required):
Upload screenshot of ad (required):
Select a file, or drag & drop file here.
Screenshot instructions:

Click URL instructions:
Right-click on the ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)

More information about our ad policies

Ad destination/click URL:

AltStyle によって変換されたページ (->オリジナル) /