]> git.saurik.com Git - wxWidgets.git/blame - wxPython/demo/PyPlot.py
What the hell, let's spin up another full release
[wxWidgets.git] / wxPython / demo / PyPlot.py
CommitLineData
9d6685e2
RD
1
2import wx
3import wx.lib.plot
4
5################################################################\
6# Where's the code??? |
7# |
8# wx.lib.plot.py came with its own excellent demo built in, |
9# for testing purposes, but it serves quite well to demonstrate |
10# the code and classes within, so we are simply borrowing that |
60d8ee39 11# code for the demo. Please load up wx.lib.plot.py for a review |
9d6685e2
RD
12# of the code itself. The demo/test is at the bottom of |
13# the file, as expected. |
14################################################################/
15
16#----------------------------------------------------------------------
17
18def runTest(frame, nb, log):
19 # Loading the demo class directly from the library's
20 # test code.
21 win = wx.lib.plot.TestFrame(nb, -1, "PlotCanvas Demo")
22 frame.otherWin = win
23 return None
24
25#----------------------------------------------------------------------
26
27overview = """\
28<html><body>
29<center><h2>PyPlot</h2></center>
30
31This demo illustrates the features of the new PyPlot modules, found
32in wx.lib.plot.py. All methods and functions are documented clearly
33therein; only the overview is included here.
34
35<p>
36PyPlot is an improvement over wxPlotCanvas, which is now deprecated.
37If you are using wxPlotCanvas now, please make plans to migrate in
38anticipation of the time that wxPlotCanvas disappears completely.
39
40<p>
41The demo illustrates four different plot styles (with appropriate
42variations on fonts, etc, to show how flexible it is) as well as
43provides you with a means to tinker with all the features that
44come with the class itself.
45
46<p><ul>
47<li>File Menu
48
49 <ul>
50 <li>Page Setup
51
60d8ee39 52 <p>This allows you to set up how the plot will be printed. This
9d6685e2
RD
53 is built into the library itself.
54
55 <li>Print Preview
56
60d8ee39 57 <p>As you might expect, this allows you to preview how the plot
9d6685e2
RD
58 will look when printed, in light of the page setup you may
59 have selected above.
60
61 <li>Print
62
60d8ee39 63 <p>Suprise! It prints the current plot to your printer! :-)
9d6685e2
RD
64
65 <li>Save Plot
66
60d8ee39 67 <p>That's right, the library even provides you with the means
9d6685e2
RD
68 to export the plotted data out to a graphics file. Several
69 formats are allowed for, basically any image class that
70 supports saving.
71 </ul>
72
73<li>Plot Menu
74
75 <ul>
76 <li>Plot 1 ... Plot 5
77
60d8ee39 78 <p>Different data with different plot formats, including one empty
9d6685e2
RD
79 plot.
80
81 <li>Enable Zoom
82
60d8ee39 83 <p>If Zoom is enabled, you can rubber-band select an area of the
9d6685e2
RD
84 plot to examine it in detail using the left mouse button. Right
85 mouse button zooms back out. This is automatically supported
86 by the library, all you have to do is turn it on.
87
88 <li>Enable Grid
89
60d8ee39 90 <p>Plots can have different styles of grids, and and these grids can
9d6685e2
RD
91 be turned on or off as needed.
92
93 <li>Enable Legend
94
60d8ee39 95 <p>Plot can have legends or not, the contents which are definable
9d6685e2
RD
96 by you.
97 </ul>
98</ul>
99
100<HR><pre>
101%s</pre>
102</body></html>
103""" % wx.lib.plot.__doc__
104
105
106if __name__ == '__main__':
107 import sys,os
108 import run
8eca4fef 109 run.main(['', os.path.basename(sys.argv[0])] + sys.argv[1:])
9d6685e2 110