r39789 MediaWiki - Code Review archive

Repository: MediaWiki
Revision: < r39788‎ | r39789 | r39790 >
Date: 21:52, 21 August 2008
Author: aaron
Status: old (Comments)
Tags:
Comment:
* Add svg graph library and support it in RatingHistory
* Add HTML table fallback for graphs
* Tweak png graph points
* Tweak CSS and bump style version
Modified paths:
  • /trunk/extensions/FlaggedRevs/FlaggedRevs.php (modified) (history)
  • /trunk/extensions/FlaggedRevs/flaggedrevs.css (modified) (history)
  • /trunk/extensions/FlaggedRevs/specialpages/RatingHistory_body.php (modified) (history)
  • /trunk/extensions/FlaggedRevs/svggraph (added) (history)
  • /trunk/extensions/FlaggedRevs/svggraph/LICENSE.LGPL (added) (history)
  • /trunk/extensions/FlaggedRevs/svggraph/svgGraph.html (added) (history)
  • /trunk/extensions/FlaggedRevs/svggraph/svgGraph.php (added) (history)
  • /trunk/extensions/FlaggedRevs/svggraph/svgGraph1.php (added) (history)
  • /trunk/extensions/FlaggedRevs/svggraph/svgGraph2.php (added) (history)
  • /trunk/extensions/FlaggedRevs/svggraph/test01.php (added) (history)
  • /trunk/extensions/FlaggedRevs/svggraph/test02.php (added) (history)
  • /trunk/extensions/FlaggedRevs/svggraph/test03.php (added) (history)

Diff [purge]

Index: trunk/extensions/FlaggedRevs/FlaggedRevs.php
— — @@ -248,13 +248,14 @@
249 249 # How long before stats page is updated?
250 250 $wgFlaggedRevsStatsAge = 2 * 3600; // 2 hours
251 251
252 (追記) +$wgSvgGraphDir = dirname(__FILE__) . '/svggraph'; (追記ここまで)
252 253 $wgPHPlotDir = dirname(__FILE__) . '/phplot-5.0.5';
253 254
254 255 # End of configuration variables.
255 256 #########
256 257
257 258 # Bump this number every time you change flaggedrevs.css/flaggedrevs.js
258 (削除) -$wgFlaggedRevStyleVersion = 38; (削除ここまで)
259 (追記) +$wgFlaggedRevStyleVersion = 39; (追記ここまで)
259 260
260 261 $wgExtensionFunctions[] = 'efLoadFlaggedRevs';
261 262
Index: trunk/extensions/FlaggedRevs/flaggedrevs.css
— — @@ -309,3 +309,11 @@
310 310 .fr-comment-box {
311 311 margin-top: .25em;
312 312 }
313 (追記) + (追記ここまで)
314 (追記) +.fr-rating-dave { (追記ここまで)
315 (追記) + background-color: lightblue; (追記ここまで)
316 (追記) +} (追記ここまで)
317 (追記) + (追記ここまで)
318 (追記) +.fr-rating-rave { (追記ここまで)
319 (追記) + background-color: lightgreen; (追記ここまで)
320 (追記) +} (追記ここまで)
Index: trunk/extensions/FlaggedRevs/svggraph/svgGraph.html
— — @@ -0,0 +1,1233 @@
2 (追記) +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN""http://www.w3.org/TR/REC-html40/frameset.dtd"> (追記ここまで)
3 (追記) +<!--NewPage--> (追記ここまで)
4 (追記) +<HTML> (追記ここまで)
5 (追記) +<HEAD> (追記ここまで)
6 (追記) +<!-- Generated by javadoc on Wed Jun 05 09:53:38 NZST 2002 --> (追記ここまで)
7 (追記) +<TITLE> (追記ここまで)
8 (追記) +Documentation: Class svgGraph (追記ここまで)
9 (追記) +</TITLE> (追記ここまで)
10 (追記) +<style> (追記ここまで)
11 (追記) +/* Define colors, fonts and other style attributes here to override the defaults */ (追記ここまで)
12 (追記) + (追記ここまで)
13 (追記) +/* Page background color */ (追記ここまで)
14 (追記) +body { background-color: #FFFFFF } (追記ここまで)
15 (追記) + (追記ここまで)
16 (追記) +/* Table colors */ (追記ここまで)
17 (追記) +.TableHeadingColor { background: #CCCCFF } /* Dark mauve */ (追記ここまで)
18 (追記) +.TableSubHeadingColor { background: #EEEEFF } /* Light mauve */ (追記ここまで)
19 (追記) +.TableRowColor { background: #FFFFFF } /* White */ (追記ここまで)
20 (追記) + (追記ここまで)
21 (追記) +/* Font used in left-hand frame lists */ (追記ここまで)
22 (追記) +.FrameTitleFont { font-size: normal; font-family: normal } (追記ここまで)
23 (追記) +.FrameHeadingFont { font-size: normal; font-family: normal } (追記ここまで)
24 (追記) +.FrameItemFont { font-size: normal; font-family: normal } (追記ここまで)
25 (追記) + (追記ここまで)
26 (追記) +/* Example of smaller, sans-serif font in frames */ (追記ここまで)
27 (追記) +/* .FrameItemFont { font-size: 10pt; font-family: Helvetica, Arial, sans-serif } */ (追記ここまで)
28 (追記) + (追記ここまで)
29 (追記) +/* Navigation bar fonts and colors */ (追記ここまで)
30 (追記) +.NavBarCell1 { background-color:#EEEEFF;}/* Light mauve */ (追記ここまで)
31 (追記) +.NavBarCell1Rev { background-color:#00008B;}/* Dark Blue */ (追記ここまで)
32 (追記) +.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;} (追記ここまで)
33 (追記) +.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;} (追記ここまで)
34 (追記) + (追記ここまで)
35 (追記) +.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} (追記ここまで)
36 (追記) +.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} (追記ここまで)
37 (追記) +</style> (追記ここまで)
38 (追記) +</HEAD> (追記ここまで)
39 (追記) +<BODY BGCOLOR="white"> (追記ここまで)
40 (追記) + (追記ここまで)
41 (追記) +<!-- ========== START OF NAVBAR ========== --> (追記ここまで)
42 (追記) +<A NAME="navbar_top"><!-- --></A> (追記ここまで)
43 (追記) +<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0"> (追記ここまで)
44 (追記) +<TR> (追記ここまで)
45 (追記) +<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> (追記ここまで)
46 (追記) +<A NAME="navbar_top_firstrow"><!-- --></A> (追記ここまで)
47 (追記) +<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3"> (追記ここまで)
48 (追記) + <TR ALIGN="center" VALIGN="top"> (追記ここまで)
49 (追記) + <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD> (追記ここまで)
50 (追記) + </TR> (追記ここまで)
51 (追記) +</TABLE> (追記ここまで)
52 (追記) +</TD> (追記ここまで)
53 (追記) +<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> (追記ここまで)
54 (追記) +</EM> (追記ここまで)
55 (追記) +</TD> (追記ここまで)
56 (追記) +</TR> (追記ここまで)
57 (追記) + (追記ここまで)
58 (追記) +<TR> (追記ここまで)
59 (追記) +<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> (追記ここまで)
60 (追記) +&nbsp;PREV CLASS&nbsp; (追記ここまで)
61 (追記) +&nbsp;NEXT CLASS</FONT></TD> (追記ここまで)
62 (追記) +<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> (追記ここまで)
63 (追記) + <A HREF="index.html" TARGET="_top"><B>FRAMES</B></A> &nbsp; (追記ここまで)
64 (追記) +&nbsp;<A HREF="svgGraph.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD> (追記ここまで)
65 (追記) +</TR> (追記ここまで)
66 (追記) +<TR> (追記ここまで)
67 (追記) +<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> (追記ここまで)
68 (追記) + SUMMARY: &nbsp;INNER&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD> (追記ここまで)
69 (追記) +<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> (追記ここまで)
70 (追記) +DETAIL: &nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD> (追記ここまで)
71 (追記) +</TR> (追記ここまで)
72 (追記) +</TABLE> (追記ここまで)
73 (追記) +<!-- =========== END OF NAVBAR =========== --> (追記ここまで)
74 (追記) + (追記ここまで)
75 (追記) +<HR> (追記ここまで)
76 (追記) +<!-- ======== START OF CLASS DATA ======== --> (追記ここまで)
77 (追記) +<H2> (追記ここまで)
78 (追記) +Class svgGraph</H2> (追記ここまで)
79 (追記) +<PRE> (追記ここまで)
80 (追記) +<B>svgGraph</B> (追記ここまで)
81 (追記) +</PRE> (追記ここまで)
82 (追記) +<HR> (追記ここまで)
83 (追記) +<DL> (追記ここまで)
84 (追記) +<DT>public class <B>svgGraph</B></DL> (追記ここまで)
85 (追記) + (追記ここまで)
86 (追記) +<P> (追記ここまで)
87 (追記) +Takes an array or multiple arrays of data and outputs a graph in SVG format. (追記ここまで)
88 (追記) + The SVG language allows for a high degree of control of the output, (追記ここまで)
89 (追記) + thus this class is intended to be extended. (追記ここまで)
90 (追記) +<P> (追記ここまで)
91 (追記) +<DL> (追記ここまで)
92 (追記) +<DT><B>Version: </B><DD>1.0alpha</DD> (追記ここまで)
93 (追記) +<DT><B>Author: </B><DD>Herman Veluwenkamp</DD> (追記ここまで)
94 (追記) +</DL> (追記ここまで)
95 (追記) +<HR> (追記ここまで)
96 (追記) + (追記ここまで)
97 (追記) +<P> (追記ここまで)
98 (追記) +<!-- ======== INNER CLASS SUMMARY ======== --> (追記ここまで)
99 (追記) + (追記ここまで)
100 (追記) + (追記ここまで)
101 (追記) +<!-- =========== FIELD SUMMARY =========== --> (追記ここまで)
102 (追記) + (追記ここまで)
103 (追記) +<A NAME="field_summary"><!-- --></A> (追記ここまで)
104 (追記) +<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"> (追記ここまで)
105 (追記) +<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> (追記ここまで)
106 (追記) +<TD COLSPAN=2><FONT SIZE="+2"> (追記ここまで)
107 (追記) +<B>Field Summary</B></FONT></TD> (追記ここまで)
108 (追記) +</TR> (追記ここまで)
109 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
110 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
111 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
112 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$dataX">$dataX</A></B></CODE> (追記ここまで)
113 (追記) + (追記ここまで)
114 (追記) +<BR> (追記ここまで)
115 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Array of data holding values for X axis</TD> (追記ここまで)
116 (追記) +</TR> (追記ここまで)
117 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
118 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
119 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
120 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$dataY">$dataY</A></B></CODE> (追記ここまで)
121 (追記) + (追記ここまで)
122 (追記) +<BR> (追記ここまで)
123 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Two dimensional array holding values for Y axis.</TD> (追記ここまで)
124 (追記) +</TR> (追記ここまで)
125 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
126 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
127 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
128 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$decimalPlacesY">$decimalPlacesY</A></B></CODE> (追記ここまで)
129 (追記) + (追記ここまで)
130 (追記) +<BR> (追記ここまで)
131 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Number of decimal places to show for Y axis tags.</TD> (追記ここまで)
132 (追記) +</TR> (追記ここまで)
133 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
134 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
135 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
136 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$error">$error</A></B></CODE> (追記ここまで)
137 (追記) + (追記ここまで)
138 (追記) +<BR> (追記ここまで)
139 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Contains error messages.</TD> (追記ここまで)
140 (追記) +</TR> (追記ここまで)
141 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
142 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
143 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
144 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$extraSVG">$extraSVG</A></B></CODE> (追記ここまで)
145 (追記) + (追記ここまで)
146 (追記) +<BR> (追記ここまで)
147 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Extra SVG to add to graph.</TD> (追記ここまで)
148 (追記) +</TR> (追記ここまで)
149 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
150 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
151 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
152 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$graphicHeight">$graphicHeight</A></B></CODE> (追記ここまで)
153 (追記) + (追記ここまで)
154 (追記) +<BR> (追記ここまで)
155 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Total height of svg graphic.</TD> (追記ここまで)
156 (追記) +</TR> (追記ここまで)
157 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
158 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
159 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
160 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$graphicWidth">$graphicWidth</A></B></CODE> (追記ここまで)
161 (追記) + (追記ここまで)
162 (追記) +<BR> (追記ここまで)
163 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Total width of svg graphic.</TD> (追記ここまで)
164 (追記) +</TR> (追記ここまで)
165 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
166 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
167 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
168 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$innerPaddingX">$innerPaddingX</A></B></CODE> (追記ここまで)
169 (追記) + (追記ここまで)
170 (追記) +<BR> (追記ここまで)
171 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Padding between bottom border of plot area and text (tags).</TD> (追記ここまで)
172 (追記) +</TR> (追記ここまで)
173 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
174 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
175 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
176 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$innerPaddingY">$innerPaddingY</A></B></CODE> (追記ここまで)
177 (追記) + (追記ここまで)
178 (追記) +<BR> (追記ここまで)
179 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Padding between left border of plot area and text (tags).</TD> (追記ここまで)
180 (追記) +</TR> (追記ここまで)
181 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
182 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
183 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
184 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$labelX">$labelX</A></B></CODE> (追記ここまで)
185 (追記) + (追記ここまで)
186 (追記) +<BR> (追記ここまで)
187 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Label for X axis.</TD> (追記ここまで)
188 (追記) +</TR> (追記ここまで)
189 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
190 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
191 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
192 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$labelY">$labelY</A></B></CODE> (追記ここまで)
193 (追記) + (追記ここまで)
194 (追記) +<BR> (追記ここまで)
195 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Label for Y axis.</TD> (追記ここまで)
196 (追記) +</TR> (追記ここまで)
197 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
198 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
199 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
200 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$maxY">$maxY</A></B></CODE> (追記ここまで)
201 (追記) + (追記ここまで)
202 (追記) +<BR> (追記ここまで)
203 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Maximum value for Y axis values.</TD> (追記ここまで)
204 (追記) +</TR> (追記ここまで)
205 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
206 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
207 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
208 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$minY">$minY</A></B></CODE> (追記ここまで)
209 (追記) + (追記ここまで)
210 (追記) +<BR> (追記ここまで)
211 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Minimum value for Y axis values.</TD> (追記ここまで)
212 (追記) +</TR> (追記ここまで)
213 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
214 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
215 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
216 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$numGridlinesX">$numGridlinesX</A></B></CODE> (追記ここまで)
217 (追記) + (追記ここまで)
218 (追記) +<BR> (追記ここまで)
219 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Number of grid lines corresponding to X axis.</TD> (追記ここまで)
220 (追記) +</TR> (追記ここまで)
221 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
222 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
223 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
224 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$numGridlinesY">$numGridlinesY</A></B></CODE> (追記ここまで)
225 (追記) + (追記ここまで)
226 (追記) +<BR> (追記ここまで)
227 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Number of grid lines corresponding to Y axis.</TD> (追記ここまで)
228 (追記) +</TR> (追記ここまで)
229 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
230 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
231 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
232 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$offsetGridlinesX">$offsetGridlinesX</A></B></CODE> (追記ここまで)
233 (追記) + (追記ここまで)
234 (追記) +<BR> (追記ここまで)
235 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Offset of first X axis gridline from lower-left of plot area as a (追記ここまで)
236 (追記) + fraction of normal gridline spacing.</TD> (追記ここまで)
237 (追記) +</TR> (追記ここまで)
238 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
239 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
240 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
241 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$offsetGridlinesY">$offsetGridlinesY</A></B></CODE> (追記ここまで)
242 (追記) + (追記ここまで)
243 (追記) +<BR> (追記ここまで)
244 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Offset of first Y axis gridline from lower-left of plot area as a (追記ここまで)
245 (追記) + fraction of normal gridline spacing.</TD> (追記ここまで)
246 (追記) +</TR> (追記ここまで)
247 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
248 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
249 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
250 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$outerPadding">$outerPadding</A></B></CODE> (追記ここまで)
251 (追記) + (追記ここまで)
252 (追記) +<BR> (追記ここまで)
253 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Padding between outer border of graphic area and text (title and labels).</TD> (追記ここまで)
254 (追記) +</TR> (追記ここまで)
255 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
256 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
257 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
258 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$plotHeight">$plotHeight</A></B></CODE> (追記ここまで)
259 (追記) + (追記ここまで)
260 (追記) +<BR> (追記ここまで)
261 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Height of plot area.</TD> (追記ここまで)
262 (追記) +</TR> (追記ここまで)
263 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
264 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
265 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
266 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$plotOffsetX">$plotOffsetX</A></B></CODE> (追記ここまで)
267 (追記) + (追記ここまで)
268 (追記) +<BR> (追記ここまで)
269 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Offset of plot area from left of graphic area.</TD> (追記ここまで)
270 (追記) +</TR> (追記ここまで)
271 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
272 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
273 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
274 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$plotOffsetY">$plotOffsetY</A></B></CODE> (追記ここまで)
275 (追記) + (追記ここまで)
276 (追記) +<BR> (追記ここまで)
277 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Offset of plot area from top of graphic area.</TD> (追記ここまで)
278 (追記) +</TR> (追記ここまで)
279 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
280 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
281 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
282 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$plotWidth">$plotWidth</A></B></CODE> (追記ここまで)
283 (追記) + (追記ここまで)
284 (追記) +<BR> (追記ここまで)
285 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Width of plot area.</TD> (追記ここまで)
286 (追記) +</TR> (追記ここまで)
287 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
288 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
289 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
290 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$resolutionY">$resolutionY</A></B></CODE> (追記ここまで)
291 (追記) + (追記ここまで)
292 (追記) +<BR> (追記ここまで)
293 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Resolution for Y axis tags.</TD> (追記ここまで)
294 (追記) +</TR> (追記ここまで)
295 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
296 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
297 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
298 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$rotTagsX">$rotTagsX</A></B></CODE> (追記ここまで)
299 (追記) + (追記ここまで)
300 (追記) +<BR> (追記ここまで)
301 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;X axis tags rotation.</TD> (追記ここまで)
302 (追記) +</TR> (追記ここまで)
303 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
304 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
305 (追記) +<CODE>&nbsp;integer</CODE></FONT></TD> (追記ここまで)
306 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$rotTagsY">$rotTagsY</A></B></CODE> (追記ここまで)
307 (追記) + (追記ここまで)
308 (追記) +<BR> (追記ここまで)
309 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Y axis tags rotation.</TD> (追記ここまで)
310 (追記) +</TR> (追記ここまで)
311 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
312 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
313 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
314 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleBarDefault">$styleBarDefault</A></B></CODE> (追記ここまで)
315 (追記) + (追記ここまで)
316 (追記) +<BR> (追記ここまで)
317 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default presentation attributes for bar plots.</TD> (追記ここまで)
318 (追記) +</TR> (追記ここまで)
319 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
320 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
321 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
322 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleBox">$styleBox</A></B></CODE> (追記ここまで)
323 (追記) + (追記ここまで)
324 (追記) +<BR> (追記ここまで)
325 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Presentation attributes for box around plot area.</TD> (追記ここまで)
326 (追記) +</TR> (追記ここまで)
327 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
328 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
329 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
330 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleBoxDefault">$styleBoxDefault</A></B></CODE> (追記ここまで)
331 (追記) + (追記ここまで)
332 (追記) +<BR> (追記ここまで)
333 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default presentation attributes for box around plot area.</TD> (追記ここまで)
334 (追記) +</TR> (追記ここまで)
335 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
336 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
337 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
338 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleGridX">$styleGridX</A></B></CODE> (追記ここまで)
339 (追記) + (追記ここまで)
340 (追記) +<BR> (追記ここまで)
341 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Presentation attributes for grid corresponding to X axis.</TD> (追記ここまで)
342 (追記) +</TR> (追記ここまで)
343 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
344 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
345 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
346 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleGridXDefault">$styleGridXDefault</A></B></CODE> (追記ここまで)
347 (追記) + (追記ここまで)
348 (追記) +<BR> (追記ここまで)
349 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default presentation attributes for grid corresponding to X axis.</TD> (追記ここまで)
350 (追記) +</TR> (追記ここまで)
351 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
352 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
353 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
354 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleGridY">$styleGridY</A></B></CODE> (追記ここまで)
355 (追記) + (追記ここまで)
356 (追記) +<BR> (追記ここまで)
357 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Presentation attributes for grid corresponding to Y axis.</TD> (追記ここまで)
358 (追記) +</TR> (追記ここまで)
359 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
360 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
361 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
362 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleGridYDefault">$styleGridYDefault</A></B></CODE> (追記ここまで)
363 (追記) + (追記ここまで)
364 (追記) +<BR> (追記ここまで)
365 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default presentation attributes for grid corresponding to X axis.</TD> (追記ここまで)
366 (追記) +</TR> (追記ここまで)
367 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
368 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
369 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
370 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleLabelX">$styleLabelX</A></B></CODE> (追記ここまで)
371 (追記) + (追記ここまで)
372 (追記) +<BR> (追記ここまで)
373 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Presentation attributes for label.</TD> (追記ここまで)
374 (追記) +</TR> (追記ここまで)
375 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
376 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
377 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
378 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleLabelXDefault">$styleLabelXDefault</A></B></CODE> (追記ここまで)
379 (追記) + (追記ここまで)
380 (追記) +<BR> (追記ここまで)
381 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default presentation attributes for label.</TD> (追記ここまで)
382 (追記) +</TR> (追記ここまで)
383 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
384 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
385 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
386 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleLabelY">$styleLabelY</A></B></CODE> (追記ここまで)
387 (追記) + (追記ここまで)
388 (追記) +<BR> (追記ここまで)
389 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Presentation attributes for label.</TD> (追記ここまで)
390 (追記) +</TR> (追記ここまで)
391 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
392 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
393 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
394 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleLabelYDefault">$styleLabelYDefault</A></B></CODE> (追記ここまで)
395 (追記) + (追記ここまで)
396 (追記) +<BR> (追記ここまで)
397 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default presentation attributes for label.</TD> (追記ここまで)
398 (追記) +</TR> (追記ここまで)
399 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
400 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
401 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
402 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleLineDefault">$styleLineDefault</A></B></CODE> (追記ここまで)
403 (追記) + (追記ここまで)
404 (追記) +<BR> (追記ここまで)
405 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default presentation attributes for line plots.</TD> (追記ここまで)
406 (追記) +</TR> (追記ここまで)
407 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
408 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
409 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
410 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$stylePolylineDefault">$stylePolylineDefault</A></B></CODE> (追記ここまで)
411 (追記) + (追記ここまで)
412 (追記) +<BR> (追記ここまで)
413 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default presentation attributes for polyline plots (inside group tag).</TD> (追記ここまで)
414 (追記) +</TR> (追記ここまで)
415 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
416 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
417 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
418 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleTagsX">$styleTagsX</A></B></CODE> (追記ここまで)
419 (追記) + (追記ここまで)
420 (追記) +<BR> (追記ここまで)
421 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Presentation attributes for X axis tags.</TD> (追記ここまで)
422 (追記) +</TR> (追記ここまで)
423 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
424 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
425 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
426 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleTagsXDefault">$styleTagsXDefault</A></B></CODE> (追記ここまで)
427 (追記) + (追記ここまで)
428 (追記) +<BR> (追記ここまで)
429 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default presentation attributes for X axis tags.</TD> (追記ここまで)
430 (追記) +</TR> (追記ここまで)
431 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
432 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
433 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
434 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleTagsY">$styleTagsY</A></B></CODE> (追記ここまで)
435 (追記) + (追記ここまで)
436 (追記) +<BR> (追記ここまで)
437 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Presentation attributes for Y axis tags.</TD> (追記ここまで)
438 (追記) +</TR> (追記ここまで)
439 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
440 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
441 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
442 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleTagsYDefault">$styleTagsYDefault</A></B></CODE> (追記ここまで)
443 (追記) + (追記ここまで)
444 (追記) +<BR> (追記ここまで)
445 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default presentation attributes for Y axis tags.</TD> (追記ここまで)
446 (追記) +</TR> (追記ここまで)
447 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
448 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
449 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
450 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleTitle">$styleTitle</A></B></CODE> (追記ここまで)
451 (追記) + (追記ここまで)
452 (追記) +<BR> (追記ここまで)
453 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Presentation attributes for title.</TD> (追記ここまで)
454 (追記) +</TR> (追記ここまで)
455 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
456 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
457 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
458 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$styleTitleDefault">$styleTitleDefault</A></B></CODE> (追記ここまで)
459 (追記) + (追記ここまで)
460 (追記) +<BR> (追記ここまで)
461 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default presentation attributes for title.</TD> (追記ここまで)
462 (追記) +</TR> (追記ここまで)
463 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
464 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
465 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
466 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$svg">$svg</A></B></CODE> (追記ここまで)
467 (追記) + (追記ここまで)
468 (追記) +<BR> (追記ここまで)
469 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SVG XML result.</TD> (追記ここまで)
470 (追記) +</TR> (追記ここまで)
471 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
472 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
473 (追記) +<CODE>&nbsp;string</CODE></FONT></TD> (追記ここまで)
474 (追記) +<TD><CODE><B><A HREF="svgGraph.html#$title">$title</A></B></CODE> (追記ここまで)
475 (追記) + (追記ここまで)
476 (追記) +<BR> (追記ここまで)
477 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Title for Graph.</TD> (追記ここまで)
478 (追記) +</TR> (追記ここまで)
479 (追記) +</TABLE> (追記ここまで)
480 (追記) +&nbsp; (追記ここまで)
481 (追記) +<!-- ======== CONSTRUCTOR SUMMARY ======== --> (追記ここまで)
482 (追記) + (追記ここまで)
483 (追記) +<A NAME="constructor_summary"><!-- --></A> (追記ここまで)
484 (追記) +<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"> (追記ここまで)
485 (追記) +<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> (追記ここまで)
486 (追記) +<TD COLSPAN=2><FONT SIZE="+2"> (追記ここまで)
487 (追記) +<B>Constructor Summary</B></FONT></TD> (追記ここまで)
488 (追記) +</TR> (追記ここまで)
489 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
490 (追記) +<TD><CODE><B><A HREF="svgGraph.html#svgGraph()">svgGraph</A></B>()</CODE> (追記ここまで)
491 (追記) + (追記ここまで)
492 (追記) +<BR> (追記ここまで)
493 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Define static variables used in the class.</TD> (追記ここまで)
494 (追記) +</TR> (追記ここまで)
495 (追記) +</TABLE> (追記ここまで)
496 (追記) +&nbsp; (追記ここまで)
497 (追記) +<!-- ========== METHOD SUMMARY =========== --> (追記ここまで)
498 (追記) + (追記ここまで)
499 (追記) +<A NAME="method_summary"><!-- --></A> (追記ここまで)
500 (追記) +<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"> (追記ここまで)
501 (追記) +<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> (追記ここまで)
502 (追記) +<TD COLSPAN=2><FONT SIZE="+2"> (追記ここまで)
503 (追記) +<B>Method Summary</B></FONT></TD> (追記ここまで)
504 (追記) +</TR> (追記ここまで)
505 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
506 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
507 (追記) +<CODE>private &nbsp;array</CODE></FONT></TD> (追記ここまで)
508 (追記) +<TD><CODE><B><A HREF="svgGraph.html#_findRange(var, var, var, var)">_findRange</A></B>(var&nbsp;$data, (追記ここまで)
509 (追記) + var&nbsp;$min, (追記ここまで)
510 (追記) + var&nbsp;$max, (追記ここまで)
511 (追記) + var&nbsp;$resolution)</CODE> (追記ここまで)
512 (追記) + (追記ここまで)
513 (追記) +<BR> (追記ここまで)
514 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Find the maximum and minimum values for a set of data.<br> (追記ここまで)
515 (追記) + The $resolution variable is used for rounding maximum and minimum values.<br> (追記ここまで)
516 (追記) + If maximum value is 8645 then<br> (追記ここまで)
517 (追記) + If $resolution is 0, then maximum value becomes 9000.<br> (追記ここまで)
518 (追記) + If $resolution is 1, then maximum value becomes 8700.<br> (追記ここまで)
519 (追記) + If $resolution is 2, then maximum value becomes 8650.<br> (追記ここまで)
520 (追記) + If $resolution is 3, then maximum value becomes 8645.<br></TD> (追記ここまで)
521 (追記) +</TR> (追記ここまで)
522 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
523 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
524 (追記) +<CODE>&nbsp;boolean</CODE></FONT></TD> (追記ここまで)
525 (追記) +<TD><CODE><B><A HREF="svgGraph.html#bar(var)">bar</A></B>(var&nbsp;$whichDataSet)</CODE> (追記ここまで)
526 (追記) + (追記ここまで)
527 (追記) +<BR> (追記ここまで)
528 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draw a bar for each data point from the data set selected.</TD> (追記ここまで)
529 (追記) +</TR> (追記ここまで)
530 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
531 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
532 (追記) +<CODE>&nbsp;void</CODE></FONT></TD> (追記ここまで)
533 (追記) +<TD><CODE><B><A HREF="svgGraph.html#drawBox()">drawBox</A></B>()</CODE> (追記ここまで)
534 (追記) + (追記ここまで)
535 (追記) +<BR> (追記ここまで)
536 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draws the box around the plotting area.</TD> (追記ここまで)
537 (追記) +</TR> (追記ここまで)
538 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
539 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
540 (追記) +<CODE>&nbsp;void</CODE></FONT></TD> (追記ここまで)
541 (追記) +<TD><CODE><B><A HREF="svgGraph.html#drawGraph()">drawGraph</A></B>()</CODE> (追記ここまで)
542 (追記) + (追記ここまで)
543 (追記) +<BR> (追記ここまで)
544 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calls functions to draw title, labels, tags, grid lines, and box of graph.</TD> (追記ここまで)
545 (追記) +</TR> (追記ここまで)
546 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
547 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
548 (追記) +<CODE>&nbsp;void</CODE></FONT></TD> (追記ここまで)
549 (追記) +<TD><CODE><B><A HREF="svgGraph.html#drawGridX()">drawGridX</A></B>()</CODE> (追記ここまで)
550 (追記) + (追記ここまで)
551 (追記) +<BR> (追記ここまで)
552 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draws the grid lines from top to bottom in the plotting area.</TD> (追記ここまで)
553 (追記) +</TR> (追記ここまで)
554 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
555 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
556 (追記) +<CODE>&nbsp;void</CODE></FONT></TD> (追記ここまで)
557 (追記) +<TD><CODE><B><A HREF="svgGraph.html#drawGridY()">drawGridY</A></B>()</CODE> (追記ここまで)
558 (追記) + (追記ここまで)
559 (追記) +<BR> (追記ここまで)
560 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draws the grid lines from right to left in the plotting area.</TD> (追記ここまで)
561 (追記) +</TR> (追記ここまで)
562 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
563 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
564 (追記) +<CODE>&nbsp;void</CODE></FONT></TD> (追記ここまで)
565 (追記) +<TD><CODE><B><A HREF="svgGraph.html#drawOuterText()">drawOuterText</A></B>()</CODE> (追記ここまで)
566 (追記) + (追記ここまで)
567 (追記) +<BR> (追記ここまで)
568 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draw the title and axis labels around the outside of the graphic area.</TD> (追記ここまで)
569 (追記) +</TR> (追記ここまで)
570 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
571 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
572 (追記) +<CODE>&nbsp;void</CODE></FONT></TD> (追記ここまで)
573 (追記) +<TD><CODE><B><A HREF="svgGraph.html#drawTagsX()">drawTagsX</A></B>()</CODE> (追記ここまで)
574 (追記) + (追記ここまで)
575 (追記) +<BR> (追記ここまで)
576 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draws the axis tag text outside the plotting area on the x axis.</TD> (追記ここまで)
577 (追記) +</TR> (追記ここまで)
578 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
579 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
580 (追記) +<CODE>&nbsp;void</CODE></FONT></TD> (追記ここまで)
581 (追記) +<TD><CODE><B><A HREF="svgGraph.html#drawTagsY()">drawTagsY</A></B>()</CODE> (追記ここまで)
582 (追記) + (追記ここまで)
583 (追記) +<BR> (追記ここまで)
584 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draws the axis tag text outside the plotting area on the y axis.</TD> (追記ここまで)
585 (追記) +</TR> (追記ここまで)
586 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
587 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
588 (追記) +<CODE>&nbsp;void</CODE></FONT></TD> (追記ここまで)
589 (追記) +<TD><CODE><B><A HREF="svgGraph.html#generateSVG()">generateSVG</A></B>()</CODE> (追記ここまで)
590 (追記) + (追記ここまで)
591 (追記) +<BR> (追記ここまで)
592 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Generate SVG for entire graph.</TD> (追記ここまで)
593 (追記) +</TR> (追記ここまで)
594 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
595 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
596 (追記) +<CODE>&nbsp;boolean</CODE></FONT></TD> (追記ここまで)
597 (追記) +<TD><CODE><B><A HREF="svgGraph.html#init()">init</A></B>()</CODE> (追記ここまで)
598 (追記) + (追記ここまで)
599 (追記) +<BR> (追記ここまで)
600 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initialises the variables used for drawing points, lines, grid, and ticks in the plotting area.</TD> (追記ここまで)
601 (追記) +</TR> (追記ここまで)
602 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
603 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
604 (追記) +<CODE>&nbsp;void</CODE></FONT></TD> (追記ここまで)
605 (追記) +<TD><CODE><B><A HREF="svgGraph.html#line(var)">line</A></B>(var&nbsp;$whichDataSet)</CODE> (追記ここまで)
606 (追記) + (追記ここまで)
607 (追記) +<BR> (追記ここまで)
608 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draw line from one point to the next stopping at each.</TD> (追記ここまで)
609 (追記) +</TR> (追記ここまで)
610 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
611 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
612 (追記) +<CODE>&nbsp;void</CODE></FONT></TD> (追記ここまで)
613 (追記) +<TD><CODE><B><A HREF="svgGraph.html#outputSVG()">outputSVG</A></B>()</CODE> (追記ここまで)
614 (追記) + (追記ここまで)
615 (追記) +<BR> (追記ここまで)
616 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Output SVG as XML text including appropriate HTTP header information.</TD> (追記ここまで)
617 (追記) +</TR> (追記ここまで)
618 (追記) +<TR BGCOLOR="white" CLASS="TableRowColor"> (追記ここまで)
619 (追記) +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> (追記ここまで)
620 (追記) +<CODE>&nbsp;boolean</CODE></FONT></TD> (追記ここまで)
621 (追記) +<TD><CODE><B><A HREF="svgGraph.html#polyLine(var)">polyLine</A></B>(var&nbsp;$whichDataSet)</CODE> (追記ここまで)
622 (追記) + (追記ここまで)
623 (追記) +<BR> (追記ここまで)
624 (追記) +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draw a line from one point to the next continuously without stopping to draw markers.</TD> (追記ここまで)
625 (追記) +</TR> (追記ここまで)
626 (追記) +</TABLE> (追記ここまで)
627 (追記) +&nbsp; (追記ここまで)
628 (追記) +<P> (追記ここまで)
629 (追記) + (追記ここまで)
630 (追記) +<!-- ============ FIELD DETAIL =========== --> (追記ここまで)
631 (追記) + (追記ここまで)
632 (追記) +<A NAME="field_detail"><!-- --></A> (追記ここまで)
633 (追記) +<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"> (追記ここまで)
634 (追記) +<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> (追記ここまで)
635 (追記) +<TD COLSPAN=1><FONT SIZE="+2"> (追記ここまで)
636 (追記) +<B>Field Detail</B></FONT></TD> (追記ここまで)
637 (追記) +</TR> (追記ここまで)
638 (追記) +</TABLE> (追記ここまで)
639 (追記) + (追記ここまで)
640 (追記) +<A NAME="$dataX"><!-- --></A><H3> (追記ここまで)
641 (追記) +$dataX</H3> (追記ここまで)
642 (追記) +<PRE> (追記ここまで)
643 (追記) +public string <B>$dataX</B></PRE> (追記ここまで)
644 (追記) +<DL> (追記ここまで)
645 (追記) +<DD>Array of data holding values for X axis</DL> (追記ここまで)
646 (追記) +<HR> (追記ここまで)
647 (追記) + (追記ここまで)
648 (追記) +<A NAME="$dataY"><!-- --></A><H3> (追記ここまで)
649 (追記) +$dataY</H3> (追記ここまで)
650 (追記) +<PRE> (追記ここまで)
651 (追記) +public string <B>$dataY</B></PRE> (追記ここまで)
652 (追記) +<DL> (追記ここまで)
653 (追記) +<DD>Two dimensional array holding values for Y axis. The key for each array must be unique.</DL> (追記ここまで)
654 (追記) +<HR> (追記ここまで)
655 (追記) + (追記ここまで)
656 (追記) +<A NAME="$decimalPlacesY"><!-- --></A><H3> (追記ここまで)
657 (追記) +$decimalPlacesY</H3> (追記ここまで)
658 (追記) +<PRE> (追記ここまで)
659 (追記) +public integer <B>$decimalPlacesY</B></PRE> (追記ここまで)
660 (追記) +<DL> (追記ここまで)
661 (追記) +<DD>Number of decimal places to show for Y axis tags.</DL> (追記ここまで)
662 (追記) +<HR> (追記ここまで)
663 (追記) + (追記ここまで)
664 (追記) +<A NAME="$error"><!-- --></A><H3> (追記ここまで)
665 (追記) +$error</H3> (追記ここまで)
666 (追記) +<PRE> (追記ここまで)
667 (追記) +public string <B>$error</B></PRE> (追記ここまで)
668 (追記) +<DL> (追記ここまで)
669 (追記) +<DD>Contains error messages.</DL> (追記ここまで)
670 (追記) +<HR> (追記ここまで)
671 (追記) + (追記ここまで)
672 (追記) +<A NAME="$extraSVG"><!-- --></A><H3> (追記ここまで)
673 (追記) +$extraSVG</H3> (追記ここまで)
674 (追記) +<PRE> (追記ここまで)
675 (追記) +public string <B>$extraSVG</B></PRE> (追記ここまで)
676 (追記) +<DL> (追記ここまで)
677 (追記) +<DD>Extra SVG to add to graph. e.g. Filters, Defs, Title. (追記ここまで)
678 (追記) + Note: Title is useful to add if image is viewed out of context. (追記ここまで)
679 (追記) + <dt><code>$svg</code><dd> (追記ここまで)
680 (追記) + String holding SVG text. (追記ここまで)
681 (追記) + </dl></DL> (追記ここまで)
682 (追記) +<HR> (追記ここまで)
683 (追記) + (追記ここまで)
684 (追記) +<A NAME="$graphicHeight"><!-- --></A><H3> (追記ここまで)
685 (追記) +$graphicHeight</H3> (追記ここまで)
686 (追記) +<PRE> (追記ここまで)
687 (追記) +public integer <B>$graphicHeight</B></PRE> (追記ここまで)
688 (追記) +<DL> (追記ここまで)
689 (追記) +<DD>Total height of svg graphic.</DL> (追記ここまで)
690 (追記) +<HR> (追記ここまで)
691 (追記) + (追記ここまで)
692 (追記) +<A NAME="$graphicWidth"><!-- --></A><H3> (追記ここまで)
693 (追記) +$graphicWidth</H3> (追記ここまで)
694 (追記) +<PRE> (追記ここまで)
695 (追記) +public integer <B>$graphicWidth</B></PRE> (追記ここまで)
696 (追記) +<DL> (追記ここまで)
697 (追記) +<DD>Total width of svg graphic.</DL> (追記ここまで)
698 (追記) +<HR> (追記ここまで)
699 (追記) + (追記ここまで)
700 (追記) +<A NAME="$innerPaddingX"><!-- --></A><H3> (追記ここまで)
701 (追記) +$innerPaddingX</H3> (追記ここまで)
702 (追記) +<PRE> (追記ここまで)
703 (追記) +public integer <B>$innerPaddingX</B></PRE> (追記ここまで)
704 (追記) +<DL> (追記ここまで)
705 (追記) +<DD>Padding between bottom border of plot area and text (tags).</DL> (追記ここまで)
706 (追記) +<HR> (追記ここまで)
707 (追記) + (追記ここまで)
708 (追記) +<A NAME="$innerPaddingY"><!-- --></A><H3> (追記ここまで)
709 (追記) +$innerPaddingY</H3> (追記ここまで)
710 (追記) +<PRE> (追記ここまで)
711 (追記) +public integer <B>$innerPaddingY</B></PRE> (追記ここまで)
712 (追記) +<DL> (追記ここまで)
713 (追記) +<DD>Padding between left border of plot area and text (tags).</DL> (追記ここまで)
714 (追記) +<HR> (追記ここまで)
715 (追記) + (追記ここまで)
716 (追記) +<A NAME="$labelX"><!-- --></A><H3> (追記ここまで)
717 (追記) +$labelX</H3> (追記ここまで)
718 (追記) +<PRE> (追記ここまで)
719 (追記) +public string <B>$labelX</B></PRE> (追記ここまで)
720 (追記) +<DL> (追記ここまで)
721 (追記) +<DD>Label for X axis.</DL> (追記ここまで)
722 (追記) +<HR> (追記ここまで)
723 (追記) + (追記ここまで)
724 (追記) +<A NAME="$labelY"><!-- --></A><H3> (追記ここまで)
725 (追記) +$labelY</H3> (追記ここまで)
726 (追記) +<PRE> (追記ここまで)
727 (追記) +public string <B>$labelY</B></PRE> (追記ここまで)
728 (追記) +<DL> (追記ここまで)
729 (追記) +<DD>Label for Y axis.</DL> (追記ここまで)
730 (追記) +<HR> (追記ここまで)
731 (追記) + (追記ここまで)
732 (追記) +<A NAME="$maxY"><!-- --></A><H3> (追記ここまで)
733 (追記) +$maxY</H3> (追記ここまで)
734 (追記) +<PRE> (追記ここまで)
735 (追記) +public integer <B>$maxY</B></PRE> (追記ここまで)
736 (追記) +<DL> (追記ここまで)
737 (追記) +<DD>Maximum value for Y axis values. If a higher value is found in data then (追記ここまで)
738 (追記) + this value is not used.</DL> (追記ここまで)
739 (追記) +<HR> (追記ここまで)
740 (追記) + (追記ここまで)
741 (追記) +<A NAME="$minY"><!-- --></A><H3> (追記ここまで)
742 (追記) +$minY</H3> (追記ここまで)
743 (追記) +<PRE> (追記ここまで)
744 (追記) +public integer <B>$minY</B></PRE> (追記ここまで)
745 (追記) +<DL> (追記ここまで)
746 (追記) +<DD>Minimum value for Y axis values. If a lower value is found in data then (追記ここまで)
747 (追記) + this value is not used.</DL> (追記ここまで)
748 (追記) +<HR> (追記ここまで)
749 (追記) + (追記ここまで)
750 (追記) +<A NAME="$numGridlinesX"><!-- --></A><H3> (追記ここまで)
751 (追記) +$numGridlinesX</H3> (追記ここまで)
752 (追記) +<PRE> (追記ここまで)
753 (追記) +public integer <B>$numGridlinesX</B></PRE> (追記ここまで)
754 (追記) +<DL> (追記ここまで)
755 (追記) +<DD>Number of grid lines corresponding to X axis.</DL> (追記ここまで)
756 (追記) +<HR> (追記ここまで)
757 (追記) + (追記ここまで)
758 (追記) +<A NAME="$numGridlinesY"><!-- --></A><H3> (追記ここまで)
759 (追記) +$numGridlinesY</H3> (追記ここまで)
760 (追記) +<PRE> (追記ここまで)
761 (追記) +public integer <B>$numGridlinesY</B></PRE> (追記ここまで)
762 (追記) +<DL> (追記ここまで)
763 (追記) +<DD>Number of grid lines corresponding to Y axis.</DL> (追記ここまで)
764 (追記) +<HR> (追記ここまで)
765 (追記) + (追記ここまで)
766 (追記) +<A NAME="$offsetGridlinesX"><!-- --></A><H3> (追記ここまで)
767 (追記) +$offsetGridlinesX</H3> (追記ここまで)
768 (追記) +<PRE> (追記ここまで)
769 (追記) +public integer <B>$offsetGridlinesX</B></PRE> (追記ここまで)
770 (追記) +<DL> (追記ここまで)
771 (追記) +<DD>Offset of first X axis gridline from lower-left of plot area as a (追記ここまで)
772 (追記) + fraction of normal gridline spacing.</DL> (追記ここまで)
773 (追記) +<HR> (追記ここまで)
774 (追記) + (追記ここまで)
775 (追記) +<A NAME="$offsetGridlinesY"><!-- --></A><H3> (追記ここまで)
776 (追記) +$offsetGridlinesY</H3> (追記ここまで)
777 (追記) +<PRE> (追記ここまで)
778 (追記) +public integer <B>$offsetGridlinesY</B></PRE> (追記ここまで)
779 (追記) +<DL> (追記ここまで)
780 (追記) +<DD>Offset of first Y axis gridline from lower-left of plot area as a (追記ここまで)
781 (追記) + fraction of normal gridline spacing.</DL> (追記ここまで)
782 (追記) +<HR> (追記ここまで)
783 (追記) + (追記ここまで)
784 (追記) +<A NAME="$outerPadding"><!-- --></A><H3> (追記ここまで)
785 (追記) +$outerPadding</H3> (追記ここまで)
786 (追記) +<PRE> (追記ここまで)
787 (追記) +public integer <B>$outerPadding</B></PRE> (追記ここまで)
788 (追記) +<DL> (追記ここまで)
789 (追記) +<DD>Padding between outer border of graphic area and text (title and labels).</DL> (追記ここまで)
790 (追記) +<HR> (追記ここまで)
791 (追記) + (追記ここまで)
792 (追記) +<A NAME="$plotHeight"><!-- --></A><H3> (追記ここまで)
793 (追記) +$plotHeight</H3> (追記ここまで)
794 (追記) +<PRE> (追記ここまで)
795 (追記) +public integer <B>$plotHeight</B></PRE> (追記ここまで)
796 (追記) +<DL> (追記ここまで)
797 (追記) +<DD>Height of plot area.</DL> (追記ここまで)
798 (追記) +<HR> (追記ここまで)
799 (追記) + (追記ここまで)
800 (追記) +<A NAME="$plotOffsetX"><!-- --></A><H3> (追記ここまで)
801 (追記) +$plotOffsetX</H3> (追記ここまで)
802 (追記) +<PRE> (追記ここまで)
803 (追記) +public integer <B>$plotOffsetX</B></PRE> (追記ここまで)
804 (追記) +<DL> (追記ここまで)
805 (追記) +<DD>Offset of plot area from left of graphic area.</DL> (追記ここまで)
806 (追記) +<HR> (追記ここまで)
807 (追記) + (追記ここまで)
808 (追記) +<A NAME="$plotOffsetY"><!-- --></A><H3> (追記ここまで)
809 (追記) +$plotOffsetY</H3> (追記ここまで)
810 (追記) +<PRE> (追記ここまで)
811 (追記) +public integer <B>$plotOffsetY</B></PRE> (追記ここまで)
812 (追記) +<DL> (追記ここまで)
813 (追記) +<DD>Offset of plot area from top of graphic area.</DL> (追記ここまで)
814 (追記) +<HR> (追記ここまで)
815 (追記) + (追記ここまで)
816 (追記) +<A NAME="$plotWidth"><!-- --></A><H3> (追記ここまで)
817 (追記) +$plotWidth</H3> (追記ここまで)
818 (追記) +<PRE> (追記ここまで)
819 (追記) +public integer <B>$plotWidth</B></PRE> (追記ここまで)
820 (追記) +<DL> (追記ここまで)
821 (追記) +<DD>Width of plot area.</DL> (追記ここまで)
822 (追記) +<HR> (追記ここまで)
823 (追記) + (追記ここまで)
824 (追記) +<A NAME="$resolutionY"><!-- --></A><H3> (追記ここまで)
825 (追記) +$resolutionY</H3> (追記ここまで)
826 (追記) +<PRE> (追記ここまで)
827 (追記) +public integer <B>$resolutionY</B></PRE> (追記ここまで)
828 (追記) +<DL> (追記ここまで)
829 (追記) +<DD>Resolution for Y axis tags. See notes for method <code>_findRange</code>.</DL> (追記ここまで)
830 (追記) +<HR> (追記ここまで)
831 (追記) + (追記ここまで)
832 (追記) +<A NAME="$rotTagsX"><!-- --></A><H3> (追記ここまで)
833 (追記) +$rotTagsX</H3> (追記ここまで)
834 (追記) +<PRE> (追記ここまで)
835 (追記) +public integer <B>$rotTagsX</B></PRE> (追記ここまで)
836 (追記) +<DL> (追記ここまで)
837 (追記) +<DD>X axis tags rotation. Negative/Anticlockwise. (追記ここまで)
838 (追記) + Increase innerPaddingX to prevent overlap with plot area.</DL> (追記ここまで)
839 (追記) +<HR> (追記ここまで)
840 (追記) + (追記ここまで)
841 (追記) +<A NAME="$rotTagsY"><!-- --></A><H3> (追記ここまで)
842 (追記) +$rotTagsY</H3> (追記ここまで)
843 (追記) +<PRE> (追記ここまで)
844 (追記) +public integer <B>$rotTagsY</B></PRE> (追記ここまで)
845 (追記) +<DL> (追記ここまで)
846 (追記) +<DD>Y axis tags rotation. Negative/Anticlockwise. (追記ここまで)
847 (追記) + Increase innerPaddingY to prevent overlap with plot area.</DL> (追記ここまで)
848 (追記) +<HR> (追記ここまで)
849 (追記) + (追記ここまで)
850 (追記) +<A NAME="$styleBarDefault"><!-- --></A><H3> (追記ここまで)
851 (追記) +$styleBarDefault</H3> (追記ここまで)
852 (追記) +<PRE> (追記ここまで)
853 (追記) +public string <B>$styleBarDefault</B></PRE> (追記ここまで)
854 (追記) +<DL> (追記ここまで)
855 (追記) +<DD>Default presentation attributes for bar plots.</DL> (追記ここまで)
856 (追記) +<HR> (追記ここまで)
857 (追記) + (追記ここまで)
858 (追記) +<A NAME="$styleBox"><!-- --></A><H3> (追記ここまで)
859 (追記) +$styleBox</H3> (追記ここまで)
860 (追記) +<PRE> (追記ここまで)
861 (追記) +public string <B>$styleBox</B></PRE> (追記ここまで)
862 (追記) +<DL> (追記ここまで)
863 (追記) +<DD>Presentation attributes for box around plot area.</DL> (追記ここまで)
864 (追記) +<HR> (追記ここまで)
865 (追記) + (追記ここまで)
866 (追記) +<A NAME="$styleBoxDefault"><!-- --></A><H3> (追記ここまで)
867 (追記) +$styleBoxDefault</H3> (追記ここまで)
868 (追記) +<PRE> (追記ここまで)
869 (追記) +public string <B>$styleBoxDefault</B></PRE> (追記ここまで)
870 (追記) +<DL> (追記ここまで)
871 (追記) +<DD>Default presentation attributes for box around plot area.</DL> (追記ここまで)
872 (追記) +<HR> (追記ここまで)
873 (追記) + (追記ここまで)
874 (追記) +<A NAME="$styleGridX"><!-- --></A><H3> (追記ここまで)
875 (追記) +$styleGridX</H3> (追記ここまで)
876 (追記) +<PRE> (追記ここまで)
877 (追記) +public string <B>$styleGridX</B></PRE> (追記ここまで)
878 (追記) +<DL> (追記ここまで)
879 (追記) +<DD>Presentation attributes for grid corresponding to X axis.</DL> (追記ここまで)
880 (追記) +<HR> (追記ここまで)
881 (追記) + (追記ここまで)
882 (追記) +<A NAME="$styleGridXDefault"><!-- --></A><H3> (追記ここまで)
883 (追記) +$styleGridXDefault</H3> (追記ここまで)
884 (追記) +<PRE> (追記ここまで)
885 (追記) +public string <B>$styleGridXDefault</B></PRE> (追記ここまで)
886 (追記) +<DL> (追記ここまで)
887 (追記) +<DD>Default presentation attributes for grid corresponding to X axis.</DL> (追記ここまで)
888 (追記) +<HR> (追記ここまで)
889 (追記) + (追記ここまで)
890 (追記) +<A NAME="$styleGridY"><!-- --></A><H3> (追記ここまで)
891 (追記) +$styleGridY</H3> (追記ここまで)
892 (追記) +<PRE> (追記ここまで)
893 (追記) +public string <B>$styleGridY</B></PRE> (追記ここまで)
894 (追記) +<DL> (追記ここまで)
895 (追記) +<DD>Presentation attributes for grid corresponding to Y axis.</DL> (追記ここまで)
896 (追記) +<HR> (追記ここまで)
897 (追記) + (追記ここまで)
898 (追記) +<A NAME="$styleGridYDefault"><!-- --></A><H3> (追記ここまで)
899 (追記) +$styleGridYDefault</H3> (追記ここまで)
900 (追記) +<PRE> (追記ここまで)
901 (追記) +public string <B>$styleGridYDefault</B></PRE> (追記ここまで)
902 (追記) +<DL> (追記ここまで)
903 (追記) +<DD>Default presentation attributes for grid corresponding to X axis.</DL> (追記ここまで)
904 (追記) +<HR> (追記ここまで)
905 (追記) + (追記ここまで)
906 (追記) +<A NAME="$styleLabelX"><!-- --></A><H3> (追記ここまで)
907 (追記) +$styleLabelX</H3> (追記ここまで)
908 (追記) +<PRE> (追記ここまで)
909 (追記) +public string <B>$styleLabelX</B></PRE> (追記ここまで)
910 (追記) +<DL> (追記ここまで)
911 (追記) +<DD>Presentation attributes for label.</DL> (追記ここまで)
912 (追記) +<HR> (追記ここまで)
913 (追記) + (追記ここまで)
914 (追記) +<A NAME="$styleLabelXDefault"><!-- --></A><H3> (追記ここまで)
915 (追記) +$styleLabelXDefault</H3> (追記ここまで)
916 (追記) +<PRE> (追記ここまで)
917 (追記) +public string <B>$styleLabelXDefault</B></PRE> (追記ここまで)
918 (追記) +<DL> (追記ここまで)
919 (追記) +<DD>Default presentation attributes for label.</DL> (追記ここまで)
920 (追記) +<HR> (追記ここまで)
921 (追記) + (追記ここまで)
922 (追記) +<A NAME="$styleLabelY"><!-- --></A><H3> (追記ここまで)
923 (追記) +$styleLabelY</H3> (追記ここまで)
924 (追記) +<PRE> (追記ここまで)
925 (追記) +public string <B>$styleLabelY</B></PRE> (追記ここまで)
926 (追記) +<DL> (追記ここまで)
927 (追記) +<DD>Presentation attributes for label.</DL> (追記ここまで)
928 (追記) +<HR> (追記ここまで)
929 (追記) + (追記ここまで)
930 (追記) +<A NAME="$styleLabelYDefault"><!-- --></A><H3> (追記ここまで)
931 (追記) +$styleLabelYDefault</H3> (追記ここまで)
932 (追記) +<PRE> (追記ここまで)
933 (追記) +public string <B>$styleLabelYDefault</B></PRE> (追記ここまで)
934 (追記) +<DL> (追記ここまで)
935 (追記) +<DD>Default presentation attributes for label.</DL> (追記ここまで)
936 (追記) +<HR> (追記ここまで)
937 (追記) + (追記ここまで)
938 (追記) +<A NAME="$styleLineDefault"><!-- --></A><H3> (追記ここまで)
939 (追記) +$styleLineDefault</H3> (追記ここまで)
940 (追記) +<PRE> (追記ここまで)
941 (追記) +public string <B>$styleLineDefault</B></PRE> (追記ここまで)
942 (追記) +<DL> (追記ここまで)
943 (追記) +<DD>Default presentation attributes for line plots.</DL> (追記ここまで)
944 (追記) +<HR> (追記ここまで)
945 (追記) + (追記ここまで)
946 (追記) +<A NAME="$stylePolylineDefault"><!-- --></A><H3> (追記ここまで)
947 (追記) +$stylePolylineDefault</H3> (追記ここまで)
948 (追記) +<PRE> (追記ここまで)
949 (追記) +public string <B>$stylePolylineDefault</B></PRE> (追記ここまで)
950 (追記) +<DL> (追記ここまで)
951 (追記) +<DD>Default presentation attributes for polyline plots (inside group tag).</DL> (追記ここまで)
952 (追記) +<HR> (追記ここまで)
953 (追記) + (追記ここまで)
954 (追記) +<A NAME="$styleTagsX"><!-- --></A><H3> (追記ここまで)
955 (追記) +$styleTagsX</H3> (追記ここまで)
956 (追記) +<PRE> (追記ここまで)
957 (追記) +public string <B>$styleTagsX</B></PRE> (追記ここまで)
958 (追記) +<DL> (追記ここまで)
959 (追記) +<DD>Presentation attributes for X axis tags.</DL> (追記ここまで)
960 (追記) +<HR> (追記ここまで)
961 (追記) + (追記ここまで)
962 (追記) +<A NAME="$styleTagsXDefault"><!-- --></A><H3> (追記ここまで)
963 (追記) +$styleTagsXDefault</H3> (追記ここまで)
964 (追記) +<PRE> (追記ここまで)
965 (追記) +public string <B>$styleTagsXDefault</B></PRE> (追記ここまで)
966 (追記) +<DL> (追記ここまで)
967 (追記) +<DD>Default presentation attributes for X axis tags.</DL> (追記ここまで)
968 (追記) +<HR> (追記ここまで)
969 (追記) + (追記ここまで)
970 (追記) +<A NAME="$styleTagsY"><!-- --></A><H3> (追記ここまで)
971 (追記) +$styleTagsY</H3> (追記ここまで)
972 (追記) +<PRE> (追記ここまで)
973 (追記) +public string <B>$styleTagsY</B></PRE> (追記ここまで)
974 (追記) +<DL> (追記ここまで)
975 (追記) +<DD>Presentation attributes for Y axis tags.</DL> (追記ここまで)
976 (追記) +<HR> (追記ここまで)
977 (追記) + (追記ここまで)
978 (追記) +<A NAME="$styleTagsYDefault"><!-- --></A><H3> (追記ここまで)
979 (追記) +$styleTagsYDefault</H3> (追記ここまで)
980 (追記) +<PRE> (追記ここまで)
981 (追記) +public string <B>$styleTagsYDefault</B></PRE> (追記ここまで)
982 (追記) +<DL> (追記ここまで)
983 (追記) +<DD>Default presentation attributes for Y axis tags.</DL> (追記ここまで)
984 (追記) +<HR> (追記ここまで)
985 (追記) + (追記ここまで)
986 (追記) +<A NAME="$styleTitle"><!-- --></A><H3> (追記ここまで)
987 (追記) +$styleTitle</H3> (追記ここまで)
988 (追記) +<PRE> (追記ここまで)
989 (追記) +public string <B>$styleTitle</B></PRE> (追記ここまで)
990 (追記) +<DL> (追記ここまで)
991 (追記) +<DD>Presentation attributes for title.</DL> (追記ここまで)
992 (追記) +<HR> (追記ここまで)
993 (追記) + (追記ここまで)
994 (追記) +<A NAME="$styleTitleDefault"><!-- --></A><H3> (追記ここまで)
995 (追記) +$styleTitleDefault</H3> (追記ここまで)
996 (追記) +<PRE> (追記ここまで)
997 (追記) +public string <B>$styleTitleDefault</B></PRE> (追記ここまで)
998 (追記) +<DL> (追記ここまで)
999 (追記) +<DD>Default presentation attributes for title.</DL> (追記ここまで)
1000 (追記) +<HR> (追記ここまで)
1001 (追記) + (追記ここまで)
1002 (追記) +<A NAME="$svg"><!-- --></A><H3> (追記ここまで)
1003 (追記) +$svg</H3> (追記ここまで)
1004 (追記) +<PRE> (追記ここまで)
1005 (追記) +public string <B>$svg</B></PRE> (追記ここまで)
1006 (追記) +<DL> (追記ここまで)
1007 (追記) +<DD>SVG XML result.</DL> (追記ここまで)
1008 (追記) +<HR> (追記ここまで)
1009 (追記) + (追記ここまで)
1010 (追記) +<A NAME="$title"><!-- --></A><H3> (追記ここまで)
1011 (追記) +$title</H3> (追記ここまで)
1012 (追記) +<PRE> (追記ここまで)
1013 (追記) +public string <B>$title</B></PRE> (追記ここまで)
1014 (追記) +<DL> (追記ここまで)
1015 (追記) +<DD>Title for Graph.</DL> (追記ここまで)
1016 (追記) + (追記ここまで)
1017 (追記) +<!-- ========= CONSTRUCTOR DETAIL ======== --> (追記ここまで)
1018 (追記) + (追記ここまで)
1019 (追記) +<A NAME="constructor_detail"><!-- --></A> (追記ここまで)
1020 (追記) +<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"> (追記ここまで)
1021 (追記) +<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> (追記ここまで)
1022 (追記) +<TD COLSPAN=1><FONT SIZE="+2"> (追記ここまで)
1023 (追記) +<B>Constructor Detail</B></FONT></TD> (追記ここまで)
1024 (追記) +</TR> (追記ここまで)
1025 (追記) +</TABLE> (追記ここまで)
1026 (追記) + (追記ここまで)
1027 (追記) +<A NAME="svgGraph()"><!-- --></A><H3> (追記ここまで)
1028 (追記) +svgGraph</H3> (追記ここまで)
1029 (追記) +<PRE> (追記ここまで)
1030 (追記) +public <B>svgGraph</B>()</PRE> (追記ここまで)
1031 (追記) +<DL> (追記ここまで)
1032 (追記) +<DD>Define static variables used in the class.</DL> (追記ここまで)
1033 (追記) + (追記ここまで)
1034 (追記) +<!-- ============ METHOD DETAIL ========== --> (追記ここまで)
1035 (追記) + (追記ここまで)
1036 (追記) +<A NAME="method_detail"><!-- --></A> (追記ここまで)
1037 (追記) +<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"> (追記ここまで)
1038 (追記) +<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> (追記ここまで)
1039 (追記) +<TD COLSPAN=1><FONT SIZE="+2"> (追記ここまで)
1040 (追記) +<B>Method Detail</B></FONT></TD> (追記ここまで)
1041 (追記) +</TR> (追記ここまで)
1042 (追記) +</TABLE> (追記ここまで)
1043 (追記) + (追記ここまで)
1044 (追記) +<A NAME="_findRange(var, var, var, var)"><!-- --></A><H3> (追記ここまで)
1045 (追記) +_findRange</H3> (追記ここまで)
1046 (追記) +<PRE> (追記ここまで)
1047 (追記) +private array <B>_findRange</B>(var&nbsp;$data, (追記ここまで)
1048 (追記) + var&nbsp;$min, (追記ここまで)
1049 (追記) + var&nbsp;$max, (追記ここまで)
1050 (追記) + var&nbsp;$resolution)</PRE> (追記ここまで)
1051 (追記) +<DL> (追記ここまで)
1052 (追記) +<DD>Find the maximum and minimum values for a set of data.<br> (追記ここまで)
1053 (追記) + The $resolution variable is used for rounding maximum and minimum values.<br> (追記ここまで)
1054 (追記) + If maximum value is 8645 then<br> (追記ここまで)
1055 (追記) + If $resolution is 0, then maximum value becomes 9000.<br> (追記ここまで)
1056 (追記) + If $resolution is 1, then maximum value becomes 8700.<br> (追記ここまで)
1057 (追記) + If $resolution is 2, then maximum value becomes 8650.<br> (追記ここまで)
1058 (追記) + If $resolution is 3, then maximum value becomes 8645.<br><DD><DL> (追記ここまで)
1059 (追記) +<DT><B>Parameters:</B><DD><CODE>$data</CODE> - Data to find the range for<DD><CODE>$min</CODE> - Minimum value to start at. If a lower number is found then this value is not used.<DD><CODE>$max</CODE> - Maximum value to start at. If a larger number is found then this value is not used.<DD><CODE>$resolution</CODE> - Resolution for range.</DL> (追記ここまで)
1060 (追記) +</DD> (追記ここまで)
1061 (追記) +</DL> (追記ここまで)
1062 (追記) +<HR> (追記ここまで)
1063 (追記) + (追記ここまで)
1064 (追記) +<A NAME="bar(var)"><!-- --></A><H3> (追記ここまで)
1065 (追記) +bar</H3> (追記ここまで)
1066 (追記) +<PRE> (追記ここまで)
1067 (追記) +public boolean <B>bar</B>(var&nbsp;$whichDataSet)</PRE> (追記ここまで)
1068 (追記) +<DL> (追記ここまで)
1069 (追記) +<DD>Draw a bar for each data point from the data set selected.<DD><DL> (追記ここまで)
1070 (追記) +<DT><B>Parameters:</B><DD><CODE>$whichDataSet</CODE> - Which set of data to draw. This is the index of the data array to be used. (追記ここまで)
1071 (追記) + <br><br> (追記ここまで)
1072 (追記) + The format parameter array for the selected dataset can have three members:<br> (追記ここまで)
1073 (追記) + 'style' - Style for bar,<br> (追記ここまで)
1074 (追記) + 'barWidth' - Width of bar as fraction of distance between gridlines. (追記ここまで)
1075 (追記) + Values greater than 1 will result in bars overlapping.<br> (追記ここまで)
1076 (追記) + 'barOffset' - Offset of the bar as fraction of bar width. By default it is centered on the gridline.<DT><B>Returns:</B><DD>BOOLEAN FALSE if style, barWidth, or barOffset parameters are missing.</DL> (追記ここまで)
1077 (追記) +</DD> (追記ここまで)
1078 (追記) +</DL> (追記ここまで)
1079 (追記) +<HR> (追記ここまで)
1080 (追記) + (追記ここまで)
1081 (追記) +<A NAME="drawBox()"><!-- --></A><H3> (追記ここまで)
1082 (追記) +drawBox</H3> (追記ここまで)
1083 (追記) +<PRE> (追記ここまで)
1084 (追記) +public void <B>drawBox</B>()</PRE> (追記ここまで)
1085 (追記) +<DL> (追記ここまで)
1086 (追記) +<DD>Draws the box around the plotting area.</DL> (追記ここまで)
1087 (追記) +<HR> (追記ここまで)
1088 (追記) + (追記ここまで)
1089 (追記) +<A NAME="drawGraph()"><!-- --></A><H3> (追記ここまで)
1090 (追記) +drawGraph</H3> (追記ここまで)
1091 (追記) +<PRE> (追記ここまで)
1092 (追記) +public void <B>drawGraph</B>()</PRE> (追記ここまで)
1093 (追記) +<DL> (追記ここまで)
1094 (追記) +<DD>Calls functions to draw title, labels, tags, grid lines, and box of graph.</DL> (追記ここまで)
1095 (追記) +<HR> (追記ここまで)
1096 (追記) + (追記ここまで)
1097 (追記) +<A NAME="drawGridX()"><!-- --></A><H3> (追記ここまで)
1098 (追記) +drawGridX</H3> (追記ここまで)
1099 (追記) +<PRE> (追記ここまで)
1100 (追記) +public void <B>drawGridX</B>()</PRE> (追記ここまで)
1101 (追記) +<DL> (追記ここまで)
1102 (追記) +<DD>Draws the grid lines from top to bottom in the plotting area.</DL> (追記ここまで)
1103 (追記) +<HR> (追記ここまで)
1104 (追記) + (追記ここまで)
1105 (追記) +<A NAME="drawGridY()"><!-- --></A><H3> (追記ここまで)
1106 (追記) +drawGridY</H3> (追記ここまで)
1107 (追記) +<PRE> (追記ここまで)
1108 (追記) +public void <B>drawGridY</B>()</PRE> (追記ここまで)
1109 (追記) +<DL> (追記ここまで)
1110 (追記) +<DD>Draws the grid lines from right to left in the plotting area.</DL> (追記ここまで)
1111 (追記) +<HR> (追記ここまで)
1112 (追記) + (追記ここまで)
1113 (追記) +<A NAME="drawOuterText()"><!-- --></A><H3> (追記ここまで)
1114 (追記) +drawOuterText</H3> (追記ここまで)
1115 (追記) +<PRE> (追記ここまで)
1116 (追記) +public void <B>drawOuterText</B>()</PRE> (追記ここまで)
1117 (追記) +<DL> (追記ここまで)
1118 (追記) +<DD>Draw the title and axis labels around the outside of the graphic area.</DL> (追記ここまで)
1119 (追記) +<HR> (追記ここまで)
1120 (追記) + (追記ここまで)
1121 (追記) +<A NAME="drawTagsX()"><!-- --></A><H3> (追記ここまで)
1122 (追記) +drawTagsX</H3> (追記ここまで)
1123 (追記) +<PRE> (追記ここまで)
1124 (追記) +public void <B>drawTagsX</B>()</PRE> (追記ここまで)
1125 (追記) +<DL> (追記ここまで)
1126 (追記) +<DD>Draws the axis tag text outside the plotting area on the x axis.</DL> (追記ここまで)
1127 (追記) +<HR> (追記ここまで)
1128 (追記) + (追記ここまで)
1129 (追記) +<A NAME="drawTagsY()"><!-- --></A><H3> (追記ここまで)
1130 (追記) +drawTagsY</H3> (追記ここまで)
1131 (追記) +<PRE> (追記ここまで)
1132 (追記) +public void <B>drawTagsY</B>()</PRE> (追記ここまで)
1133 (追記) +<DL> (追記ここまで)
1134 (追記) +<DD>Draws the axis tag text outside the plotting area on the y axis.</DL> (追記ここまで)
1135 (追記) +<HR> (追記ここまで)
1136 (追記) + (追記ここまで)
1137 (追記) +<A NAME="generateSVG()"><!-- --></A><H3> (追記ここまで)
1138 (追記) +generateSVG</H3> (追記ここまで)
1139 (追記) +<PRE> (追記ここまで)
1140 (追記) +public void <B>generateSVG</B>()</PRE> (追記ここまで)
1141 (追記) +<DL> (追記ここまで)
1142 (追記) +<DD>Generate SVG for entire graph.</DL> (追記ここまで)
1143 (追記) +<HR> (追記ここまで)
1144 (追記) + (追記ここまで)
1145 (追記) +<A NAME="init()"><!-- --></A><H3> (追記ここまで)
1146 (追記) +init</H3> (追記ここまで)
1147 (追記) +<PRE> (追記ここまで)
1148 (追記) +public boolean <B>init</B>()</PRE> (追記ここまで)
1149 (追記) +<DL> (追記ここまで)
1150 (追記) +<DD>Initialises the variables used for drawing points, lines, grid, and ticks in the plotting area.<DD><DL> (追記ここまで)
1151 (追記) +<DT><B>Returns:</B><DD>Boolean - FALSE if an error was encountered while processing data.</DL> (追記ここまで)
1152 (追記) +</DD> (追記ここまで)
1153 (追記) +</DL> (追記ここまで)
1154 (追記) +<HR> (追記ここまで)
1155 (追記) + (追記ここまで)
1156 (追記) +<A NAME="line(var)"><!-- --></A><H3> (追記ここまで)
1157 (追記) +line</H3> (追記ここまで)
1158 (追記) +<PRE> (追記ここまで)
1159 (追記) +public void <B>line</B>(var&nbsp;$whichDataSet)</PRE> (追記ここまで)
1160 (追記) +<DL> (追記ここまで)
1161 (追記) +<DD>Draw line from one point to the next stopping at each. (追記ここまで)
1162 (追記) + This method is used for drawing lines with markers at each plot point. (追記ここまで)
1163 (追記) + <br><br> (追記ここまで)
1164 (追記) + The format parameter array for the selected dataset can have two members:<br> (追記ここまで)
1165 (追記) + 'style' - Style for line,<br> (追記ここまで)
1166 (追記) + 'attributes' - Attributes to place inside line tag.<DD><DL> (追記ここまで)
1167 (追記) +<DT><B>Parameters:</B><DD><CODE>$whichDataSet</CODE> - Which set of data to draw. This is the index of the data array to be used.</DL> (追記ここまで)
1168 (追記) +</DD> (追記ここまで)
1169 (追記) +</DL> (追記ここまで)
1170 (追記) +<HR> (追記ここまで)
1171 (追記) + (追記ここまで)
1172 (追記) +<A NAME="outputSVG()"><!-- --></A><H3> (追記ここまで)
1173 (追記) +outputSVG</H3> (追記ここまで)
1174 (追記) +<PRE> (追記ここまで)
1175 (追記) +public void <B>outputSVG</B>()</PRE> (追記ここまで)
1176 (追記) +<DL> (追記ここまで)
1177 (追記) +<DD>Output SVG as XML text including appropriate HTTP header information.</DL> (追記ここまで)
1178 (追記) +<HR> (追記ここまで)
1179 (追記) + (追記ここまで)
1180 (追記) +<A NAME="polyLine(var)"><!-- --></A><H3> (追記ここまで)
1181 (追記) +polyLine</H3> (追記ここまで)
1182 (追記) +<PRE> (追記ここまで)
1183 (追記) +public boolean <B>polyLine</B>(var&nbsp;$whichDataSet)</PRE> (追記ここまで)
1184 (追記) +<DL> (追記ここまで)
1185 (追記) +<DD>Draw a line from one point to the next continuously without stopping to draw markers. (追記ここまで)
1186 (追記) + This method is used for drawing lines with markers on the end, for example, an arrow indicating trend. (追記ここまで)
1187 (追記) + <br><br> (追記ここまで)
1188 (追記) + The format parameter array for the selected dataset can have two members:<br> (追記ここまで)
1189 (追記) + 'style' - Style for line,<br> (追記ここまで)
1190 (追記) + 'attributes' - Attributes to place inside polyline tag.<DD><DL> (追記ここまで)
1191 (追記) +<DT><B>Parameters:</B><DD><CODE>$whichDataSet</CODE> - Which set of data to draw. This is the index of the data array to be used.<DT><B>Returns:</B><DD>BOOLEAN FALSE if no style is defined for the data set selected.</DL> (追記ここまで)
1192 (追記) +</DD> (追記ここまで)
1193 (追記) +</DL> (追記ここまで)
1194 (追記) +<!-- ========= END OF CLASS DATA ========= --> (追記ここまで)
1195 (追記) +<HR> (追記ここまで)
1196 (追記) + (追記ここまで)
1197 (追記) +<!-- ========== START OF NAVBAR ========== --> (追記ここまで)
1198 (追記) +<A NAME="navbar_bottom"><!-- --></A> (追記ここまで)
1199 (追記) +<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0"> (追記ここまで)
1200 (追記) +<TR> (追記ここまで)
1201 (追記) +<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> (追記ここまで)
1202 (追記) +<A NAME="navbar_bottom_firstrow"><!-- --></A> (追記ここまで)
1203 (追記) +<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3"> (追記ここまで)
1204 (追記) + <TR ALIGN="center" VALIGN="top"> (追記ここまで)
1205 (追記) + <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD> (追記ここまで)
1206 (追記) + </TR> (追記ここまで)
1207 (追記) +</TABLE> (追記ここまで)
1208 (追記) +</TD> (追記ここまで)
1209 (追記) +<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> (追記ここまで)
1210 (追記) +</EM> (追記ここまで)
1211 (追記) +</TD> (追記ここまで)
1212 (追記) +</TR> (追記ここまで)
1213 (追記) + (追記ここまで)
1214 (追記) +<TR> (追記ここまで)
1215 (追記) +<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> (追記ここまで)
1216 (追記) +&nbsp;PREV CLASS&nbsp; (追記ここまで)
1217 (追記) +&nbsp;NEXT CLASS</FONT></TD> (追記ここまで)
1218 (追記) +<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> (追記ここまで)
1219 (追記) + <A HREF="index.html" TARGET="_top"><B>FRAMES</B></A> &nbsp; (追記ここまで)
1220 (追記) +&nbsp;<A HREF="svgGraph.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD> (追記ここまで)
1221 (追記) +</TR> (追記ここまで)
1222 (追記) +<TR> (追記ここまで)
1223 (追記) +<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> (追記ここまで)
1224 (追記) + SUMMARY: &nbsp;INNER&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD> (追記ここまで)
1225 (追記) +<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> (追記ここまで)
1226 (追記) +DETAIL: &nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD> (追記ここまで)
1227 (追記) +</TR> (追記ここまで)
1228 (追記) +</TABLE> (追記ここまで)
1229 (追記) +<!-- =========== END OF NAVBAR =========== --> (追記ここまで)
1230 (追記) + (追記ここまで)
1231 (追記) +<HR> (追記ここまで)
1232 (追記) + (追記ここまで)
1233 (追記) +</BODY> (追記ここまで)
1234 (追記) +</HTML> (追記ここまで)
Index: trunk/extensions/FlaggedRevs/svggraph/test01.php
— — @@ -0,0 +1,58 @@
2 (追記) +<?php (追記ここまで)
3 (追記) +error_reporting(0); (追記ここまで)
4 (追記) + (追記ここまで)
5 (追記) +include 'svgGraph.php'; (追記ここまで)
6 (追記) +include 'svgGraph1.php'; (追記ここまで)
7 (追記) + (追記ここまで)
8 (追記) +$graph = new svgGraph1; (追記ここまで)
9 (追記) +$graph->graphicWidth = 400; (追記ここまで)
10 (追記) +$graph->graphicHeight = 300; (追記ここまで)
11 (追記) +$graph->plotWidth = 300; (追記ここまで)
12 (追記) +$graph->plotHeight = 200; (追記ここまで)
13 (追記) +$graph->plotOffsetX = 70; (追記ここまで)
14 (追記) +$graph->plotOffsetY = 50; (追記ここまで)
15 (追記) +$graph->numGridlinesY = 6; (追記ここまで)
16 (追記) +$graph->numTicksY = 6; (追記ここまで)
17 (追記) + (追記ここまで)
18 (追記) +$graph->innerPaddingX = 4; (追記ここまで)
19 (追記) +$graph->innerPaddingY = 4; (追記ここまで)
20 (追記) +$graph->outerPadding = 10; (追記ここまで)
21 (追記) + (追記ここまで)
22 (追記) +$graph->offsetGridlinesX = 0; (追記ここまで)
23 (追記) + (追記ここまで)
24 (追記) +$graph->decimalPlacesY = 2; (追記ここまで)
25 (追記) + (追記ここまで)
26 (追記) +$graph->title = 'Sample Line Graph'; (追記ここまで)
27 (追記) +$graph->styleTitle = 'font-family: sans-serif; font-size: 12pt;'; (追記ここまで)
28 (追記) + (追記ここまで)
29 (追記) +$graph->labelX = 'Day of the Week'; (追記ここまで)
30 (追記) +$graph->styleLabelX = 'font-family: sans-serif; font-size: 10pt;'; (追記ここまで)
31 (追記) +$graph->labelY = 'Some Parameters'; (追記ここまで)
32 (追記) +$graph->styleLabelY = 'font-family: sans-serif; font-size: 10pt;'; (追記ここまで)
33 (追記) + (追記ここまで)
34 (追記) +$graph->dataX = array('Fri', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri'); (追記ここまで)
35 (追記) +$graph->dataY['alpha'] = array(8.610, 7.940, 3.670, 3.670, 6.940, 8.650); (追記ここまで)
36 (追記) +$graph->dataY['beta'] = array(1.456, 3.001, 5.145, 2.050, 1.998, 1.678); (追記ここまで)
37 (追記) +$graph->dataY['gamma'] = array(4.896, 4.500, 4.190, 3.050, 2.888, 3.678); (追記ここまで)
38 (追記) + (追記ここまで)
39 (追記) +$graph->styleTagsX = 'font-family: monospace; font-size: 8pt;'; (追記ここまで)
40 (追記) +$graph->styleTagsY = 'font-family: monospace; font-size: 8pt;'; (追記ここまで)
41 (追記) + (追記ここまで)
42 (追記) +$graph->format['alpha'] = array( (追記ここまで)
43 (追記) + 'style' => 'stroke:#F00; stroke-width:4;'); (追記ここまで)
44 (追記) + (追記ここまで)
45 (追記) +$graph->format['beta'] = array( (追記ここまで)
46 (追記) + 'style' => 'stroke:#0F0; stroke-width:4;'); (追記ここまで)
47 (追記) + (追記ここまで)
48 (追記) +$graph->format['gamma'] = array( (追記ここまで)
49 (追記) + 'style' => 'stroke:#00F; stroke-width:4;'); (追記ここまで)
50 (追記) + (追記ここまで)
51 (追記) + (追記ここまで)
52 (追記) +$graph->init() or die($graph->error); (追記ここまで)
53 (追記) +$graph->drawGraph(); (追記ここまで)
54 (追記) +$graph->line('gamma') or die($graph->error); (追記ここまで)
55 (追記) +$graph->line('beta') or die($graph->error); (追記ここまで)
56 (追記) +$graph->line('alpha') or die($graph->error); (追記ここまで)
57 (追記) + (追記ここまで)
58 (追記) +$graph->outputSVG(); (追記ここまで)
59 (追記) +?> (追記ここまで)
\ No newline at end of file
Property changes on: trunk/extensions/FlaggedRevs/svggraph/test01.php
___________________________________________________________________
Added: svn:eol-style
1 60 + native
Index: trunk/extensions/FlaggedRevs/svggraph/svgGraph.php
— — @@ -0,0 +1,760 @@
2 (追記) +<?php (追記ここまで)
3 (追記) +/** (追記ここまで)
4 (追記) +* This library is free software; you can redistribute it and/or (追記ここまで)
5 (追記) +* modify it under the terms of the GNU Lesser General Public (追記ここまで)
6 (追記) +* License as published by the Free Software Foundation; either (追記ここまで)
7 (追記) +* version 2.1 of the License, or (at your option) any later version. (追記ここまで)
8 (追記) +* (追記ここまで)
9 (追記) +* This library is distributed in the hope that it will be useful, (追記ここまで)
10 (追記) +* but WITHOUT ANY WARRANTY; without even the implied warranty of (追記ここまで)
11 (追記) +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU (追記ここまで)
12 (追記) +* Lesser General Public License for more details. (追記ここまで)
13 (追記) +* (追記ここまで)
14 (追記) +* You should have received a copy of the GNU Lesser General Public (追記ここまで)
15 (追記) +* License along with this library; if not, write to the Free Software (追記ここまで)
16 (追記) +* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA (追記ここまで)
17 (追記) +* (追記ここまで)
18 (追記) +* Copy of GNU Lesser General Public License at: http://www.gnu.org/copyleft/lesser.txt (追記ここまで)
19 (追記) +* Contact author at: hveluwenkamp@myrealbox.com (追記ここまで)
20 (追記) +* (追記ここまで)
21 (追記) +*/ (追記ここまで)
22 (追記) + (追記ここまで)
23 (追記) +/** (追記ここまで)
24 (追記) +* Takes an array or multiple arrays of data and outputs a graph in SVG format. (追記ここまで)
25 (追記) +* The SVG language allows for a high degree of control of the output, (追記ここまで)
26 (追記) +* thus this class is intended to be extended. (追記ここまで)
27 (追記) +* (追記ここまで)
28 (追記) +* @author Herman Veluwenkamp (追記ここまで)
29 (追記) +* @version 1.2alpha (追記ここまで)
30 (追記) +*/ (追記ここまで)
31 (追記) +class svgGraph { (追記ここまで)
32 (追記) + (追記ここまで)
33 (追記) + /** (追記ここまで)
34 (追記) + * Total width of svg graphic. (追記ここまで)
35 (追記) + * @type integer (追記ここまで)
36 (追記) + * @public (追記ここまで)
37 (追記) + */ (追記ここまで)
38 (追記) + var $graphicWidth = 0; (追記ここまで)
39 (追記) + (追記ここまで)
40 (追記) + /** (追記ここまで)
41 (追記) + * Total height of svg graphic. (追記ここまで)
42 (追記) + * @type integer (追記ここまで)
43 (追記) + * @public (追記ここまで)
44 (追記) + */ (追記ここまで)
45 (追記) + var $graphicHeight = 0; (追記ここまで)
46 (追記) + (追記ここまで)
47 (追記) + /** (追記ここまで)
48 (追記) + * Width of plot area. (追記ここまで)
49 (追記) + * @type integer (追記ここまで)
50 (追記) + * @public (追記ここまで)
51 (追記) + */ (追記ここまで)
52 (追記) + var $plotWidth = 0; (追記ここまで)
53 (追記) + (追記ここまで)
54 (追記) + /** (追記ここまで)
55 (追記) + * Height of plot area. (追記ここまで)
56 (追記) + * @type integer (追記ここまで)
57 (追記) + * @public (追記ここまで)
58 (追記) + */ (追記ここまで)
59 (追記) + var $plotHeight = 0; (追記ここまで)
60 (追記) + (追記ここまで)
61 (追記) + /** (追記ここまで)
62 (追記) + * Offset of plot area from left of graphic area. (追記ここまで)
63 (追記) + * @type integer (追記ここまで)
64 (追記) + * @public (追記ここまで)
65 (追記) + */ (追記ここまで)
66 (追記) + var $plotOffsetX = 0; (追記ここまで)
67 (追記) + (追記ここまで)
68 (追記) + /** (追記ここまで)
69 (追記) + * Offset of plot area from top of graphic area. (追記ここまで)
70 (追記) + * @type integer (追記ここまで)
71 (追記) + * @public (追記ここまで)
72 (追記) + */ (追記ここまで)
73 (追記) + var $plotOffsetY = 0; (追記ここまで)
74 (追記) + (追記ここまで)
75 (追記) + /** (追記ここまで)
76 (追記) + * Padding between outer border of graphic area and text (title and labels). (追記ここまで)
77 (追記) + * @type integer (追記ここまで)
78 (追記) + * @public (追記ここまで)
79 (追記) + */ (追記ここまで)
80 (追記) + var $outerPadding = 0; (追記ここまで)
81 (追記) + (追記ここまで)
82 (追記) + /** (追記ここまで)
83 (追記) + * Padding between bottom border of plot area and text (tags). (追記ここまで)
84 (追記) + * @type integer (追記ここまで)
85 (追記) + * @public (追記ここまで)
86 (追記) + */ (追記ここまで)
87 (追記) + var $innerPaddingX = 0; (追記ここまで)
88 (追記) + (追記ここまで)
89 (追記) + /** (追記ここまで)
90 (追記) + * Padding between left border of plot area and text (tags). (追記ここまで)
91 (追記) + * @type integer (追記ここまで)
92 (追記) + * @public (追記ここまで)
93 (追記) + */ (追記ここまで)
94 (追記) + var $innerPaddingY = 0; (追記ここまで)
95 (追記) + (追記ここまで)
96 (追記) + /** (追記ここまで)
97 (追記) + * Array of data holding values for X axis (追記ここまで)
98 (追記) + * @type string (追記ここまで)
99 (追記) + * @public (追記ここまで)
100 (追記) + */ (追記ここまで)
101 (追記) + var $dataX = array(); (追記ここまで)
102 (追記) + (追記ここまで)
103 (追記) + /** (追記ここまで)
104 (追記) + * Two dimensional array holding values for Y axis. The key for each array must be unique. (追記ここまで)
105 (追記) + * @type string (追記ここまで)
106 (追記) + * @public (追記ここまで)
107 (追記) + */ (追記ここまで)
108 (追記) + var $dataY = array(); (追記ここまで)
109 (追記) + (追記ここまで)
110 (追記) + /** (追記ここまで)
111 (追記) + * Title for Graph. (追記ここまで)
112 (追記) + * @type string (追記ここまで)
113 (追記) + * @public (追記ここまで)
114 (追記) + */ (追記ここまで)
115 (追記) + var $title = ''; (追記ここまで)
116 (追記) + (追記ここまで)
117 (追記) + /** (追記ここまで)
118 (追記) + * Presentation attributes for title. (追記ここまで)
119 (追記) + * @type string (追記ここまで)
120 (追記) + * @public (追記ここまで)
121 (追記) + */ (追記ここまで)
122 (追記) + var $styleTitle = ''; (追記ここまで)
123 (追記) + (追記ここまで)
124 (追記) + /** (追記ここまで)
125 (追記) + * Default presentation attributes for title. (追記ここまで)
126 (追記) + * @type string (追記ここまで)
127 (追記) + * @public (追記ここまで)
128 (追記) + */ (追記ここまで)
129 (追記) + var $styleTitleDefault = ''; (追記ここまで)
130 (追記) + (追記ここまで)
131 (追記) + /** (追記ここまで)
132 (追記) + * Label for X axis. (追記ここまで)
133 (追記) + * @type string (追記ここまで)
134 (追記) + * @public (追記ここまで)
135 (追記) + */ (追記ここまで)
136 (追記) + var $labelX = ''; (追記ここまで)
137 (追記) + (追記ここまで)
138 (追記) + /** (追記ここまで)
139 (追記) + * Presentation attributes for label. (追記ここまで)
140 (追記) + * @type string (追記ここまで)
141 (追記) + * @public (追記ここまで)
142 (追記) + */ (追記ここまで)
143 (追記) + var $styleLabelX = ''; (追記ここまで)
144 (追記) + (追記ここまで)
145 (追記) + /** (追記ここまで)
146 (追記) + * Default presentation attributes for label. (追記ここまで)
147 (追記) + * @type string (追記ここまで)
148 (追記) + * @public (追記ここまで)
149 (追記) + */ (追記ここまで)
150 (追記) + var $styleLabelXDefault = ''; (追記ここまで)
151 (追記) + (追記ここまで)
152 (追記) + /** (追記ここまで)
153 (追記) + * Label for Y axis. (追記ここまで)
154 (追記) + * @type string (追記ここまで)
155 (追記) + * @public (追記ここまで)
156 (追記) + */ (追記ここまで)
157 (追記) + var $labelY = ''; (追記ここまで)
158 (追記) + (追記ここまで)
159 (追記) + /** (追記ここまで)
160 (追記) + * Presentation attributes for label. (追記ここまで)
161 (追記) + * @type string (追記ここまで)
162 (追記) + * @public (追記ここまで)
163 (追記) + */ (追記ここまで)
164 (追記) + var $styleLabelY = ''; (追記ここまで)
165 (追記) + (追記ここまで)
166 (追記) + /** (追記ここまで)
167 (追記) + * Default presentation attributes for label. (追記ここまで)
168 (追記) + * @type string (追記ここまで)
169 (追記) + * @public (追記ここまで)
170 (追記) + */ (追記ここまで)
171 (追記) + var $styleLabelYDefault = ''; (追記ここまで)
172 (追記) + (追記ここまで)
173 (追記) + /** (追記ここまで)
174 (追記) + * Offset of first X axis gridline from lower-left of plot area as a (追記ここまで)
175 (追記) + * fraction of normal gridline spacing. (追記ここまで)
176 (追記) + * @type integer (追記ここまで)
177 (追記) + * @public (追記ここまで)
178 (追記) + */ (追記ここまで)
179 (追記) + var $offsetGridlinesX = 0; (追記ここまで)
180 (追記) + (追記ここまで)
181 (追記) + /** (追記ここまで)
182 (追記) + * Offset of first Y axis gridline from lower-left of plot area as a (追記ここまで)
183 (追記) + * fraction of normal gridline spacing. (追記ここまで)
184 (追記) + * @type integer (追記ここまで)
185 (追記) + * @public (追記ここまで)
186 (追記) + */ (追記ここまで)
187 (追記) + var $offsetGridlinesY = 0; (追記ここまで)
188 (追記) + (追記ここまで)
189 (追記) + /** (追記ここまで)
190 (追記) + * Minimum value for Y axis values. If a lower value is found in data then (追記ここまで)
191 (追記) + * this value is not used. (追記ここまで)
192 (追記) + * @type integer (追記ここまで)
193 (追記) + * @public (追記ここまで)
194 (追記) + */ (追記ここまで)
195 (追記) + var $minY = 0; (追記ここまで)
196 (追記) + (追記ここまで)
197 (追記) + /** (追記ここまで)
198 (追記) + * Maximum value for Y axis values. If a higher value is found in data then (追記ここまで)
199 (追記) + * this value is not used. (追記ここまで)
200 (追記) + * @type integer (追記ここまで)
201 (追記) + * @public (追記ここまで)
202 (追記) + */ (追記ここまで)
203 (追記) + var $maxY = 0; (追記ここまで)
204 (追記) + (追記ここまで)
205 (追記) + /** (追記ここまで)
206 (追記) + * Resolution for Y axis tags. See notes for method <code>_findRange</code>. (追記ここまで)
207 (追記) + * @type integer (追記ここまで)
208 (追記) + * @public (追記ここまで)
209 (追記) + */ (追記ここまで)
210 (追記) + var $resolutionY = 0; (追記ここまで)
211 (追記) + (追記ここまで)
212 (追記) + /** (追記ここまで)
213 (追記) + * Number of decimal places to show for Y axis tags. (追記ここまで)
214 (追記) + * @type integer (追記ここまで)
215 (追記) + * @public (追記ここまで)
216 (追記) + */ (追記ここまで)
217 (追記) + var $decimalPlacesY = 0; (追記ここまで)
218 (追記) + (追記ここまで)
219 (追記) + /** (追記ここまで)
220 (追記) + * Number of grid lines corresponding to X axis. (追記ここまで)
221 (追記) + * @type integer (追記ここまで)
222 (追記) + * @public (追記ここまで)
223 (追記) + */ (追記ここまで)
224 (追記) + var $numGridlinesX = 0; (追記ここまで)
225 (追記) + (追記ここまで)
226 (追記) + /** (追記ここまで)
227 (追記) + * Number of grid lines corresponding to Y axis. (追記ここまで)
228 (追記) + * @type integer (追記ここまで)
229 (追記) + * @public (追記ここまで)
230 (追記) + */ (追記ここまで)
231 (追記) + var $numGridlinesY = 0; (追記ここまで)
232 (追記) + (追記ここまで)
233 (追記) + /** (追記ここまで)
234 (追記) + * Presentation attributes for grid corresponding to X axis. (追記ここまで)
235 (追記) + * @type string (追記ここまで)
236 (追記) + * @public (追記ここまで)
237 (追記) + */ (追記ここまで)
238 (追記) + var $styleGridX = ''; (追記ここまで)
239 (追記) + (追記ここまで)
240 (追記) + /** (追記ここまで)
241 (追記) + * Default presentation attributes for grid corresponding to X axis. (追記ここまで)
242 (追記) + * @type string (追記ここまで)
243 (追記) + * @public (追記ここまで)
244 (追記) + */ (追記ここまで)
245 (追記) + var $styleGridXDefault = ''; (追記ここまで)
246 (追記) + (追記ここまで)
247 (追記) + /** (追記ここまで)
248 (追記) + * Presentation attributes for grid corresponding to Y axis. (追記ここまで)
249 (追記) + * @type string (追記ここまで)
250 (追記) + * @public (追記ここまで)
251 (追記) + */ (追記ここまで)
252 (追記) + var $styleGridY = ''; (追記ここまで)
253 (追記) + (追記ここまで)
254 (追記) + /** (追記ここまで)
255 (追記) + * Default presentation attributes for grid corresponding to X axis. (追記ここまで)
256 (追記) + * @type string (追記ここまで)
257 (追記) + * @public (追記ここまで)
258 (追記) + */ (追記ここまで)
259 (追記) + var $styleGridYDefault = ''; (追記ここまで)
260 (追記) + (追記ここまで)
261 (追記) + /** (追記ここまで)
262 (追記) + * Presentation attributes for box around plot area. (追記ここまで)
263 (追記) + * @type string (追記ここまで)
264 (追記) + * @public (追記ここまで)
265 (追記) + */ (追記ここまで)
266 (追記) + var $styleBox = ''; (追記ここまで)
267 (追記) + (追記ここまで)
268 (追記) + /** (追記ここまで)
269 (追記) + * Default presentation attributes for box around plot area. (追記ここまで)
270 (追記) + * @type string (追記ここまで)
271 (追記) + * @public (追記ここまで)
272 (追記) + */ (追記ここまで)
273 (追記) + var $styleBoxDefault = ''; (追記ここまで)
274 (追記) + (追記ここまで)
275 (追記) + /** (追記ここまで)
276 (追記) + * Presentation attributes for X axis tags. (追記ここまで)
277 (追記) + * @type string (追記ここまで)
278 (追記) + * @public (追記ここまで)
279 (追記) + */ (追記ここまで)
280 (追記) + var $styleTagsX = ''; (追記ここまで)
281 (追記) + (追記ここまで)
282 (追記) + /** (追記ここまで)
283 (追記) + * Default presentation attributes for X axis tags. (追記ここまで)
284 (追記) + * @type string (追記ここまで)
285 (追記) + * @public (追記ここまで)
286 (追記) + */ (追記ここまで)
287 (追記) + var $styleTagsXDefault = ''; (追記ここまで)
288 (追記) + (追記ここまで)
289 (追記) + /** (追記ここまで)
290 (追記) + * X axis tags rotation. Negative/Anticlockwise. (追記ここまで)
291 (追記) + * Increase innerPaddingX to prevent overlap with plot area. (追記ここまで)
292 (追記) + * @type integer (追記ここまで)
293 (追記) + * @public (追記ここまで)
294 (追記) + */ (追記ここまで)
295 (追記) + var $rotTagsX = 0; (追記ここまで)
296 (追記) + (追記ここまで)
297 (追記) + /** (追記ここまで)
298 (追記) + * Presentation attributes for Y axis tags. (追記ここまで)
299 (追記) + * @type string (追記ここまで)
300 (追記) + * @public (追記ここまで)
301 (追記) + */ (追記ここまで)
302 (追記) + var $styleTagsY = ''; (追記ここまで)
303 (追記) + (追記ここまで)
304 (追記) + /** (追記ここまで)
305 (追記) + * Default presentation attributes for Y axis tags. (追記ここまで)
306 (追記) + * @type string (追記ここまで)
307 (追記) + * @public (追記ここまで)
308 (追記) + */ (追記ここまで)
309 (追記) + var $styleTagsYDefault = ''; (追記ここまで)
310 (追記) + (追記ここまで)
311 (追記) + /** (追記ここまで)
312 (追記) + * Y axis tags rotation. Negative/Anticlockwise. (追記ここまで)
313 (追記) + * Increase innerPaddingY to prevent overlap with plot area. (追記ここまで)
314 (追記) + * @type integer (追記ここまで)
315 (追記) + * @public (追記ここまで)
316 (追記) + */ (追記ここまで)
317 (追記) + var $rotTagsY = 0; (追記ここまで)
318 (追記) + (追記ここまで)
319 (追記) + /** (追記ここまで)
320 (追記) + * Default presentation attributes for line plots. (追記ここまで)
321 (追記) + * @type string (追記ここまで)
322 (追記) + * @public (追記ここまで)
323 (追記) + */ (追記ここまで)
324 (追記) + var $styleLineDefault = ''; (追記ここまで)
325 (追記) + (追記ここまで)
326 (追記) + /** (追記ここまで)
327 (追記) + * Default presentation attributes for bar plots. (追記ここまで)
328 (追記) + * @type string (追記ここまで)
329 (追記) + * @public (追記ここまで)
330 (追記) + */ (追記ここまで)
331 (追記) + var $styleBarDefault = ''; (追記ここまで)
332 (追記) + (追記ここまで)
333 (追記) + /** (追記ここまで)
334 (追記) + * Default presentation attributes for polyline plots (inside group tag). (追記ここまで)
335 (追記) + * @type string (追記ここまで)
336 (追記) + * @public (追記ここまで)
337 (追記) + */ (追記ここまで)
338 (追記) + var $stylePolylineDefault = ''; (追記ここまで)
339 (追記) + (追記ここまで)
340 (追記) + /** (追記ここまで)
341 (追記) + * Extra SVG to add to graph. e.g. Filters, Defs, Title. (追記ここまで)
342 (追記) + * Note: Title is useful to add if image is viewed out of context. (追記ここまで)
343 (追記) + * <dt><code>$svg</code><dd> (追記ここまで)
344 (追記) + * String holding SVG text. (追記ここまで)
345 (追記) + * </dl> (追記ここまで)
346 (追記) + * @type string (追記ここまで)
347 (追記) + * @public (追記ここまで)
348 (追記) + */ (追記ここまで)
349 (追記) + var $extraSVG = ''; (追記ここまで)
350 (追記) + (追記ここまで)
351 (追記) + /** (追記ここまで)
352 (追記) + * SVG XML result. (追記ここまで)
353 (追記) + * @type string (追記ここまで)
354 (追記) + * @public (追記ここまで)
355 (追記) + */ (追記ここまで)
356 (追記) + var $svg = ''; (追記ここまで)
357 (追記) + (追記ここまで)
358 (追記) + /** (追記ここまで)
359 (追記) + * Contains error messages. (追記ここまで)
360 (追記) + * @type string (追記ここまで)
361 (追記) + * @public (追記ここまで)
362 (追記) + */ (追記ここまで)
363 (追記) + var $error = ''; (追記ここまで)
364 (追記) + (追記ここまで)
365 (追記) + (追記ここまで)
366 (追記) + /** (追記ここまで)
367 (追記) + * Define static variables used in the class. (追記ここまで)
368 (追記) + * @returns void (追記ここまで)
369 (追記) + */ (追記ここまで)
370 (追記) + function svgGraph() { (追記ここまで)
371 (追記) + if( !defined("DECIMAL_POINT") ) (追記ここまで)
372 (追記) + define("DECIMAL_POINT", "."); (追記ここまで)
373 (追記) + if( !defined("THOUSANDS_SEPERATOR") ) (追記ここまで)
374 (追記) + define("THOUSANDS_SEPERATOR", ","); (追記ここまで)
375 (追記) + } (追記ここまで)
376 (追記) + (追記ここまで)
377 (追記) + /** (追記ここまで)
378 (追記) + * Initialises the variables used for drawing points, lines, grid, and ticks in the plotting area. (追記ここまで)
379 (追記) + * @return Boolean - FALSE if an error was encountered while processing data. (追記ここまで)
380 (追記) + * @returns boolean (追記ここまで)
381 (追記) + */ (追記ここまで)
382 (追記) + function init() { (追記ここまで)
383 (追記) + $this->svg = ''; // complete SVG of graph (追記ここまで)
384 (追記) + $this->svgText = ''; // SVG for outer text labels and title (追記ここまで)
385 (追記) + $this->svgPlot = ''; // SVG for plot including tag text (追記ここまで)
386 (追記) + $this->numGridlinesX = sizeof($this->dataX); (追記ここまで)
387 (追記) + if ($this->numGridlinesX == 0) { (追記ここまで)
388 (追記) + $this->error = 'No data to plot. Check data.'; (追記ここまで)
389 (追記) + return FALSE; (追記ここまで)
390 (追記) + } (追記ここまで)
391 (追記) + if ($this->numGridlinesY == 0) { (追記ここまで)
392 (追記) + $this->error = 'No range for Y values. Check number of Y ticks.'; (追記ここまで)
393 (追記) + return FALSE; (追記ここまで)
394 (追記) + } (追記ここまで)
395 (追記) + $width = $this->plotWidth - 1; (追記ここまで)
396 (追記) + $height = $this->plotHeight - 1; (追記ここまで)
397 (追記) + (追記ここまで)
398 (追記) + // find range of all y values (追記ここまで)
399 (追記) + $allDataY = array(); (追記ここまで)
400 (追記) + foreach ($this->dataY as $i => $dataY) $allDataY = array_merge($allDataY, $dataY); (追記ここまで)
401 (追記) + $this->allDataY = $allDataY; (追記ここまで)
402 (追記) + $data = $this->_findRange($allDataY, $this->minY, $this->maxY, $this->resolutionY); (追記ここまで)
403 (追記) + $this->dataMinY = $data['min']; (追記ここまで)
404 (追記) + $this->dataMaxY = $data['max']; (追記ここまで)
405 (追記) + if (($this->dataMaxY - $this->dataMinY) == 0) { (追記ここまで)
406 (追記) + $this->error = 'No range to plot. Check data.'; (追記ここまで)
407 (追記) + return FALSE; // data error (追記ここまで)
408 (追記) + } (追記ここまで)
409 (追記) + // find spacing for ticks and grid lines (追記ここまで)
410 (追記) + $this->deltaTicksX = $width / ($this->numGridlinesX - 1 + (2 * $this->offsetGridlinesX)); (追記ここまで)
411 (追記) + $this->deltaTicksY = $height / ($this->numGridlinesY - 1 + (2 * $this->offsetGridlinesY)); (追記ここまで)
412 (追記) + $this->factorY = $height / ($this->dataMaxY - $this->dataMinY); (追記ここまで)
413 (追記) + (追記ここまで)
414 (追記) + // format text for tags on Y axis (追記ここまで)
415 (追記) + //$deltaTagsY = $this->dataMaxY / ($this->numGridlinesY - 1 + (2 * $this->offsetGridlinesY)); (追記ここまで)
416 (追記) + $deltaTagsY = ($this->dataMaxY - $this->dataMinY) / ($this->numGridlinesY - 1 + (2 * $this->offsetGridlinesY)); (追記ここまで)
417 (追記) + //$factorTagsY = $this->dataMaxY / ($this->dataMaxY - $this->dataMinY); (追記ここまで)
418 (追記) + for ($i=0; $i<$this->numGridlinesY; $i++) { (追記ここまで)
419 (追記) + $text = $this->dataMinY + $deltaTagsY * ($i + $this->offsetGridlinesY); (追記ここまで)
420 (追記) + $this->tagsY[$i] = number_format($text, $this->decimalPlacesY, DECIMAL_POINT, THOUSANDS_SEPERATOR); (追記ここまで)
421 (追記) + } (追記ここまで)
422 (追記) + $this->tagsY = array_reverse($this->tagsY); (追記ここまで)
423 (追記) + if (empty($this->tagsY)) { (追記ここまで)
424 (追記) + $this->error = 'No Y axis data.'; (追記ここまで)
425 (追記) + return FALSE; (追記ここまで)
426 (追記) + } (追記ここまで)
427 (追記) + return TRUE; (追記ここまで)
428 (追記) + } (追記ここまで)
429 (追記) + (追記ここまで)
430 (追記) + /** (追記ここまで)
431 (追記) + * Calls functions to draw title, labels, tags, grid lines, and box of graph. (追記ここまで)
432 (追記) + * @returns void (追記ここまで)
433 (追記) + */ (追記ここまで)
434 (追記) + function drawGraph() { (追記ここまで)
435 (追記) + $this->drawOuterText(); (追記ここまで)
436 (追記) + $this->drawGridX(); (追記ここまで)
437 (追記) + $this->drawGridY(); (追記ここまで)
438 (追記) + $this->drawBox(); (追記ここまで)
439 (追記) + $this->drawTagsX(); (追記ここまで)
440 (追記) + $this->drawTagsY(); (追記ここまで)
441 (追記) + } (追記ここまで)
442 (追記) + (追記ここまで)
443 (追記) + /** (追記ここまで)
444 (追記) + * Draw the title and axis labels around the outside of the graphic area. (追記ここまで)
445 (追記) + * @returns void (追記ここまで)
446 (追記) + */ (追記ここまで)
447 (追記) + function drawOuterText() { (追記ここまで)
448 (追記) + $outerPadding = $this->outerPadding; (追記ここまで)
449 (追記) + (追記ここまで)
450 (追記) + // draw title (追記ここまで)
451 (追記) + if (!empty($this->title)) { // check if there is something to draw (追記ここまで)
452 (追記) + $offset = $this->graphicWidth / 2; (追記ここまで)
453 (追記) + $transform = "transform='translate(0, $outerPadding)'"; (追記ここまで)
454 (追記) + $this->svgText .= "<text text-anchor='middle' $transform x='$offset' y='1em' "; (追記ここまで)
455 (追記) + $this->svgText .= "style='{$this->styleTitleDefault}{$this->styleTitle}'>"; (追記ここまで)
456 (追記) + $this->svgText .= "{$this->title}</text>\n"; (追記ここまで)
457 (追記) + } (追記ここまで)
458 (追記) + (追記ここまで)
459 (追記) + //draw label Y (追記ここまで)
460 (追記) + if (!empty($this->labelY)) { // check if there is something to draw (追記ここまで)
461 (追記) + $offset = $this->plotOffsetY + ($this->plotHeight / 2); (追記ここまで)
462 (追記) + $transform = "transform='translate($outerPadding, 0) rotate(-90 0 $offset)'"; (追記ここまで)
463 (追記) + $this->svgText .= "<text text-anchor='middle' $transform x='0' y='$offset' dy='1em' "; (追記ここまで)
464 (追記) + $this->svgText .= "style='{$this->styleLabelYDefault}{$this->styleLabelY}'>"; (追記ここまで)
465 (追記) + $this->svgText .= "{$this->labelY}</text>\n"; (追記ここまで)
466 (追記) + } (追記ここまで)
467 (追記) + (追記ここまで)
468 (追記) + //draw label X (追記ここまで)
469 (追記) + if (!empty($this->labelX)) { // check if there is something to draw (追記ここまで)
470 (追記) + $offset = $this->plotOffsetX + ($this->plotWidth / 2); (追記ここまで)
471 (追記) + $transform = "transform='translate(0, -$outerPadding)'"; (追記ここまで)
472 (追記) + $this->svgText .= "<text text-anchor='middle' $transform x='$offset' y='{$this->graphicHeight}' "; (追記ここまで)
473 (追記) + $this->svgText .= "style='{$this->styleLabelXDefault}{$this->styleLabelX}'>"; (追記ここまで)
474 (追記) + $this->svgText .= "{$this->labelX}</text>\n"; (追記ここまで)
475 (追記) + } (追記ここまで)
476 (追記) + } (追記ここまで)
477 (追記) + (追記ここまで)
478 (追記) + /** (追記ここまで)
479 (追記) + * Draws the grid lines from top to bottom in the plotting area. (追記ここまで)
480 (追記) + * @returns void (追記ここまで)
481 (追記) + */ (追記ここまで)
482 (追記) + function drawGridX() { (追記ここまで)
483 (追記) + $this->svgPlot .= "<g style='{$this->styleGridXDefault}{$this->styleGridX}'>\n"; (追記ここまで)
484 (追記) + $top = 0; (追記ここまで)
485 (追記) + $bottom = $this->plotHeight - 1; (追記ここまで)
486 (追記) + foreach ($this->dataX as $i => $x) { (追記ここまで)
487 (追記) + $u = $this->deltaTicksX * ($i + $this->offsetGridlinesX); (追記ここまで)
488 (追記) + $this->svgPlot .= "<line x1='$u' y1='$top' x2='$u' y2='$bottom'/>\n"; (追記ここまで)
489 (追記) + } (追記ここまで)
490 (追記) + $this->svgPlot .= "</g>\n"; (追記ここまで)
491 (追記) + } (追記ここまで)
492 (追記) + (追記ここまで)
493 (追記) + /** (追記ここまで)
494 (追記) + * Draws the grid lines from right to left in the plotting area. (追記ここまで)
495 (追記) + * @returns void (追記ここまで)
496 (追記) + */ (追記ここまで)
497 (追記) + function drawGridY() { (追記ここまで)
498 (追記) + $this->svgPlot .= "<g style='{$this->styleGridYDefault}{$this->styleGridX}'>\n"; (追記ここまで)
499 (追記) + $left = 0; (追記ここまで)
500 (追記) + $right = $this->plotWidth - 1; (追記ここまで)
501 (追記) + for ($i = 0; $i < $this->numGridlinesY; $i++) { (追記ここまで)
502 (追記) + $v = $this->deltaTicksY * ($i + $this->offsetGridlinesY); (追記ここまで)
503 (追記) + $this->svgPlot .= "<line x1='$left' y1='$v' x2='$right' y2='$v'/>\n"; (追記ここまで)
504 (追記) + } (追記ここまで)
505 (追記) + $this->svgPlot .= "</g>\n"; (追記ここまで)
506 (追記) + } (追記ここまで)
507 (追記) + (追記ここまで)
508 (追記) + /** (追記ここまで)
509 (追記) + * Draws the box around the plotting area. (追記ここまで)
510 (追記) + * @returns void (追記ここまで)
511 (追記) + */ (追記ここまで)
512 (追記) + function drawBox() { (追記ここまで)
513 (追記) + $width = $this->plotWidth - 1; (追記ここまで)
514 (追記) + $height = $this->plotHeight - 1; (追記ここまで)
515 (追記) + $this->svgPlot .= "<g style='{$this->styleBoxDefault}{$this->styleBox}'>\n"; (追記ここまで)
516 (追記) + $this->svgPlot .= "<line x1='0' y1='0' x2='$width' y2='0'/>\n"; (追記ここまで)
517 (追記) + $this->svgPlot .= "<line x1='0' y1='$height' x2='$width' y2='$height'/>\n"; (追記ここまで)
518 (追記) + $this->svgPlot .= "<line x1='$width' y1='0' x2='$width' y2='$height'/>\n"; (追記ここまで)
519 (追記) + $this->svgPlot .= "<line x1='0' y1='0' x2='0' y2='$height'/>\n"; (追記ここまで)
520 (追記) + $this->svgPlot .= "</g>\n"; (追記ここまで)
521 (追記) + } (追記ここまで)
522 (追記) + (追記ここまで)
523 (追記) + /** (追記ここまで)
524 (追記) + * Draws the axis tag text outside the plotting area on the x axis. (追記ここまで)
525 (追記) + * @returns void (追記ここまで)
526 (追記) + */ (追記ここまで)
527 (追記) + function drawTagsX() { (追記ここまで)
528 (追記) + $this->svgPlot .= "<g style='{$this->styleTagsXDefault}{$this->styleTagsX}'>\n"; (追記ここまで)
529 (追記) + $bottom = $this->plotHeight - 1; (追記ここまで)
530 (追記) + $innerPadding = $this->innerPaddingX; (追記ここまで)
531 (追記) + (追記ここまで)
532 (追記) + foreach ($this->dataX as $i => $text) { (追記ここまで)
533 (追記) + $u = $this->deltaTicksX * ($i + $this->offsetGridlinesX); (追記ここまで)
534 (追記) + (追記ここまで)
535 (追記) + if ($this->rotTagsX == 0) { (追記ここまで)
536 (追記) + $transform = "transform='translate(0, $innerPadding)'"; (追記ここまで)
537 (追記) + $this->svgPlot .= "<text text-anchor='middle' $transform dy='1em' x='$u' y='$bottom'>$text</text>\n"; (追記ここまで)
538 (追記) + } else if($this->rotTagsX> 0) { (追記ここまで)
539 (追記) + $transform = "transform='translate(0, $innerPadding) rotate({$this->rotTagsX} $u $bottom)'"; (追記ここまで)
540 (追記) + $this->svgPlot .= "<text text-anchor='start' $transform x='$u' y='$bottom'>$text</text>\n"; (追記ここまで)
541 (追記) + } else { (追記ここまで)
542 (追記) + $transform = "transform='translate(0, $innerPadding) rotate({$this->rotTagsX} $u $bottom)'"; (追記ここまで)
543 (追記) + $this->svgPlot .= "<text text-anchor='end' $transform x='$u' y='$bottom'>$text</text>\n"; (追記ここまで)
544 (追記) + } (追記ここまで)
545 (追記) + } (追記ここまで)
546 (追記) + $this->svgPlot .= "</g>\n"; (追記ここまで)
547 (追記) + } (追記ここまで)
548 (追記) + (追記ここまで)
549 (追記) + /** (追記ここまで)
550 (追記) + * Draws the axis tag text outside the plotting area on the y axis. (追記ここまで)
551 (追記) + * @returns void (追記ここまで)
552 (追記) + */ (追記ここまで)
553 (追記) + function drawTagsY() { (追記ここまで)
554 (追記) + if (empty($this->tagsY)) return; // no data to plot. error should be picked up by init method. (追記ここまで)
555 (追記) + $this->svgPlot .= "<g style='{$this->styleTagsYDefault}{$this->styleTagsY}'>\n"; (追記ここまで)
556 (追記) + $innerPadding = $this->innerPaddingY; (追記ここまで)
557 (追記) + foreach ($this->tagsY as $i => $text) { (追記ここまで)
558 (追記) + $v = $this->deltaTicksY * ($i + $this->offsetGridlinesY); (追記ここまで)
559 (追記) + if ($this->rotTagsY == 0) { (追記ここまで)
560 (追記) + $transform = "transform='translate(-$innerPadding, 0)'"; (追記ここまで)
561 (追記) + $this->svgPlot .= "<text text-anchor='end' $transform x='0' dy='0.5em' y='$v'>$text</text>\n"; (追記ここまで)
562 (追記) + } else { (追記ここまで)
563 (追記) + $transform = "transform='translate(-$innerPadding, 0) rotate({$this->rotTagsY} 0 $v)'"; (追記ここまで)
564 (追記) + $this->svgPlot .= "<text text-anchor='end' $transform x='0' dy='0.5em' y='$v'>$text</text>\n"; (追記ここまで)
565 (追記) + } (追記ここまで)
566 (追記) + } (追記ここまで)
567 (追記) + $this->svgPlot .= "</g>\n"; (追記ここまで)
568 (追記) + } (追記ここまで)
569 (追記) + (追記ここまで)
570 (追記) + /** (追記ここまで)
571 (追記) + * Draw a line from one point to the next continuously without stopping to draw markers. (追記ここまで)
572 (追記) + * This method is used for drawing lines with markers on the end, for example, an arrow indicating trend. (追記ここまで)
573 (追記) + * <br><br> (追記ここまで)
574 (追記) + * The format parameter array for the selected dataset can have two members:<br> (追記ここまで)
575 (追記) + * 'style' - Style for line,<br> (追記ここまで)
576 (追記) + * 'attributes' - Attributes to place inside polyline tag. (追記ここまで)
577 (追記) + * @param $whichDataSet Which set of data to draw. This is the index of the data array to be used. (追記ここまで)
578 (追記) + * @return BOOLEAN FALSE if no style is defined for the data set selected. (追記ここまで)
579 (追記) + * @returns boolean (追記ここまで)
580 (追記) + */ (追記ここまで)
581 (追記) + function polyLine($whichDataSet) { (追記ここまで)
582 (追記) + if (empty($this->format[$whichDataSet]['style'])) { (追記ここまで)
583 (追記) + $this->error = 'No style defined for data plot.'; (追記ここまで)
584 (追記) + return FALSE; // data error (追記ここまで)
585 (追記) + } (追記ここまで)
586 (追記) + $attributes = empty($this->format[$whichDataSet]['attributes']) ? (追記ここまで)
587 (追記) + '' : $this->format[$whichDataSet]['attributes']; (追記ここまで)
588 (追記) + (追記ここまで)
589 (追記) + $this->svgPlot .= "<g style='{$this->stylePolylineDefault}{$this->format[$whichDataSet]['style']}'>\n"; (追記ここまで)
590 (追記) + $this->svgPlot .= "<polyline $attributes "; (追記ここまで)
591 (追記) + $u = 0; (追記ここまで)
592 (追記) + $v = 0; (追記ここまで)
593 (追記) + foreach ($this->dataX as $i => $x) { (追記ここまで)
594 (追記) + $y = $this->dataY[$whichDataSet][$i]; (追記ここまで)
595 (追記) + $u = $this->deltaTicksX * ($i + $this->offsetGridlinesX); (追記ここまで)
596 (追記) + $v = $this->factorY * ($y - $this->dataMinY); (追記ここまで)
597 (追記) + $v = $this->plotHeight - $v; (追記ここまで)
598 (追記) + if ($i==0) $this->svgPlot .= "points='$u,$v"; (追記ここまで)
599 (追記) + else $this->svgPlot .= " $u,$v "; (追記ここまで)
600 (追記) + $oldU = $u; (追記ここまで)
601 (追記) + $oldV = $v; (追記ここまで)
602 (追記) + } (追記ここまで)
603 (追記) + $this->svgPlot .= "'/>\n</g>\n"; (追記ここまで)
604 (追記) + return TRUE; (追記ここまで)
605 (追記) + } (追記ここまで)
606 (追記) + (追記ここまで)
607 (追記) + /** (追記ここまで)
608 (追記) + * Draw line from one point to the next stopping at each. (追記ここまで)
609 (追記) + * This method is used for drawing lines with markers at each plot point. (追記ここまで)
610 (追記) + * <br><br> (追記ここまで)
611 (追記) + * The format parameter array for the selected dataset can have two members:<br> (追記ここまで)
612 (追記) + * 'style' - Style for line,<br> (追記ここまで)
613 (追記) + * 'attributes' - Attributes to place inside line tag. (追記ここまで)
614 (追記) + * @param $whichDataSet Which set of data to draw. This is the index of the data array to be used. (追記ここまで)
615 (追記) + * @returns void (追記ここまで)
616 (追記) + */ (追記ここまで)
617 (追記) + function line($whichDataSet) { (追記ここまで)
618 (追記) + if (empty($this->format[$whichDataSet]['style'])) { (追記ここまで)
619 (追記) + $this->error = 'No style defined for data plot. Check parameters.'; (追記ここまで)
620 (追記) + return FALSE; // data error (追記ここまで)
621 (追記) + } (追記ここまで)
622 (追記) + (追記ここまで)
623 (追記) + $attributes = empty($this->format[$whichDataSet]['attributes']) ? (追記ここまで)
624 (追記) + '' : $this->format[$whichDataSet]['attributes']; (追記ここまで)
625 (追記) + $this->svgPlot .= "<g style='{$this->styleLineDefault}{$this->format[$whichDataSet]['style']}'>\n"; (追記ここまで)
626 (追記) + $u = 0; (追記ここまで)
627 (追記) + $v = 0; (追記ここまで)
628 (追記) + foreach ($this->dataX as $i => $x) { (追記ここまで)
629 (追記) + $y = $this->dataY[$whichDataSet][$i]; (追記ここまで)
630 (追記) + $u = $this->deltaTicksX * ($i + $this->offsetGridlinesX); (追記ここまで)
631 (追記) + $v = $this->factorY * ($y - $this->dataMinY); (追記ここまで)
632 (追記) + $v = $this->plotHeight - $v; (追記ここまで)
633 (追記) + if ($i==0) { (追記ここまで)
634 (追記) + $oldU = $u; (追記ここまで)
635 (追記) + $oldV = $v; (追記ここまで)
636 (追記) + } (追記ここまで)
637 (追記) + $this->svgPlot .= "<line $attributes x1='$oldU' y1='$oldV' x2='$u' y2='$v'/>\n"; (追記ここまで)
638 (追記) + $oldU = $u; (追記ここまで)
639 (追記) + $oldV = $v; (追記ここまで)
640 (追記) + } (追記ここまで)
641 (追記) + $this->svgPlot .= "</g>\n"; (追記ここまで)
642 (追記) + return TRUE; (追記ここまで)
643 (追記) + } (追記ここまで)
644 (追記) + (追記ここまで)
645 (追記) + /** (追記ここまで)
646 (追記) + * Draw a bar for each data point from the data set selected. (追記ここまで)
647 (追記) + * @param $whichDataSet Which set of data to draw. This is the index of the data array to be used. (追記ここまで)
648 (追記) + * <br><br> (追記ここまで)
649 (追記) + * The format parameter array for the selected dataset can have three members:<br> (追記ここまで)
650 (追記) + * 'style' - Style for bar,<br> (追記ここまで)
651 (追記) + * 'barWidth' - Width of bar as fraction of distance between gridlines. (追記ここまで)
652 (追記) + * Values greater than 1 will result in bars overlapping.<br> (追記ここまで)
653 (追記) + * 'barOffset' - Offset of the bar as fraction of bar width. By default it is centered on the gridline. (追記ここまで)
654 (追記) + * @return BOOLEAN FALSE if style, barWidth, or barOffset parameters are missing. (追記ここまで)
655 (追記) + * @returns boolean (追記ここまで)
656 (追記) + */ (追記ここまで)
657 (追記) + function bar($whichDataSet) { (追記ここまで)
658 (追記) + if (!isset($this->format[$whichDataSet]['style']) || (追記ここまで)
659 (追記) + !isset($this->format[$whichDataSet]['barWidth']) || (追記ここまで)
660 (追記) + !isset($this->format[$whichDataSet]['barOffset'] )) { (追記ここまで)
661 (追記) + $this->error = 'Style parameters missing for bar plot.'; (追記ここまで)
662 (追記) + return FALSE; // data error (追記ここまで)
663 (追記) + } (追記ここまで)
664 (追記) + $this->svgPlot .= "<g style='{$this->styleBarDefault}{$this->format[$whichDataSet]['style']}'>\n"; (追記ここまで)
665 (追記) + $barWidth = $this->format[$whichDataSet]['barWidth'] * $this->deltaTicksX; (追記ここまで)
666 (追記) + $barOffset = $this->format[$whichDataSet]['barOffset'] * $barWidth; (追記ここまで)
667 (追記) + $u = 0; (追記ここまで)
668 (追記) + $v = 0; (追記ここまで)
669 (追記) + foreach ($this->dataX as $i => $x) { (追記ここまで)
670 (追記) + $y = $this->dataY[$whichDataSet][$i]; (追記ここまで)
671 (追記) + $u = $this->deltaTicksX * ($i + $this->offsetGridlinesX) - ($barWidth / 2) + $barOffset; (追記ここまで)
672 (追記) + $v = $this->factorY * ($y - $this->dataMinY); (追記ここまで)
673 (追記) + $v = $this->plotHeight - $v; (追記ここまで)
674 (追記) + $height = $this->factorY * ($y - $this->dataMinY) - 1; (追記ここまで)
675 (追記) + (追記ここまで)
676 (追記) + $this->svgPlot .= "<rect x='$u' y='$v' width='$barWidth' height='$height'/>\n"; (追記ここまで)
677 (追記) + } (追記ここまで)
678 (追記) + $this->svgPlot .= "</g>\n"; (追記ここまで)
679 (追記) + return TRUE; (追記ここまで)
680 (追記) + } (追記ここまで)
681 (追記) + (追記ここまで)
682 (追記) + /** (追記ここまで)
683 (追記) + * Find the maximum and minimum values for a set of data.<br> (追記ここまで)
684 (追記) + * The $resolution variable is used for rounding maximum and minimum values.<br> (追記ここまで)
685 (追記) + * If maximum value is 8645 then<br> (追記ここまで)
686 (追記) + * If $resolution is 0, then maximum value becomes 9000.<br> (追記ここまで)
687 (追記) + * If $resolution is 1, then maximum value becomes 8700.<br> (追記ここまで)
688 (追記) + * If $resolution is 2, then maximum value becomes 8650.<br> (追記ここまで)
689 (追記) + * If $resolution is 3, then maximum value becomes 8645.<br> (追記ここまで)
690 (追記) + * @param $data Data to find the range for (追記ここまで)
691 (追記) + * @param $min Minimum value to start at. If a lower number is found then this value is not used. (追記ここまで)
692 (追記) + * @param $max Maximum value to start at. If a larger number is found then this value is not used. (追記ここまで)
693 (追記) + * @param $resolution Resolution for range. (追記ここまで)
694 (追記) + * @returns array (追記ここまで)
695 (追記) + * @private (追記ここまで)
696 (追記) + */ (追記ここまで)
697 (追記) + function _findRange($data, $min, $max, $resolution) { (追記ここまで)
698 (追記) + if (sizeof($data) == 0 ) return array('min' => 0, 'max' => 0); (追記ここまで)
699 (追記) + foreach ($data as $key => $value) { (追記ここまで)
700 (追記) + if ($value=='none') continue; (追記ここまで)
701 (追記) + if ($value> $max) $max = $value; (追記ここまで)
702 (追記) + if ($value < $min) $min = $value; (追記ここまで)
703 (追記) + } (追記ここまで)
704 (追記) + if ($max == 0) { (追記ここまで)
705 (追記) + $factor = 1; (追記ここまで)
706 (追記) + } else { (追記ここまで)
707 (追記) + if ($max < 0) $factor = - pow(10, (floor(log10(abs($max))) + $resolution) ); (追記ここまで)
708 (追記) + else $factor = pow(10, (floor(log10(abs($max))) - $resolution) ); (追記ここまで)
709 (追記) + } (追記ここまで)
710 (追記) + $max = $factor * @ceil($max / $factor); (追記ここまで)
711 (追記) + $min = $factor * @floor($min / $factor); (追記ここまで)
712 (追記) + (追記ここまで)
713 (追記) + return array('min' => $min, 'max' => $max); (追記ここまで)
714 (追記) + } (追記ここまで)
715 (追記) + (追記ここまで)
716 (追記) + /** (追記ここまで)
717 (追記) + * Generate SVG for entire graph. (追記ここまで)
718 (追記) + * @returns void (追記ここまで)
719 (追記) + */ (追記ここまで)
720 (追記) + function generateSVG() { //enableZoomAndPanControls='false' (追記ここまで)
721 (追記) + $this->svg = "<?xml version='1.0' encoding='iso-8859-1'?>\n"; (追記ここまで)
722 (追記) + $this->svg .= "<!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 20000303 Stylable//EN' "; (追記ここまで)
723 (追記) + $this->svg .= "'http://www.w3.org/TR/2000/03/WD-SVG-20000303/DTD/svg-20000303-stylable.dtd'>\n"; (追記ここまで)
724 (追記) + $this->svg .= "<svg width='{$this->graphicWidth}' height='{$this->graphicHeight}'>\n"; (追記ここまで)
725 (追記) + (追記ここまで)
726 (追記) + if (!empty($this->extraSVG)) { (追記ここまで)
727 (追記) + $this->svg .= "<!-- Extra SVG -->\n"; (追記ここまで)
728 (追記) + $this->svg .= $this->extraSVG."\n"; (追記ここまで)
729 (追記) + $this->svg .= "<!-- End Extra SVG -->\n"; (追記ここまで)
730 (追記) + } (追記ここまで)
731 (追記) + (追記ここまで)
732 (追記) + if (!empty($this->svgText)) { (追記ここまで)
733 (追記) + $this->svg .= "<!-- Outer Text -->\n"; (追記ここまで)
734 (追記) + $this->svg .= "<g>\n"; (追記ここまで)
735 (追記) + $this->svg .= $this->svgText."\n"; (追記ここまで)
736 (追記) + $this->svg .= "</g>\n" ; (追記ここまで)
737 (追記) + $this->svg .= "<!-- End Outer Text -->\n"; (追記ここまで)
738 (追記) + } (追記ここまで)
739 (追記) + (追記ここまで)
740 (追記) + $this->svg .= "<!-- Plot Area -->\n"; (追記ここまで)
741 (追記) + $this->svg .= "<g transform='translate({$this->plotOffsetX},{$this->plotOffsetY})'>\n"; (追記ここまで)
742 (追記) + $this->svg .= $this->svgPlot."\n"; (追記ここまで)
743 (追記) + $this->svg .= "</g>\n" ; (追記ここまで)
744 (追記) + $this->svg .= "<!-- End Plot Area -->\n"; (追記ここまで)
745 (追記) + (追記ここまで)
746 (追記) + $this->svg .= "</svg>\n" ; (追記ここまで)
747 (追記) + } (追記ここまで)
748 (追記) + (追記ここまで)
749 (追記) + /** (追記ここまで)
750 (追記) + * Output SVG as XML text including appropriate HTTP header information. (追記ここまで)
751 (追記) + * @returns void (追記ここまで)
752 (追記) + */ (追記ここまで)
753 (追記) + function outputSVG() { (追記ここまで)
754 (追記) + if (empty($this->svg)) $this->generateSVG(); (追記ここまで)
755 (追記) + header("Content-type: image/svg+xml"); (追記ここまで)
756 (追記) + print $this->svg; (追記ここまで)
757 (追記) + } (追記ここまで)
758 (追記) + (追記ここまで)
759 (追記) +} (追記ここまで)
760 (追記) + (追記ここまで)
761 (追記) +?> (追記ここまで)
Property changes on: trunk/extensions/FlaggedRevs/svggraph/svgGraph.php
___________________________________________________________________
Added: svn:eol-style
1 762 + native
Index: trunk/extensions/FlaggedRevs/svggraph/test02.php
— — @@ -0,0 +1,58 @@
2 (追記) +<?php (追記ここまで)
3 (追記) +error_reporting(0); (追記ここまで)
4 (追記) + (追記ここまで)
5 (追記) +include 'svgGraph.php'; (追記ここまで)
6 (追記) +include 'svgGraph1.php'; (追記ここまで)
7 (追記) + (追記ここまで)
8 (追記) +$graph = new svgGraph1; (追記ここまで)
9 (追記) +$graph->graphicWidth = 400; (追記ここまで)
10 (追記) +$graph->graphicHeight = 300; (追記ここまで)
11 (追記) +$graph->plotWidth = 300; (追記ここまで)
12 (追記) +$graph->plotHeight = 200; (追記ここまで)
13 (追記) +$graph->plotOffsetX = 70; (追記ここまで)
14 (追記) +$graph->plotOffsetY = 50; (追記ここまで)
15 (追記) +$graph->numGridlinesY = 6; (追記ここまで)
16 (追記) +$graph->numTicksY = 6; (追記ここまで)
17 (追記) + (追記ここまで)
18 (追記) +$graph->innerPaddingX = 4; (追記ここまで)
19 (追記) +$graph->innerPaddingY = 4; (追記ここまで)
20 (追記) +$graph->outerPadding = 10; (追記ここまで)
21 (追記) + (追記ここまで)
22 (追記) +$graph->offsetGridlinesX = 0.5; // shift so that bars are inside plot area (追記ここまで)
23 (追記) + (追記ここまで)
24 (追記) +$graph->decimalPlacesY = 2; (追記ここまで)
25 (追記) + (追記ここまで)
26 (追記) +$graph->title = 'Sample Bar Graph'; (追記ここまで)
27 (追記) +$graph->styleTitle = 'font-family: sans-serif; font-size: 12pt;'; (追記ここまで)
28 (追記) + (追記ここまで)
29 (追記) +$graph->labelX = 'Day of the Week'; (追記ここまで)
30 (追記) +$graph->styleLabelX = 'font-family: sans-serif; font-size: 10pt;'; (追記ここまで)
31 (追記) +$graph->labelY = 'Some Parameters'; (追記ここまで)
32 (追記) +$graph->styleLabelY = 'font-family: sans-serif; font-size: 10pt;'; (追記ここまで)
33 (追記) + (追記ここまで)
34 (追記) +$graph->dataX = array('Fri', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri'); (追記ここまで)
35 (追記) +$graph->dataY['alpha'] = array(8.610, 7.940, 3.670, 3.670, 6.940, 8.650); (追記ここまで)
36 (追記) +$graph->dataY['beta'] = array(1.456, 3.001, 5.145, 2.050, 1.998, 1.678); (追記ここまで)
37 (追記) +$graph->dataY['gamma'] = array(4.896, 4.500, 4.190, 3.050, 2.888, 3.678); (追記ここまで)
38 (追記) + (追記ここまで)
39 (追記) +$graph->styleTagsX = 'font-family: monospace; font-size: 8pt;'; (追記ここまで)
40 (追記) +$graph->styleTagsY = 'font-family: monospace; font-size: 8pt;'; (追記ここまで)
41 (追記) + (追記ここまで)
42 (追記) +$graph->format['alpha'] = array( (追記ここまで)
43 (追記) + 'style' => 'fill:#F00', 'barWidth' => 0.25, 'barOffset' => -0.5); (追記ここまで)
44 (追記) + (追記ここまで)
45 (追記) +$graph->format['beta'] = array( (追記ここまで)
46 (追記) + 'style' => 'fill:#0F0', 'barWidth' => 0.25, 'barOffset' => 0); (追記ここまで)
47 (追記) + (追記ここまで)
48 (追記) +$graph->format['gamma'] = array( (追記ここまで)
49 (追記) + 'style' => 'fill:#00F', 'barWidth' => 0.25, 'barOffset' => 0.5); (追記ここまで)
50 (追記) + (追記ここまで)
51 (追記) + (追記ここまで)
52 (追記) +$graph->init() or die($graph->error); (追記ここまで)
53 (追記) +$graph->drawGraph(); (追記ここまで)
54 (追記) +$graph->bar('gamma') or die($graph->error); (追記ここまで)
55 (追記) +$graph->bar('beta') or die($graph->error); (追記ここまで)
56 (追記) +$graph->bar('alpha') or die($graph->error); (追記ここまで)
57 (追記) + (追記ここまで)
58 (追記) +$graph->outputSVG(); (追記ここまで)
59 (追記) +?> (追記ここまで)
\ No newline at end of file
Property changes on: trunk/extensions/FlaggedRevs/svggraph/test02.php
___________________________________________________________________
Added: svn:eol-style
1 60 + native
Index: trunk/extensions/FlaggedRevs/svggraph/svgGraph1.php
— — @@ -0,0 +1,62 @@
2 (追記) +<?php (追記ここまで)
3 (追記) +/** (追記ここまで)
4 (追記) +* Extension to svgGraph. (追記ここまで)
5 (追記) +* Defines default presentation attributes to use for all graphs instantiating this class.<br> (追記ここまで)
6 (追記) +* <pre> (追記ここまで)
7 (追記) +* Here are some style attributes to get started with. (追記ここまで)
8 (追記) +* (追記ここまで)
9 (追記) +* A &lt;color&gt; can be a numerical RGB specification. (追記ここまで)
10 (追記) +* eg: rgb(0-100%, 0-100%, 0-100%) | rgb(0..255,0..255,0..255) | #rgb | #rrggbb ) (追記ここまで)
11 (追記) +* (追記ここまで)
12 (追記) +* Presentation attributes for filling and stroking: (追記ここまで)
13 (追記) +* fill (none | currentColor | &lt;color&gt; ) (追記ここまで)
14 (追記) +* fill-opacity % Opacity Value; (追記ここまで)
15 (追記) +* stroke (none | currentColor | &lt;color&gt; ) (追記ここまで)
16 (追記) +* stroke-dasharray % Stroke Dash Array (追記ここまで)
17 (追記) +* stroke-dashoffset % Stroke Dash Offset (追記ここまで)
18 (追記) +* stroke-linecap (butt | round | square | inherit) (追記ここまで)
19 (追記) +* stroke-linejoin (miter | round | bevel | inherit) (追記ここまで)
20 (追記) +* stroke-miterlimit % StrokeMiterLimitValue; (追記ここまで)
21 (追記) +* stroke-opacity % Opacity (追記ここまで)
22 (追記) +* stroke-width % Stroke Width (追記ここまで)
23 (追記) +* (追記ここまで)
24 (追記) +* Presentation attributes for graphics: (追記ここまで)
25 (追記) +* shape-rendering (auto | optimizeSpeed | crispEdges | geometricPrecision | inherit) (追記ここまで)
26 (追記) +* text-rendering (auto | optimizeSpeed | optimizeLegibility | geometricPrecision | inherit) (追記ここまで)
27 (追記) +* (追記ここまで)
28 (追記) +* Font Selection attributes: (追記ここまで)
29 (追記) +* font-family (serif | sans-serif | monospace) (追記ここまで)
30 (追記) +* font-style (normal | italic | oblique | inherit) (追記ここまで)
31 (追記) +* font-variant (normal | small-caps | inherit) (追記ここまで)
32 (追記) +* font-weight (normal | bold | bolder | lighter | 100..900 | inherit) (追記ここまで)
33 (追記) +* (追記ここまで)
34 (追記) +* </pre> (追記ここまで)
35 (追記) +*/ (追記ここまで)
36 (追記) +class svgGraph1 extends svgGraph { var (追記ここまで)
37 (追記) + $graphicWidth = 400, (追記ここまで)
38 (追記) + $graphicHeight = 300, (追記ここまで)
39 (追記) + (追記ここまで)
40 (追記) + $plotWidth = 300, (追記ここまで)
41 (追記) + $plotHeight = 200, (追記ここまで)
42 (追記) + $plotOffsetX = 60, (追記ここまで)
43 (追記) + $plotOffsetY = 40, (追記ここまで)
44 (追記) + (追記ここまで)
45 (追記) + $styleTitleDefault = 'text-rendering: optimizeSpeed; ', (追記ここまで)
46 (追記) + $styleLabelXDefault = 'text-rendering: optimizeSpeed; ', (追記ここまで)
47 (追記) + $styleLabelYDefault = 'text-rendering: optimizeSpeed; ', (追記ここまで)
48 (追記) + (追記ここまで)
49 (追記) + $styleTagsXDefault = 'text-rendering: optimizeLegibility; ', (追記ここまで)
50 (追記) + $styleTagsYDefault = 'text-rendering: optimizeLegibility; ', (追記ここまで)
51 (追記) + (追記ここまで)
52 (追記) + $styleGridXDefault = 'shape-rendering: crispEdges; stroke:#ccc; stroke-width:1; ', (追記ここまで)
53 (追記) + $styleGridYDefault = 'shape-rendering: crispEdges; stroke:#ccc; stroke-width:1; ', (追記ここまで)
54 (追記) + $styleBoxDefault = 'shape-rendering: crispEdges; stroke:#000; stroke-width:1; ', (追記ここまで)
55 (追記) + (追記ここまで)
56 (追記) + $styleLineDefault = 'shape-rendering: geometricPrecision; stroke-linecap: round; ', // smooth lines with round edges (追記ここまで)
57 (追記) + $stylePolylineDefault = 'shape-rendering: geometricPrecision; fill:none; ', // don't fill area in (追記ここまで)
58 (追記) + $styleBarDefault = 'shape-rendering: crispEdges; stroke:#000; stroke-width:1; ', //crisp black border (追記ここまで)
59 (追記) + (追記ここまで)
60 (追記) + $error = ''; (追記ここまで)
61 (追記) +} (追記ここまで)
62 (追記) + (追記ここまで)
63 (追記) +?> (追記ここまで)
\ No newline at end of file
Property changes on: trunk/extensions/FlaggedRevs/svggraph/svgGraph1.php
___________________________________________________________________
Added: svn:eol-style
1 64 + native
Index: trunk/extensions/FlaggedRevs/svggraph/test03.php
— — @@ -0,0 +1,93 @@
2 (追記) +<?php (追記ここまで)
3 (追記) +error_reporting(0); (追記ここまで)
4 (追記) + (追記ここまで)
5 (追記) +include 'svgGraph.php'; (追記ここまで)
6 (追記) +include 'svgGraph2.php'; (追記ここまで)
7 (追記) + (追記ここまで)
8 (追記) +$graph = new svgGraph2; (追記ここまで)
9 (追記) +$graph->graphicWidth = 400; (追記ここまで)
10 (追記) +$graph->graphicHeight = 300; (追記ここまで)
11 (追記) +$graph->plotWidth = 300; (追記ここまで)
12 (追記) +$graph->plotHeight = 180; (追記ここまで)
13 (追記) +$graph->plotOffsetX = 70; (追記ここまで)
14 (追記) +$graph->plotOffsetY = 50; (追記ここまで)
15 (追記) +$graph->numGridlinesY = 6; (追記ここまで)
16 (追記) +$graph->numTicksY = 6; (追記ここまで)
17 (追記) + (追記ここまで)
18 (追記) +$graph->innerPaddingX = 10; (追記ここまで)
19 (追記) +$graph->innerPaddingY = 6; (追記ここまで)
20 (追記) +$graph->outerPadding = 10; (追記ここまで)
21 (追記) + (追記ここまで)
22 (追記) +$graph->offsetGridlinesX = 0.2; (追記ここまで)
23 (追記) + (追記ここまで)
24 (追記) +$graph->decimalPlacesY = 2; (追記ここまで)
25 (追記) + (追記ここまで)
26 (追記) +$graph->rotTagsX = -30; (追記ここまで)
27 (追記) +$graph->rotTagsY = 0; (追記ここまで)
28 (追記) + (追記ここまで)
29 (追記) + (追記ここまで)
30 (追記) +$graph->title = 'Lines with Markers and Filters'; (追記ここまで)
31 (追記) +$graph->styleTitle = 'font-family: sans-serif; font-size: 18pt;'; (追記ここまで)
32 (追記) + (追記ここまで)
33 (追記) +$graph->labelX = 'Day of the Week'; (追記ここまで)
34 (追記) +$graph->styleLabelX = 'font-family: sans-serif; font-size: 10pt;'; (追記ここまで)
35 (追記) +$graph->labelY = 'Some Parameters'; (追記ここまで)
36 (追記) +$graph->styleLabelY = 'font-family: sans-serif; font-size: 10pt;'; (追記ここまで)
37 (追記) + (追記ここまで)
38 (追記) +$graph->dataX = array('Friday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'); (追記ここまで)
39 (追記) +$graph->dataY['alpha'] = array(8.610, 7.940, 3.670, 3.670, 6.940, 8.650); (追記ここまで)
40 (追記) +$graph->dataY['beta'] = array(1.456, 3.001, 5.145, 2.050, 1.998, 1.678); (追記ここまで)
41 (追記) +$graph->dataY['gamma'] = array(4.896, 4.500, 4.190, 3.050, 2.888, 3.678); (追記ここまで)
42 (追記) + (追記ここまで)
43 (追記) +$graph->styleTagsX = 'font-family: sans-serif; font-size: 8pt;'; (追記ここまで)
44 (追記) +$graph->styleTagsY = 'font-family: sans-serif; font-size: 8pt;'; (追記ここまで)
45 (追記) + (追記ここまで)
46 (追記) +$graph->format['alpha'] = array( (追記ここまで)
47 (追記) + 'style' => 'stroke:#F00; stroke-width:2; filter:url(#dropShadow); ', (追記ここまで)
48 (追記) + 'attributes' => "marker-end='url(#square)'"); (追記ここまで)
49 (追記) + (追記ここまで)
50 (追記) +$graph->format['beta'] = array( (追記ここまで)
51 (追記) + 'style' => 'stroke:#0F0; stroke-width:2; filter:url(#dropShadow); ', (追記ここまで)
52 (追記) + 'attributes' => "marker-end='url(#circle)'"); (追記ここまで)
53 (追記) + (追記ここまで)
54 (追記) +$graph->format['gamma'] = array( (追記ここまで)
55 (追記) + 'style' => 'stroke:#00F; stroke-width:2; filter:url(#dropShadow); ', (追記ここまで)
56 (追記) + 'attributes' => "marker-end='url(#triangle)'"); (追記ここまで)
57 (追記) + (追記ここまで)
58 (追記) +// extra code for markers (追記ここまで)
59 (追記) +$graph->extraSVG = ' (追記ここまで)
60 (追記) +<defs> (追記ここまで)
61 (追記) + <marker id="square" style="stroke:#000; stroke-width:0; fill:#F00; " (追記ここまで)
62 (追記) + viewBox="0 0 10 10" refX="5" refY="5" orient="0" (追記ここまで)
63 (追記) + markerUnits="strokeWidth" markerWidth="4" markerHeight="4"> (追記ここまで)
64 (追記) + <rect x="0" y="0" width="10" height="10"/> (追記ここまで)
65 (追記) + </marker> (追記ここまで)
66 (追記) + <marker id="circle" style="stroke:#000; stroke-width:0; fill:#0F0; " (追記ここまで)
67 (追記) + viewBox="0 0 10 10" refX="5" refY="5" orient="0" (追記ここまで)
68 (追記) + markerUnits="strokeWidth" markerWidth="5" markerHeight="5"> (追記ここまで)
69 (追記) + <circle cx="5" cy="5" r="4"/> (追記ここまで)
70 (追記) + </marker> (追記ここまで)
71 (追記) + <marker id="triangle" style="stroke:#000; stroke-width:0; fill:#00F; " (追記ここまで)
72 (追記) + viewBox="0 0 10 10" refX="5" refY="5" orient="-90" (追記ここまで)
73 (追記) + markerUnits="strokeWidth" markerWidth="5" markerHeight="5"> (追記ここまで)
74 (追記) + <path d="M 2 0 L 10 5 L 2 10 z" /> (追記ここまで)
75 (追記) + </marker> (追記ここまで)
76 (追記) +</defs> (追記ここまで)
77 (追記) +<filter id="dropShadow" filterUnits="objectBoundingBox" x="-10%" y="-10%" width="130%" height="130%"> (追記ここまで)
78 (追記) + <feGaussianBlur in="SourceAlpha" stdDeviation="2" result="blur"/> (追記ここまで)
79 (追記) + <feOffset in="blur" dx="2" dy="2" result="offsetBlur"/> (追記ここまで)
80 (追記) + <feMerge> (追記ここまで)
81 (追記) + <feMergeNode in="offsetBlur"/> (追記ここまで)
82 (追記) + <feMergeNode in="SourceGraphic"/> (追記ここまで)
83 (追記) + </feMerge> (追記ここまで)
84 (追記) +</filter> (追記ここまで)
85 (追記) +'; (追記ここまで)
86 (追記) + (追記ここまで)
87 (追記) +$graph->init() or die($graph->error); (追記ここまで)
88 (追記) +$graph->drawGraph(); (追記ここまで)
89 (追記) +$graph->line('gamma') or die($graph->error); (追記ここまで)
90 (追記) +$graph->line('beta') or die($graph->error); (追記ここまで)
91 (追記) +$graph->line('alpha') or die($graph->error); (追記ここまで)
92 (追記) + (追記ここまで)
93 (追記) +$graph->outputSVG(); (追記ここまで)
94 (追記) +?> (追記ここまで)
\ No newline at end of file
Property changes on: trunk/extensions/FlaggedRevs/svggraph/test03.php
___________________________________________________________________
Added: svn:eol-style
1 95 + native
Index: trunk/extensions/FlaggedRevs/svggraph/svgGraph2.php
— — @@ -0,0 +1,62 @@
2 (追記) +<?php (追記ここまで)
3 (追記) +/** (追記ここまで)
4 (追記) +* Extension to svgGraph. (追記ここまで)
5 (追記) +* Defines default presentation attributes to use for all graphs instantiating this class.<br> (追記ここまで)
6 (追記) +* <pre> (追記ここまで)
7 (追記) +* Here are some style attributes to get started with. (追記ここまで)
8 (追記) +* (追記ここまで)
9 (追記) +* A &lt;color&gt; can be a numerical RGB specification. (追記ここまで)
10 (追記) +* eg: rgb(0-100%, 0-100%, 0-100%) | rgb(0..255,0..255,0..255) | #rgb | #rrggbb ) (追記ここまで)
11 (追記) +* (追記ここまで)
12 (追記) +* Presentation attributes for filling and stroking: (追記ここまで)
13 (追記) +* fill (none | currentColor | &lt;color&gt; ) (追記ここまで)
14 (追記) +* fill-opacity % Opacity Value; (追記ここまで)
15 (追記) +* stroke (none | currentColor | &lt;color&gt; ) (追記ここまで)
16 (追記) +* stroke-dasharray % Stroke Dash Array (追記ここまで)
17 (追記) +* stroke-dashoffset % Stroke Dash Offset (追記ここまで)
18 (追記) +* stroke-linecap (butt | round | square | inherit) (追記ここまで)
19 (追記) +* stroke-linejoin (miter | round | bevel | inherit) (追記ここまで)
20 (追記) +* stroke-miterlimit % StrokeMiterLimitValue; (追記ここまで)
21 (追記) +* stroke-opacity % Opacity (追記ここまで)
22 (追記) +* stroke-width % Stroke Width (追記ここまで)
23 (追記) +* (追記ここまで)
24 (追記) +* Presentation attributes for graphics: (追記ここまで)
25 (追記) +* shape-rendering (auto | optimizeSpeed | crispEdges | geometricPrecision | inherit) (追記ここまで)
26 (追記) +* text-rendering (auto | optimizeSpeed | optimizeLegibility | geometricPrecision | inherit) (追記ここまで)
27 (追記) +* (追記ここまで)
28 (追記) +* Font Selection attributes: (追記ここまで)
29 (追記) +* font-family (serif | sans-serif | monospace) (追記ここまで)
30 (追記) +* font-style (normal | italic | oblique | inherit) (追記ここまで)
31 (追記) +* font-variant (normal | small-caps | inherit) (追記ここまで)
32 (追記) +* font-weight (normal | bold | bolder | lighter | 100..900 | inherit) (追記ここまで)
33 (追記) +* (追記ここまで)
34 (追記) +* </pre> (追記ここまで)
35 (追記) +*/ (追記ここまで)
36 (追記) +class svgGraph2 extends svgGraph { var (追記ここまで)
37 (追記) + $graphicWidth = 400, (追記ここまで)
38 (追記) + $graphicHeight = 300, (追記ここまで)
39 (追記) + (追記ここまで)
40 (追記) + $plotWidth = 300, (追記ここまで)
41 (追記) + $plotHeight = 200, (追記ここまで)
42 (追記) + $plotOffsetX = 60, (追記ここまで)
43 (追記) + $plotOffsetY = 40, (追記ここまで)
44 (追記) + (追記ここまで)
45 (追記) + $styleTitleDefault = 'text-rendering: geometricPrecision; ', (追記ここまで)
46 (追記) + $styleLabelXDefault = 'text-rendering: geometricPrecision; ', (追記ここまで)
47 (追記) + $styleLabelYDefault = 'text-rendering: geometricPrecision; ', (追記ここまで)
48 (追記) + (追記ここまで)
49 (追記) + $styleTagsXDefault = 'text-rendering: geometricPrecision; ', (追記ここまで)
50 (追記) + $styleTagsYDefault = 'text-rendering: geometricPrecision; ', (追記ここまで)
51 (追記) + (追記ここまで)
52 (追記) + $styleGridXDefault = 'shape-rendering: crispEdges; stroke:#ccc; stroke-width:1; ', (追記ここまで)
53 (追記) + $styleGridYDefault = 'shape-rendering: crispEdges; stroke:#ccc; stroke-width:1; ', (追記ここまで)
54 (追記) + $styleBoxDefault = 'shape-rendering: crispEdges; stroke:#000; stroke-width:1; ', (追記ここまで)
55 (追記) + (追記ここまで)
56 (追記) + $styleLineDefault = 'shape-rendering: geometricPrecision; stroke-linecap: round; ', // smooth lines with round edges (追記ここまで)
57 (追記) + $stylePolylineDefault = 'shape-rendering: geometricPrecision; fill:none; ', // don't fill area in (追記ここまで)
58 (追記) + $styleBarDefault = 'shape-rendering: crispEdges; stroke:#000; stroke-width:1; ', //crisp black border (追記ここまで)
59 (追記) + (追記ここまで)
60 (追記) + $error = ''; (追記ここまで)
61 (追記) +} (追記ここまで)
62 (追記) + (追記ここまで)
63 (追記) +?> (追記ここまで)
\ No newline at end of file
Property changes on: trunk/extensions/FlaggedRevs/svggraph/svgGraph2.php
___________________________________________________________________
Added: svn:eol-style
1 64 + native
Index: trunk/extensions/FlaggedRevs/svggraph/LICENSE.LGPL
— — @@ -0,0 +1,18 @@
2 (追記) +(c) Herman Veluwenkamp, 2002 (LGPL) (追記ここまで)
3 (追記) + (追記ここまで)
4 (追記) +This library is free software; you can redistribute it and/or (追記ここまで)
5 (追記) +modify it under the terms of the GNU Lesser General Public (追記ここまで)
6 (追記) +License as published by the Free Software Foundation; either (追記ここまで)
7 (追記) +version 2.1 of the License, or (at your option) any later version. (追記ここまで)
8 (追記) + (追記ここまで)
9 (追記) +This library is distributed in the hope that it will be useful, (追記ここまで)
10 (追記) +but WITHOUT ANY WARRANTY; without even the implied warranty of (追記ここまで)
11 (追記) +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU (追記ここまで)
12 (追記) +Lesser General Public License for more details. (追記ここまで)
13 (追記) + (追記ここまで)
14 (追記) +You should have received a copy of the GNU Lesser General Public (追記ここまで)
15 (追記) +License along with this library; if not, write to the Free Software (追記ここまで)
16 (追記) +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA (追記ここまで)
17 (追記) + (追記ここまで)
18 (追記) +Copy of GNU Lesser General Public License at: http://www.gnu.org/copyleft/lesser.txt (追記ここまで)
19 (追記) +Contact author at: hveluwenkamp@myrealbox.com (追記ここまで)
Index: trunk/extensions/FlaggedRevs/specialpages/RatingHistory_body.php
— — @@ -97,21 +97,44 @@
98 98 // If not, then generate a new one.
99 99 $filePath = $this->getFilePath( $tag );
100 100 $url = $this->getUrlPath( $tag );
101 (削除) - if( !file_exists($filePath) || $this->fileExpired($tag,$filePath) ) { (削除ここまで)
102 (削除) - $ok = $this->makeTagGraph( $tag, $filePath ); (削除ここまで)
101 (追記) + $ext = self::getCachedFileExtension(); (追記ここまで)
102 (追記) + if( $ext === 'svg' ) { (追記ここまで)
103 (追記) + if( !$this->fileExpired($tag,$filePath) || $this->makeSvgGraph( $tag, $filePath ) ) { (追記ここまで)
104 (追記) + $data = true; (追記ここまで)
105 (追記) + $wgOut->addHTML( '<h2>' . wfMsgHtml("readerfeedback-$tag") . '</h2>' ); (追記ここまで)
106 (追記) + $wgOut->addHTML( (追記ここまで)
107 (追記) + Xml::openElement( 'div', array('class' => 'reader_feedback_graph', (追記ここまで)
108 (追記) + 'style' => "width:100%; overflow:scroll;") ) . (追記ここまで)
109 (追記) + Xml::openElement( 'object', array('data' => $url, 'type' => 'image/svg+xml') ) . (追記ここまで)
110 (追記) + Xml::closeElement( 'object' ) . (追記ここまで)
111 (追記) + Xml::closeElement( 'div' ) . "\n" (追記ここまで)
112 (追記) + ); (追記ここまで)
113 (追記) + } (追記ここまで)
114 (追記) + } else if( $ext === 'png' ) { (追記ここまで)
115 (追記) + if( !$this->fileExpired($tag,$filePath) || $this->makePngGraph( $tag, $filePath ) ) { (追記ここまで)
116 (追記) + $data = true; (追記ここまで)
117 (追記) + $wgOut->addHTML( '<h2>' . wfMsgHtml("readerfeedback-$tag") . '</h2>' ); (追記ここまで)
118 (追記) + $wgOut->addHTML( (追記ここまで)
119 (追記) + Xml::openElement( 'div', array('class' => 'reader_feedback_graph', (追記ここまで)
120 (追記) + 'style' => "width:100%; overflow:scroll;") ) . (追記ここまで)
121 (追記) + Xml::openElement( 'img', array('src' => $url,'alt' => $tag) ) . (追記ここまで)
122 (追記) + Xml::closeElement( 'img' ) . (追記ここまで)
123 (追記) + Xml::closeElement( 'div' ) . "\n" (追記ここまで)
124 (追記) + ); (追記ここまで)
125 (追記) + } (追記ここまで)
103 126 } else {
104 (削除) - $ok = true; (削除ここまで)
105 (削除) - } (削除ここまで)
106 (削除) - // Output the image (削除ここまで)
107 (削除) - if( $ok ) { (削除ここまで)
108 (削除) - $wgOut->addHTML( '<h2>' . wfMsgHtml("readerfeedback-$tag") . '</h2>' ); (削除ここまで)
109 (削除) - $wgOut->addHTML( (削除ここまで)
110 (削除) - Xml::openElement( 'div', array('class' => 'reader_feedback_graph','style' => "width:100%;overflow:scroll;") ) . (削除ここまで)
111 (削除) - Xml::openElement( 'img', array('src' => $url,'alt' => $tag) ) . Xml::closeElement( 'img' ) . (削除ここまで)
112 (削除) - Xml::closeElement( 'div' ) (削除ここまで)
113 (削除) - ); (削除ここまで)
114 (削除) - $data = true; (削除ここまで)
115 (削除) - } (削除ここまで)
127 (追記) + if( !$this->fileExpired($tag,$filePath) ) { (追記ここまで)
128 (追記) + $data = true; (追記ここまで)
129 (追記) + $fp = @fopen( $filePath, 'r' ); (追記ここまで)
130 (追記) + $table = fread( $fp, filesize($filePath) ); (追記ここまで)
131 (追記) + $wgOut->addHTML( '<h2>' . wfMsgHtml("readerfeedback-$tag") . '</h2>' ); (追記ここまで)
132 (追記) + $wgOut->addHTML( $table . "\n" ); (追記ここまで)
133 (追記) + } else if( $table = $this->makeHTMLTable( $tag, $filePath ) ) { (追記ここまで)
134 (追記) + $data = true; (追記ここまで)
135 (追記) + $wgOut->addHTML( '<h2>' . wfMsgHtml("readerfeedback-$tag") . '</h2>' ); (追記ここまで)
136 (追記) + $wgOut->addHTML( $table . "\n" ); (追記ここまで)
137 (追記) + } (追記ここまで)
138 (追記) + } (追記ここまで)
116 139 }
117 140 if( !$data ) {
118 141 $wgOut->addHTML( wfMsg('ratinghistory-none') );
— — @@ -119,12 +142,83 @@
120 143 }
121 144
122 145 /**
146 (追記) + * Generate an HTML table for this tag (追記ここまで)
147 (追記) + * @param string $tag (追記ここまで)
148 (追記) + * @param string $filePath (追記ここまで)
149 (追記) + * @returns string, html table (追記ここまで)
150 (追記) + */ (追記ここまで)
151 (追記) + public function makeHTMLTable( $tag, $filePath ) { (追記ここまで)
152 (追記) + $dir = dirname($filePath); (追記ここまで)
153 (追記) + // Make sure directory exists (追記ここまで)
154 (追記) + if( !is_dir($dir) && !wfMkdirParents( $dir, 0777 ) ) { (追記ここまで)
155 (追記) + return false; (追記ここまで)
156 (追記) + } (追記ここまで)
157 (追記) + // Set cutoff time for period (追記ここまで)
158 (追記) + $dbr = wfGetDB( DB_SLAVE ); (追記ここまで)
159 (追記) + $cutoff_unixtime = time() - ($this->period * 24 * 3600); (追記ここまで)
160 (追記) + $cutoff_unixtime = $cutoff_unixtime - ($cutoff_unixtime % 86400); (追記ここまで)
161 (追記) + $cutoff = $dbr->addQuotes( wfTimestamp( TS_MW, $cutoff_unixtime ) ); (追記ここまで)
162 (追記) + // Define the data using the DB rows (追記ここまで)
163 (追記) + $totalVal = $totalCount = $n = 0; (追記ここまで)
164 (追記) + $lastDay = 31; // init to not trigger first time (追記ここまで)
165 (追記) + $lastMonth = 12; // init to not trigger first time (追記ここまで)
166 (追記) + $lastYear = 9999; // init to not trigger first time (追記ここまで)
167 (追記) + $res = $dbr->select( 'reader_feedback_history', (追記ここまで)
168 (追記) + array( 'rfh_total', 'rfh_count', 'rfh_date' ), (追記ここまで)
169 (追記) + array( 'rfh_page_id' => $this->page->getArticleId(), (追記ここまで)
170 (追記) + 'rfh_tag' => $tag, (追記ここまで)
171 (追記) + "rfh_date>= {$cutoff}"), (追記ここまで)
172 (追記) + __METHOD__, (追記ここまで)
173 (追記) + array( 'ORDER BY' => 'rfh_date ASC' ) ); (追記ここまで)
174 (追記) + // Label spacing (追記ここまで)
175 (追記) + if( $row = $dbr->fetchObject( $res ) ) { (追記ここまで)
176 (追記) + $lower = wfTimestamp( TS_UNIX, $row->rfh_date ); (追記ここまで)
177 (追記) + $res->seek( $dbr->numRows($res)-1 ); (追記ここまで)
178 (追記) + $upper = wfTimestamp( TS_UNIX, $dbr->fetchObject( $res )->rfh_date ); (追記ここまで)
179 (追記) + $days = intval( ($upper - $lower)/86400 ); (追記ここまで)
180 (追記) + $int = intval( ceil($days/10) ); // 10 labels at most (追記ここまで)
181 (追記) + $res->seek( 0 ); (追記ここまで)
182 (追記) + } (追記ここまで)
183 (追記) + $dates = $drating = $arating = ""; (追記ここまで)
184 (追記) + $n = 0; (追記ここまで)
185 (追記) + while( $row = $dbr->fetchObject( $res ) ) { (追記ここまで)
186 (追記) + $totalVal += (int)$row->rfh_total; (追記ここまで)
187 (追記) + $totalCount += (int)$row->rfh_count; (追記ここまで)
188 (追記) + $dayAve = sprintf( '%4.2f', (real)$row->rfh_total/(real)$row->rfh_count ); (追記ここまで)
189 (追記) + $cumAve = sprintf( '%4.2f', (real)$totalVal/(real)$totalCount ); (追記ここまで)
190 (追記) + $year = intval( substr( $row->rfh_date, 0, 4 ) ); (追記ここまで)
191 (追記) + $month = intval( substr( $row->rfh_date, 4, 2 ) ); (追記ここまで)
192 (追記) + $day = intval( substr( $row->rfh_date, 6, 2 ) ); (追記ここまで)
193 (追記) + $date = ($this->period> 31) ? "{$month}/{$day}/".substr( $year, 2, 2 ) : "{$month}/{$day}"; (追記ここまで)
194 (追記) + $dates .= "<th>$date</th>"; (追記ここまで)
195 (追記) + $drating .= "<td>$dayAve</td>"; (追記ここまで)
196 (追記) + $arating .= "<td>$cumAve</td>"; (追記ここまで)
197 (追記) + $n++; (追記ここまで)
198 (追記) + } (追記ここまで)
199 (追記) + // Minimum sample size (追記ここまで)
200 (追記) + if( $n < 2 || $totalCount < 10 ) { (追記ここまで)
201 (追記) + return ""; (追記ここまで)
202 (追記) + } (追記ここまで)
203 (追記) + $chart = Xml::openElement( 'div', array('style' => "width:100%; overflow:scroll;") ); (追記ここまで)
204 (追記) + $chart .= "<table width='100%' class='wikitable' style='white-space:nowrap' border='1px'>\n"; (追記ここまで)
205 (追記) + $chart .= "<tr>$dates</tr>\n"; (追記ここまで)
206 (追記) + $chart .= "<tr align='center' class='fr-rating-dave'>$drating</tr>\n"; (追記ここまで)
207 (追記) + $chart .= "<tr align='center' class='fr-rating-rave'>$arating</tr>\n"; (追記ここまで)
208 (追記) + $chart .= "</table>\n"; (追記ここまで)
209 (追記) + $chart .= Xml::closeElement( 'div' ); (追記ここまで)
210 (追記) + // Write to file for cache (追記ここまで)
211 (追記) + $fp = @fopen( $filePath, 'w' ); (追記ここまで)
212 (追記) + @fwrite($fp, $chart ); (追記ここまで)
213 (追記) + return $chart; (追記ここまで)
214 (追記) + } (追記ここまで)
215 (追記) + (追記ここまで)
216 (追記) + /** (追記ここまで)
123 217 * Generate a graph for this tag
124 218 * @param string $tag
125 219 * @param string $filePath
126 (削除) - * @returns string, url path to file (削除ここまで)
220 (追記) + * @returns bool, success (追記ここまで)
127 221 */
128 (削除) - public function makeTagGraph( $tag, $filePath ) { (削除ここまで)
222 (追記) + public function makePngGraph( $tag, $filePath ) { (追記ここまで)
129 223 if( !function_exists( 'ImageCreate' ) ) {
130 224 // GD is not installed
131 225 return false;
— — @@ -215,6 +309,8 @@
216 310 return false;
217 311 }
218 312 $plot->SetDataValues($data);
313 (追記) + $plot->SetPointShapes('dot'); (追記ここまで)
314 (追記) + $plot->setPointSizes( 1 ); (追記ここまで)
219 315 $plot->SetBackgroundColor('#fffff0');
220 316 // Turn off X axis ticks and labels because they get in the way:
221 317 $plot->SetXTickLabelPos('none');
— — @@ -230,6 +326,138 @@
231 327 }
232 328
233 329 /**
330 (追記) + * Generate a graph for this tag (追記ここまで)
331 (追記) + * @param string $tag (追記ここまで)
332 (追記) + * @param string $filePath (追記ここまで)
333 (追記) + * @returns bool, success (追記ここまで)
334 (追記) + */ (追記ここまで)
335 (追記) + public function makeSvgGraph( $tag, $filePath ) { (追記ここまで)
336 (追記) + global $wgSvgGraphDir; (追記ここまで)
337 (追記) + require_once( "$wgSvgGraphDir/svggraph.php" ); // load classes (追記ここまで)
338 (追記) + require_once( "$wgSvgGraphDir/svggraph2.php" ); // load classes (追記ここまで)
339 (追記) + // Define the object (追記ここまで)
340 (追記) + $plot = new svgGraph2(); // some CONST double redefine notices (追記ここまで)
341 (追記) + // Set file path (追記ここまで)
342 (追記) + $dir = dirname($filePath); (追記ここまで)
343 (追記) + // Make sure directory exists (追記ここまで)
344 (追記) + if( !is_dir($dir) && !wfMkdirParents( $dir, 0777 ) ) { (追記ここまで)
345 (追記) + return false; (追記ここまで)
346 (追記) + } (追記ここまで)
347 (追記) + // Set some parameters (追記ここまで)
348 (追記) + $plot->graphicWidth = 1000; (追記ここまで)
349 (追記) + $plot->graphicHeight = 450; (追記ここまで)
350 (追記) + $plot->plotWidth = 950; (追記ここまで)
351 (追記) + $plot->plotHeight = 400; (追記ここまで)
352 (追記) + $plot->decimalPlacesY = 2; (追記ここまで)
353 (追記) + $plot->plotOffsetX = 40; (追記ここまで)
354 (追記) + $plot->plotOffsetY = 10; (追記ここまで)
355 (追記) + $plot->numGridlinesY = 5; (追記ここまで)
356 (追記) + $plot->innerPaddingX = 5; (追記ここまで)
357 (追記) + $plot->innerPaddingY = 0; (追記ここまで)
358 (追記) + $plot->outerPadding = 0; (追記ここまで)
359 (追記) + $plot->offsetGridlinesX = 0; (追記ここまで)
360 (追記) + $plot->maxY = 4; (追記ここまで)
361 (追記) + // Set cutoff time for period (追記ここまで)
362 (追記) + $dbr = wfGetDB( DB_SLAVE ); (追記ここまで)
363 (追記) + $cutoff_unixtime = time() - ($this->period * 24 * 3600); (追記ここまで)
364 (追記) + $cutoff_unixtime = $cutoff_unixtime - ($cutoff_unixtime % 86400); (追記ここまで)
365 (追記) + $cutoff = $dbr->addQuotes( wfTimestamp( TS_MW, $cutoff_unixtime ) ); (追記ここまで)
366 (追記) + // Define the data using the DB rows (追記ここまで)
367 (追記) + $dataX = $dave = $rave = array(); (追記ここまで)
368 (追記) + $totalVal = $totalCount = $n = 0; (追記ここまで)
369 (追記) + $lastDay = 31; // init to not trigger first time (追記ここまで)
370 (追記) + $lastMonth = 12; // init to not trigger first time (追記ここまで)
371 (追記) + $lastYear = 9999; // init to not trigger first time (追記ここまで)
372 (追記) + $res = $dbr->select( 'reader_feedback_history', (追記ここまで)
373 (追記) + array( 'rfh_total', 'rfh_count', 'rfh_date' ), (追記ここまで)
374 (追記) + array( 'rfh_page_id' => $this->page->getArticleId(), (追記ここまで)
375 (追記) + 'rfh_tag' => $tag, (追記ここまで)
376 (追記) + "rfh_date>= {$cutoff}"), (追記ここまで)
377 (追記) + __METHOD__, (追記ここまで)
378 (追記) + array( 'ORDER BY' => 'rfh_date ASC' ) ); (追記ここまで)
379 (追記) + // Label spacing (追記ここまで)
380 (追記) + if( $row = $dbr->fetchObject( $res ) ) { (追記ここまで)
381 (追記) + $lower = wfTimestamp( TS_UNIX, $row->rfh_date ); (追記ここまで)
382 (追記) + $res->seek( $dbr->numRows($res)-1 ); (追記ここまで)
383 (追記) + $upper = wfTimestamp( TS_UNIX, $dbr->fetchObject( $res )->rfh_date ); (追記ここまで)
384 (追記) + $days = intval( ($upper - $lower)/86400 ); (追記ここまで)
385 (追記) + $int = intval( ceil($days/10) ); // 10 labels at most (追記ここまで)
386 (追記) + $res->seek( 0 ); (追記ここまで)
387 (追記) + } (追記ここまで)
388 (追記) + while( $row = $dbr->fetchObject( $res ) ) { (追記ここまで)
389 (追記) + $totalVal += (int)$row->rfh_total; (追記ここまで)
390 (追記) + $totalCount += (int)$row->rfh_count; (追記ここまで)
391 (追記) + $dayAve = (real)$row->rfh_total/(real)$row->rfh_count; (追記ここまで)
392 (追記) + $cumAve = (real)$totalVal/(real)$totalCount; (追記ここまで)
393 (追記) + $year = intval( substr( $row->rfh_date, 0, 4 ) ); (追記ここまで)
394 (追記) + $month = intval( substr( $row->rfh_date, 4, 2 ) ); (追記ここまで)
395 (追記) + $day = intval( substr( $row->rfh_date, 6, 2 ) ); (追記ここまで)
396 (追記) + # Fill in days with no votes to keep spacing even (追記ここまで)
397 (追記) + # Year gaps... (追記ここまで)
398 (追記) + for( $i=($lastYear + 1); $i < $year; $i++ ) { (追記ここまで)
399 (追記) + for( $x=1; $x <= 365; $x++ ) { (追記ここまで)
400 (追記) + $dataX[] = ""; (追記ここまで)
401 (追記) + $dave[] = $lastDAve; (追記ここまで)
402 (追記) + $rave[] = $lastRAve; (追記ここまで)
403 (追記) + $n++; (追記ここまで)
404 (追記) + } (追記ここまで)
405 (追記) + } (追記ここまで)
406 (追記) + # Month gaps... (追記ここまで)
407 (追記) + for( $i=($lastMonth + 1); $i < $month; $i++ ) { (追記ここまで)
408 (追記) + for( $x=1; $x <= 31; $x++ ) { (追記ここまで)
409 (追記) + $dataX[] = ""; (追記ここまで)
410 (追記) + $dave[] = $lastDAve; (追記ここまで)
411 (追記) + $rave[] = $lastRAve; (追記ここまで)
412 (追記) + $n++; (追記ここまで)
413 (追記) + } (追記ここまで)
414 (追記) + } (追記ここまで)
415 (追記) + # Day gaps... (追記ここまで)
416 (追記) + for( $x=($lastDay + 1); $x < $day; $x++ ) { (追記ここまで)
417 (追記) + $dataX[] = ""; (追記ここまで)
418 (追記) + $dave[] = $lastDAve; (追記ここまで)
419 (追記) + $rave[] = $lastRAve; (追記ここまで)
420 (追記) + $n++; (追記ここまで)
421 (追記) + } (追記ここまで)
422 (追記) + # Label point? (追記ここまで)
423 (追記) + if( $n>= $int || !count($dataX) ) { (追記ここまで)
424 (追記) + $p = ($this->period> 31) ? "{$month}/{$day}/".substr( $year, 2, 2 ) : "{$month}/{$day}"; (追記ここまで)
425 (追記) + $n = 0; (追記ここまで)
426 (追記) + } else { (追記ここまで)
427 (追記) + $p = ""; (追記ここまで)
428 (追記) + $n++; (追記ここまで)
429 (追記) + } (追記ここまで)
430 (追記) + $dataX[] = $p; (追記ここまで)
431 (追記) + $dave[] = $dayAve; (追記ここまで)
432 (追記) + $rave[] = $cumAve; (追記ここまで)
433 (追記) + $lastDay = $day; (追記ここまで)
434 (追記) + $lastMonth = $month; (追記ここまで)
435 (追記) + $lastYear = $year; (追記ここまで)
436 (追記) + $lastDAve = $dayAve; (追記ここまで)
437 (追記) + $lastRAve = $cumAve; (追記ここまで)
438 (追記) + } (追記ここまで)
439 (追記) + // Minimum sample size (追記ここまで)
440 (追記) + if( count($dataX) < 2 || $totalCount < 10 ) { (追記ここまで)
441 (追記) + return false; (追記ここまで)
442 (追記) + } (追記ここまで)
443 (追記) + $plot->dataX = $dataX; (追記ここまで)
444 (追記) + $plot->dataY['dave'] = $dave; (追記ここまで)
445 (追記) + $plot->dataY['rave'] = $rave; (追記ここまで)
446 (追記) + $plot->styleTagsX = 'font-family: monospace; font-size: 8pt;'; (追記ここまで)
447 (追記) + $plot->format['dave'] = array( 'style' => 'stroke:blue; stroke-width:1;'); (追記ここまで)
448 (追記) + $plot->format['rave'] = array( 'style' => 'stroke:green; stroke-width:1;'); (追記ここまで)
449 (追記) + # Create the graph (追記ここまで)
450 (追記) + $plot->init(); (追記ここまで)
451 (追記) + $plot->drawGraph(); (追記ここまで)
452 (追記) + $plot->line('dave'); (追記ここまで)
453 (追記) + $plot->line('rave'); (追記ここまで)
454 (追記) + $plot->generateSVG(); (追記ここまで)
455 (追記) + // Write to file for cache (追記ここまで)
456 (追記) + $fp = @fopen( $filePath, 'w' ); (追記ここまで)
457 (追記) + @fwrite($fp, $plot->svg ); (追記ここまで)
458 (追記) + return true; (追記ここまで)
459 (追記) + } (追記ここまで)
460 (追記) + (追記ここまで)
461 (追記) + /** (追記ここまで)
234 462 * Get the path to where the corresponding graph file should be
235 463 * @param string $tag
236 464 * @returns string
— — @@ -252,14 +480,28 @@
253 481 }
254 482
255 483 public function getRelPath( $tag ) {
484 (追記) + $ext = self::getCachedFileExtension(); (追記ここまで)
256 485 $pageId = $this->page->getArticleId();
257 486 # Paranoid check. Should not be necessary, but here to be safe...
258 487 if( !preg_match('/^[a-zA-Z]{1,20}$/',$tag) ) {
259 488 throw new MWException( 'Invalid tag name!' );
260 489 }
261 (削除) - return "{$pageId}/{$tag}/l{$this->period}d.png"; (削除ここまで)
490 (追記) + return "{$pageId}/{$tag}/l{$this->period}d.{$ext}"; (追記ここまで)
262 491 }
263 492
493 (追記) + public static function getCachedFileExtension() { (追記ここまで)
494 (追記) + return 'png'; (追記ここまで)
495 (追記) + global $wgSvgGraphDir, $wgPHPlotDir; (追記ここまで)
496 (追記) + if( $wgSvgGraphDir ) { (追記ここまで)
497 (追記) + $ext = 'svg'; (追記ここまで)
498 (追記) + } else if( $wgPHPlotDir ) { (追記ここまで)
499 (追記) + $ext = 'png'; (追記ここまで)
500 (追記) + } else { (追記ここまで)
501 (追記) + $ext = 'html'; (追記ここまで)
502 (追記) + } (追記ここまで)
503 (追記) + return $ext; (追記ここまで)
504 (追記) + } (追記ここまで)
505 (追記) + (追記ここまで)
264 506 /**
265 507 * Check if a graph file is expired.
266 508 * @param string $tag
— — @@ -267,6 +509,9 @@
268 510 * @returns string
269 511 */
270 512 public function fileExpired( $tag, $path ) {
513 (追記) + if( !file_exists($path) ) { (追記ここまで)
514 (追記) + return true; (追記ここまで)
515 (追記) + } (追記ここまで)
271 516 $dbr = wfGetDB( DB_SLAVE );
272 517 $tagTimestamp = $dbr->selectField( 'reader_feedback_pages',
273 518 'rfp_touched',

Follow-up revisions

RevisionCommit summaryAuthorDate
r53745 Use wfSuppressWarnings()/wfRestoreWarnings() per CR on r39789. Also remove tr...demon 14:10, 25 July 2009

Comments

#Comment by Tim Starling (talk | contribs)   15:34, 25 May 2009

Don't use the error suppression (@) operator for any reason ever. It's broken when E_STRICT is enabled and it causes an unlogged, unexplained error if there is a fatal, which is hard to support. Use wfSuppressWarnings() and wfRestoreWarnings() instead.

Status & tagging log

  • 15:30, 12 September 2011 Meno25 (talk | contribs) changed the status of r39789 [removed: resolved added: old]
  • 14:11, 25 July 2009 😂 (talk | contribs) changed the status of r39789 [removed: fixme added: resolved]
  • 15:34, 25 May 2009 Tim Starling (talk | contribs) changed the status of r39789 [removed: ok added: fixme]

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