├── .gitignore ├── README.md ├── examples ├── multiple.fig ├── plotAxisLimit.jpg ├── plotAxislim.m ├── plotDirectSimple.m ├── plotDirectSimple1.eps ├── plotLineStyle.eps ├── plotLineStyle.m ├── plotLineStyle.png ├── plotMarker.m ├── plotMarkers.png ├── plotMultiple.m ├── plotMultiple.png ├── plotMultiple.tiff ├── plotMultiple2.eps ├── plotMultiple2.m ├── plotMultiple2.png ├── plotSimple.m ├── plotSimple1.eps ├── plotSimple1.png ├── plotSimpleLog.eps ├── plotSimpleLog.m ├── plotSimpleLog2.eps ├── plotSimpleLog2.m ├── plotSimpleLog2.png ├── plotSimpleLogLog.eps ├── plotSimpleLogLog.m ├── plotSimpleLogLog.png ├── plotSize.eps ├── plotSize.m ├── plotSize.png ├── plotSomeOther.m ├── plotVoltSomeOther.tiff ├── single.fig └── ugly.png ├── examples_class ├── multiple.fig ├── plotAxisLimit.jpg ├── plotAxislim.m ├── plotLineStyle.eps ├── plotLineStyle.m ├── plotLineStyle.png ├── plotMarker.m ├── plotMarkers.eps ├── plotMarkers.png ├── plotMultiple.m ├── plotMultiple.png ├── plotMultiple.tiff ├── plotMultiple2.eps ├── plotMultiple2.m ├── plotSimple.eps ├── plotSimple.m ├── plotSimple.png ├── plotSimple1.png ├── plotSimpleLog.eps ├── plotSimpleLog.m ├── plotSimpleLog2.eps ├── plotSimpleLog2.m ├── plotSimpleLog2.png ├── plotSimpleLogLog.eps ├── plotSimpleLogLog.m ├── plotSimpleLogLog.png ├── plotSize.eps ├── plotSize.m ├── plotSize.png ├── plotSomeOther.m ├── plotVoltSomeOther.tiff └── single.fig ├── lib ├── Plot.m ├── fixPSlinestyle.m ├── plotPub.m ├── plotPubYY.m ├── setPlotProp.m └── setPlotProp2.m └── license.txt /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | *.m~ 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 |

:warning: I am looking for a maintainer for this project. If you are interested, please let me know.

3 | Emai: masum D.O.T habib A.T gmail.com 4 | 5 | 6 | PlotPub 7 | ======= 8 | 9 |

Publication quality graphs in MATLAB.

10 | 11 | MATLAB is an excellent tool. It is equally popular among students, researchers 12 | and professors. If you use MATLAB for your project/research, you probably know 13 | that it is not easy to create publication quality graphs (PQGs) using MATLAB. 14 | You will have to call a billion set and get functions 15 | to create a decent plot with desired height, width, fonts, line width, color 16 | etc. Here, I present PlotPub which is a collection of MATLAB functions and 17 | a MATLAB class that allows you to modify almost all aspects of MATLAB figures 18 | and export PQGs using one function call and a simple structure. 19 | 20 |

What's new in v2.2

21 |
22 | 28 | 29 | 30 |

What's new in v2.1

31 |
32 | 39 | 40 |

New features of v2.x

41 |
42 | 53 | 54 | 55 |

What's new in v1.4

56 |
57 | 60 | 61 |

What's new in v1.3

62 |
63 | 69 | 70 |

Features of v1.x

71 |
72 | 86 | 87 |

Compatibility with v1.1

88 |
89 | In version 1.2, I introduced a new function setPlotProp which is 90 | superior to the old function plotPub. But for backward 91 | compatibility, plotPub is still available in v1.2. Therefore, all 92 | of your previous codes should work with v1.2. 93 | 94 |

Downloads

95 |
96 | 99 | 100 |

Documentation

101 |
102 | 103 |
Installation
104 |
105 | Download and extract the zip file from the link given above. Install PlotPub 106 | using any one of the three possible ways: (1) copy all the *.m files inside 107 | the lib folder to either your MATLAB path or (2) copy those files 108 | to your current project folder or (3) put plotPub-master in any convenient 109 | folder and add the following line in your MATLAB code: 110 | 111 | addpath('D:/MATLAB/PlotPub-master/lib'); 112 | 113 | where, I assume that you put PlotPub-master in D:/MATLAB folder. 114 | The sample codes can be found inside the examples folder. 115 | 116 |
Tutorial
117 |
118 | * [Tutorial for v1.4](https://github.com/masumhabib/PlotPub/wiki/Tutorial-for-v1.4) 119 | 120 | To create a beautiful figure using PlotPub, all you need to know is how to use 121 | the (Plot) class. Alternatively, you can use the 122 | set-plot-properties (setPlotProp) function which 123 | is discussed [here](https://github.com/masumhabib/PlotPub/wiki/Tutorial-for-v1.4). 124 | The Plot class provides a simple and elegant object oriented programming 125 | interface for manipulating MATLAB figures. 126 | 127 | 128 | Let us walk you through an example. Assume that we have data for 3 cycle of a 129 | 50 Hz AC voltage signal: 130 | ```matlab 131 | clear all; 132 | 133 | %% lets plot 3 cycles of 50Hz AC voltage 134 | f = 50; % frequency 135 | Vm = 10; % peak 136 | phi = 0; % phase 137 | 138 | % generate the signal 139 | t = [0:0.0001:3/f]; 140 | th = 2*pi*f*t; 141 | v = Vm*sin(th+phi); 142 | 143 | % plot it 144 | figure; 145 | plot(t*1E3, v); 146 | ``` 147 | where, f is the frequency, Vm is the peak voltage, 148 | t is time and v is the AC voltage signal. Result? 149 | An utterly ugly looking figure punching at your face: 150 | MQGv1.3: ugly 151 | 152 | 153 | Now, let us add some spices. Let us set the labels and title: 154 | 155 | ```matlab 156 | % change settings 157 | plt = Plot(); % create a Plot object and grab the current figure 158 | 159 | plt.XLabel = 'Time, t (ms)'; % xlabel 160 | plt.YLabel = 'Voltage, V (V)'; %ylabel 161 | plt.Title = 'Voltage as a function of time'; % plot title 162 | ``` 163 | 164 | Finally, call the export function to export the figure: 165 | ```matlab 166 | % Save? comment the following line if you do not want to save 167 | plt.export('plotSimple1.png'); 168 | ``` 169 | 170 | The resulting plot should look like: 171 | 172 | ![MQGv2.0: Simple plot](https://github.com/masumhabib/PlotPub/blob/v2.0/examples_class/plotSimple1.png) 173 | 174 | Instead of creating the plot using 175 | 176 | ```matlab 177 | % plot it 178 | figure; 179 | plot(t*1E3, v); 180 | ``` 181 | 182 | one could also use Plot class directly to plot: 183 | 184 | ```matlab 185 | plt = Plot(t*1E3, v); % create the figure directly using data 186 | 187 | plt.XLabel = 'Time, t (ms)'; % xlabel 188 | plt.YLabel = 'Voltage, V (V)'; %ylabel 189 | plt.Title = 'Voltage as a function of time'; % plot title 190 | ``` 191 | 192 | The full source code for this plot, plotSimple.m, can be found 193 | inside the examples_class folder. 194 | 195 | 196 | We can change color, linewidth, linestyle etc: 197 | 198 | ```matlab 199 | plt.Colors = {[0, 0, 0]}; % [red, green, blue] 200 | plt.LineWidth = 2; % line width 201 | plt.LineStyle = {'--'}; % line style: '-', ':', '--' etc 202 | ``` 203 | ![MQGv2.0: Line style](https://github.com/masumhabib/PlotPub/blob/v2.0/examples_class/plotLineStyle.png) 204 | 205 | See plotLineStyle.m for full source code. We can also change scale, 206 | axis limit, tick and grid: 207 | 208 | ```matlab 209 | plt.YScale = 'log'; % 'linear' or 'log' 210 | plt.YLim = [1E-3, 1E3]; % [min, max] 211 | plt.YTick = [1E-3, 1E-1, 1E1, 1E3]; %[tick1, tick2, .. ] 212 | plt.YGrid = 'on'; % 'on' or 'off' 213 | ``` 214 | ![MQGv2.0: Simple log scale](https://github.com/masumhabib/PlotPub/blob/v2.0/examples_class/plotSimpleLog2.png) 215 | or create a log-log plot: 216 | 217 | ```matlab 218 | plt.YScale = 'log'; % 'linear' or 'log' 219 | plt.XScale = 'log'; % 'linear' or 'log' 220 | plt.YLim = [1E-3, 1E3]; % [min, max] 221 | plt.YTick = [1E-3, 1E-1, 1E1, 1E3]; %[tick1, tick2, .. ] 222 | plt.YGrid = 'on'; % 'on' or 'off' 223 | plt.XGrid = 'on'; % 'on' or 'off' 224 | ``` 225 | 226 | ![MQGv2.0: Simple log log](https://github.com/masumhabib/PlotPub/blob/v2.0/examples_class/plotSimpleLogLog.png) 227 | 228 | See plotSimpleLog.m and plotSimpleLogLog.m for full 229 | source code. 230 | 231 | Creating multiple plots in a single set of axes is also easy: 232 | 233 | ```matlab 234 | % generate the signal 235 | t = [0:0.0001:3/f]; 236 | th = 2*pi*f*t; 237 | v1 = Vm*sin(th); 238 | v2 = Vm*sin(th - phi); 239 | v3 = Vm*sin(th - phi*2); 240 | 241 | % plot them 242 | plt = Plot(t*1E3, v1, t*1E3, v2, t*1E3, v3); 243 | 244 | % change settings 245 | plt.XLabel = 'Time, t (ms)'; % xlabel 246 | plt.YLabel = 'Voltage, V (V)'; % ylabel 247 | plt.YTick = [-10, 0, 10]; % [tick1, tick2, .. ] 248 | plt.YLim = [-11, 11]; % [min, max] 249 | 250 | % Save? comment the following line if you do not want to save 251 | plt.export('plotMultiple.tiff'); 252 | 253 | ``` 254 | 255 | Note how Plot class constructor is directly used for plotting multiple 256 | functions. Result: 257 | 258 | ![MQGv2.0: Multiple plots](https://github.com/masumhabib/PlotPub/blob/v2.0/examples_class/plotMultiple.png) 259 | 260 | The full source is given in plotMultiple.m. We can change the 261 | linestyle, color etc and add a legend: 262 | 263 | ```matlab 264 | plt.XLim = [0, 80]; % [min, max] 265 | plt.Colors = { % three colors for three data set 266 | [1, 0, 0] % data set 1 267 | [0.25, 0.25, 0.25] % data set 2 268 | [0, 0, 1] % data set 3 269 | }; 270 | plt.LineWidth = [2, 2, 2]; % three line widths 271 | plt.LineStyle = {'-', '-', '-'}; % three line styles 272 | plt.Markers = {'o', '', 's'}; 273 | plt.MarkerSpacing = [15, 15, 15]; 274 | plt.Legend = {'\theta = 0^o', '\theta = 45^o', '\theta = 90^o'}; % legends 275 | ``` 276 | 277 | ![MQGv2.0: Multiple plots markers](https://github.com/masumhabib/PlotPub/blob/v2.0/examples_class/plotMarkers.png) 278 | 279 | Here, plt.Colors{1}, plt.LineWidth(1) and 280 | plt.LineStyle{1} set properties of data set 1 and so on. 281 | The full source is given in plotMarkers.m. 282 | 283 | 284 | By default, PlotPub creates figures with 6in x 3in box size. You 285 | can easily change the figure size using the following code. 286 | 287 | ```matlab 288 | plt.BoxDim = [7, 3]; %[width, height] in inches 289 | ``` 290 | 291 | This code creates a figure with 7in x 5in box. 292 | 293 | ![MQGv2.0: Size](https://github.com/masumhabib/PlotPub/blob/v2.0/examples_class/plotSize.png) 294 | 295 | See plotSize.m for more details. 296 | 297 | 298 | You can also load a previously saved MATLAB fig file and export it using 299 | Plot class: 300 | 301 | ```matlab 302 | clear all; 303 | 304 | % load previously generated fig file 305 | plt = Plot('single.fig'); 306 | 307 | % change settings 308 | plt.XLabel = 'Time, t (ms)'; % xlabel 309 | plt.YLabel = 'Voltage, V (V)'; %ylabel 310 | plt.BoxDim = [6, 5]; %[width, height] 311 | 312 | % Save? comment the following line if you do not want to save 313 | plt.export('plotSize.png'); 314 | ``` 315 | 316 | 317 |
Reference
318 |
319 | * [Reference for v1.4](https://github.com/masumhabib/PlotPub/wiki/Reference-for-v1.4) 320 | 321 | 322 | 323 | Given bellow is a brief description of the Plot class and 324 | setPlotProp and plotPub functions and their 325 | parameters. This documents can also be viewed by invoking: 326 | 327 | ```matlab 328 | >> help Plot 329 | >> help setPlotProp 330 | ``` 331 | 332 | from inside the MATLAB command window. 333 | 334 |
Plot class
335 |
336 | 337 | This class represents a MATLAB figure. It can create new plots, open 338 | saved figure files and change properties of opened/existing figures. 339 | It can also export figures as publication quality image files. 340 | The resolution of the image can be changed by the user. Supported image 341 | formats are EPS, PDF, PNG, JPEG and TIFF. The figure properties can be 342 | changed by easy-to-remember class properties. 343 | 344 | Constructors: 345 | ```matlab 346 | Plot() 347 | % Grabs the current figure. 348 | Plot(handle) 349 | % Grabs the figure pointed by handle. 350 | Plot('filename.fig') 351 | % Opens the figure file ('filename.fig') and use the opened figure. 352 | Plot(handle, holdLine) 353 | % Grabs the figure pointed by handle. If holdLine = true, it does not 354 | % change the plot properties. 355 | Plot(Y) 356 | % Plots Y where Y must be a vector. 357 | Plot(X, Y) 358 | % Plots Y vs X. Both X and Y must be vectors. 359 | Plot(X1, Y1, X2, Y2, ...) 360 | % Plots Y's vs X's. X's and Y's must be vectors. 361 | ``` 362 | The constructors return plot objects which can be used for subsequent property 363 | changes. 364 | 365 | 366 | Properties: 367 | ```matlab 368 | BoxDim % vector [width, height]: size of the axes box in inches; 369 | % default: [6, 2.5] 370 | ShowBox % 'on' = show or 'off' = hide bounding box 371 | FontName % string: font name; default: 'Helvetica' 372 | FontSize % integer; default: 26 373 | LineWidth % vector [width1, width2, ..]: element i changes the 374 | % property of i-th dataset; default: 2 375 | LineStyle % cell array {'style1', 'style2', ..}: element i changes 376 | % the property of i-th dataset; default: '-' 377 | LineCount % Number of plots (readonly) 378 | Markers % cell array {'marker1', 'marker2', ..}: element i changes 379 | % the property of i-th dataset; default: 'None' 380 | MarkerSpacing % vector [space1, space2, ..]: element i changes the 381 | % property of i-th dataset; default: 0 382 | Colors % 3xN matrix, [red, green, blue] where N is the number of 383 | % datasets. 384 | AxisColor % axis color, [red, green, blue]; default black. 385 | AxisLineWidth % axis line width, number; default 2. 386 | XLabel % X axis label 387 | YLabel % Y axis label 388 | ZLabel % Z axis label 389 | XTick % [tick1, tick2, ..]: major ticks for X axis. 390 | YTick % [tick1, tick2, ..]: major ticks for Y axis. 391 | ZTick % [tick1, tick2, ..]: major ticks for Z axis. 392 | XMinorTick % 'on' or 'off': show X minor tick? 393 | YMinorTick % 'on' or 'off': show Y minor tick? 394 | ZMinorTick % 'on' or 'off': show Z minor tick? 395 | TickDir % tick direction: 'in' or 'out'; default: 'in' 396 | TickLength % tick length; default: [0.02, 0.02] 397 | XLim % [min, max]: X axis limit. 398 | YLim % [min, max]: Y axis limit. 399 | ZLim % [min, max]: Z axis limit. 400 | XScale % 'linear' or 'log': X axis scale. 401 | YScale % 'linear' or 'log': Y axis scale. 402 | ZScale % 'linear' or 'log': Z axis scale. 403 | XGrid % 'on' or 'off': show grid in X axis? 404 | YGrid % 'on' or 'off': show grid in Y axis? 405 | ZGrid % 'on' or 'off': show grid in Z axis? 406 | XDir % 'in' or 'out': X axis tick direction 407 | YDir % 'in' or 'out': Y axis tick direction 408 | ZDir % 'in' or 'out': Z axis tick direction 409 | Legend % {'legend1','legend2',...} 410 | LegendBox % bounding box of legend: 'on'/'off'; default: 'off' 411 | LegendBoxColor % color of the bounding box of legend; default: 'none' 412 | LegendTextColor % color of the legend text; default: [0,0,0] 413 | LegendLoc % 'NorthEast', ..., 'SouthWest': legend location 414 | Title % plot title, string 415 | Resolution % Resolution (dpi) for bitmapped file. Default:600. 416 | HoldLines % true/false. true == only modify axes settings, do not 417 | % touch plot lines/surfaces. Default false. 418 | ``` 419 | 420 |
function h = setPlotProp(opt, hfig)
421 |
422 | 423 | This function changes the properties of the figure represented by 'hfig' and 424 | exports it as a publication quality image file. The resolution of the image can 425 | be chosen by the user. Supported image formats are EPS, PDF, PNG, JPEG and TIFF. 426 | The figure properties are specified by the options structure 'opt'. 427 | 428 | Parameters: 429 | 430 | ```matlab 431 | opt % options structure: 432 | BoxDim % vector [width, height]: size of the axes box in inches; default: [6, 2.5] 433 | ShowBox % 'on' = show or 'off' = hide bounding box; default: 'on' 434 | FontName % string: font name; default: 'Arial' 435 | FontSize % integer; default: 26 436 | LineWidth % vector [width1, width2, ..]: element i changes the property of i-th dataset; default: 2 437 | LineStyle % cell array {'style1', 'style2', ..}: element i changes the property of i-th dataset; default: '-' 438 | Markers % cell array {'marker1', 'marker2', ..}: element i changes the property of i-th dataset; default: 'None' 439 | MarkerSpacing % vector [space1, space2, ..]: element i changes the property of i-th dataset; default: 0 440 | Colors % 3xN matrix, [red, green, blue] where N is the number of datasets. 441 | AxisColor % [red, green, blue]; color of the axis lines; default: black 442 | AxisLineWidth % Witdth of the axis lines; default: 2 443 | XLabel % X axis label 444 | YLabel % Y axis label 445 | ZLabel % Z axis label 446 | XTick % [tick1, tick2, ..]: major ticks for X axis. 447 | YTick % [tick1, tick2, ..]: major ticks for Y axis. 448 | ZTick % [tick1, tick2, ..]: major ticks for Z axis. 449 | XMinorTick % 'on' or 'off': show X minor tick? 450 | YMinorTick % 'on' or 'off': show Y minor tick? 451 | ZMinorTick % 'on' or 'off': show Z minor tick? 452 | TickDir % tick direction: 'in' or 'out'; default: 'in' 453 | TickLength % tick length; default: [0.02, 0.02] 454 | XLim % [min, max]: X axis limit. 455 | YLim % [min, max]: Y axis limit. 456 | ZLim % [min, max]: Z axis limit. 457 | XScale % 'linear' or 'log': X axis scale. 458 | YScale % 'linear' or 'log': Y axis scale. 459 | ZScale % 'linear' or 'log': Z axis scale. 460 | XGrid % 'on' or 'off': show grid in X axis? 461 | YGrid % 'on' or 'off': show grid in Y axis? 462 | ZGrid % 'on' or 'off': show grid in Z axis? 463 | XDir % 'in' or 'out': X axis tick direction 464 | YDir % 'in' or 'out': Y axis tick direction 465 | ZDir % 'in' or 'out': Z axis tick direction 466 | Legend % {'legend1','legend2',...} 467 | LegendBox % bounding box of legend: 'on'/'off'; default: 'off' 468 | LegendBoxColor % color of the bounding box of legend; default: 'none' 469 | LegendTextColor % color of the legend text; default: [0,0,0] 470 | LegendLoc % 'NorthEast', ..., 'SouthWest': legend location 471 | Resolution % Resolution (dpi) for bitmapped file. Default:600. 472 | HoldLines % true/false. true == only modify axes settings, do not touch plot lines/surfaces. Default false. 473 | FileName % Save? Give a file name. 474 | 475 | hfig % Figure handle (optional). Default: current figure. 476 | ``` 477 | 478 | Return value: figure handle. 479 | 480 |
function h = plotPub(X, Y, N, opt)
481 |
482 | 483 | This function plots X{i} vs Y{i}, changes the 484 | properties of the generated figure and exports it as a publication quality 485 | image file. The resolution of the image can be chosen by the user. Supported 486 | image formats are EPS, PDF, PNG, JPEG and TIFF. The figure properties are 487 | specified by the options structure 'opt'. 488 | 489 | Parameters: 490 | 491 | ```matlab 492 | X %cell array of x coordinates 493 | Y %cell array of y coordinates 494 | N %number of plots to be created. N <= length(X) 495 | opt %options structure. Same as above. 496 | ``` 497 | 498 |
Project Page
499 |
500 | Please see the project page. 501 | 502 | 503 | -------------------------------------------------------------------------------- /examples/multiple.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/multiple.fig -------------------------------------------------------------------------------- /examples/plotAxisLimit.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/plotAxisLimit.jpg -------------------------------------------------------------------------------- /examples/plotAxislim.m: -------------------------------------------------------------------------------- 1 | % Set axes limit. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | %% lets plot 3 cycles of 50Hz AC voltage 7 | f = 50; 8 | Vm = 10; 9 | phi = 0; 10 | 11 | % generate the signal 12 | t = [0:0.0001:3/f]; 13 | th = 2*pi*f*t; 14 | v = Vm*sin(th+phi); 15 | 16 | figure; 17 | plot(t*1E3, v); 18 | 19 | %% plot now 20 | opt.XLabel = 'Time, t (ms)'; % xlabel 21 | opt.YLabel = 'Voltage, V (V)'; %ylabel 22 | opt.XLim = [0, 40]; % set x axis limit 23 | opt.YLim = [-11, 11]; % set y axis limit 24 | 25 | % Save? comment the following line if you do not want to save 26 | opt.FileName = 'plotAxisLimit.jpg'; 27 | 28 | % create the plot 29 | setPlotProp(opt); 30 | -------------------------------------------------------------------------------- /examples/plotDirectSimple.m: -------------------------------------------------------------------------------- 1 | % Directly plots a simple figure using plotPub function. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | %% lets plot 3 cycles of 50Hz AC voltage 7 | f = 50; 8 | Vm = 10; 9 | phi = 0; 10 | 11 | % generate the signal 12 | t = [0:0.0001:3/f]; 13 | th = 2*pi*f*t; 14 | v = Vm*sin(th+phi); 15 | 16 | 17 | %% plot now 18 | plotx{1} = t*1E3; %convert time in ms and create a cell array 19 | ploty{1} = v; % assign v to a cell array 20 | opt.XLabel = 'Time, t (ms)'; % xlabel 21 | opt.YLabel = 'Voltage, V (V)'; %ylabel 22 | 23 | % Save? comment the following line if you do not want to save 24 | opt.FileName = 'plotDirectSimple1.eps'; 25 | 26 | % create the plot 27 | plotPub(plotx, ploty, 1, opt); 28 | -------------------------------------------------------------------------------- /examples/plotDirectSimple1.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-3.0 EPSF-3.0 2 | %%Creator: MATLAB, The Mathworks, Inc. Version 7.10.0.499 (R2010a). Operating System: Darwin 13.4.0 Darwin Kernel Version 13.4.0: Sun Aug 17 19:50:11 PDT 2014; root:xnu-2422.115.4~1/RELEASE_X86_64 x86_64. 3 | %%Title: ./plotDirectSimple1.eps 4 | %%CreationDate: 09/23/2014 19:05:38 5 | %%DocumentNeededFonts: Helvetica 6 | %%DocumentProcessColors: Cyan Magenta Yellow Black 7 | %%LanguageLevel: 2 8 | %%Pages: 1 9 | %%BoundingBox: 35 246 549 535 10 | %%EndComments 11 | 12 | %%BeginProlog 13 | % MathWorks dictionary 14 | /MathWorks 160 dict begin 15 | % definition operators 16 | /bdef {bind def} bind def 17 | /ldef {load def} bind def 18 | /xdef {exch def} bdef 19 | /xstore {exch store} bdef 20 | % operator abbreviations 21 | /c /clip ldef 22 | /cc /concat ldef 23 | /cp /closepath ldef 24 | /gr /grestore ldef 25 | /gs /gsave ldef 26 | /mt /moveto ldef 27 | /np /newpath ldef 28 | /cm /currentmatrix ldef 29 | /sm /setmatrix ldef 30 | /rm /rmoveto ldef 31 | /rl /rlineto ldef 32 | /s {show newpath} bdef 33 | /sc {setcmykcolor} bdef 34 | /sr /setrgbcolor ldef 35 | /sg /setgray ldef 36 | /w /setlinewidth ldef 37 | /j /setlinejoin ldef 38 | /cap /setlinecap ldef 39 | /rc {rectclip} bdef 40 | /rf {rectfill} bdef 41 | % page state control 42 | /pgsv () def 43 | /bpage {/pgsv save def} bdef 44 | /epage {pgsv restore} bdef 45 | /bplot /gsave ldef 46 | /eplot {stroke grestore} bdef 47 | % orientation switch 48 | /portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def 49 | % coordinate system mappings 50 | /dpi2point 0 def 51 | % font control 52 | /FontSize 0 def 53 | /FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0] 54 | makefont setfont} bdef 55 | /reencode {exch dup where {pop load} {pop StandardEncoding} ifelse 56 | exch dup 3 1 roll findfont dup length dict begin 57 | { 1 index /FID ne {def}{pop pop} ifelse } forall 58 | /Encoding exch def currentdict end definefont pop} bdef 59 | /isroman {findfont /CharStrings get /Agrave known} bdef 60 | /FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse 61 | exch FMS} bdef 62 | /csm {1 dpi2point div -1 dpi2point div scale neg translate 63 | dup landscapeMode eq {pop -90 rotate} 64 | {rotateMode eq {90 rotate} if} ifelse} bdef 65 | % line types: solid, dotted, dashed, dotdash 66 | /SO { [] 0 setdash } bdef 67 | /DO { [3 dpi2point mul 3 dpi2point mul] 0 setdash } bdef 68 | /DA { [6 dpi2point mul] 0 setdash } bdef 69 | /DD { [2 dpi2point mul 2 dpi2point mul 6 dpi2point mul 2 dpi2point mul] 0 setdash } bdef 70 | % macros for lines and objects 71 | /L {lineto stroke} bdef 72 | /MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef 73 | /AP {{rlineto} repeat} bdef 74 | /PDlw -1 def 75 | /W {/PDlw currentlinewidth def setlinewidth} def 76 | /PP {closepath eofill} bdef 77 | /DP {closepath stroke} bdef 78 | /MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto 79 | neg 0 exch rlineto closepath} bdef 80 | /FR {MR stroke} bdef 81 | /PR {MR fill} bdef 82 | /L1i {{currentfile picstr readhexstring pop} image} bdef 83 | /tMatrix matrix def 84 | /MakeOval {newpath tMatrix currentmatrix pop translate scale 85 | 0 0 1 0 360 arc tMatrix setmatrix} bdef 86 | /FO {MakeOval stroke} bdef 87 | /PO {MakeOval fill} bdef 88 | /PD {currentlinewidth 2 div 0 360 arc fill 89 | PDlw -1 eq not {PDlw w /PDlw -1 def} if} def 90 | /FA {newpath tMatrix currentmatrix pop translate scale 91 | 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef 92 | /PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 93 | 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef 94 | /FAn {newpath tMatrix currentmatrix pop translate scale 95 | 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef 96 | /PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 97 | 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef 98 | /vradius 0 def /hradius 0 def /lry 0 def 99 | /lrx 0 def /uly 0 def /ulx 0 def /rad 0 def 100 | /MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef 101 | /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly 102 | vradius add translate hradius vradius scale 0 0 1 180 270 arc 103 | tMatrix setmatrix lrx hradius sub uly vradius add translate 104 | hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix 105 | lrx hradius sub lry vradius sub translate hradius vradius scale 106 | 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub 107 | translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix 108 | closepath} bdef 109 | /FRR {MRR stroke } bdef 110 | /PRR {MRR fill } bdef 111 | /MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def 112 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 113 | rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad 114 | sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix 115 | closepath} bdef 116 | /FlrRR {MlrRR stroke } bdef 117 | /PlrRR {MlrRR fill } bdef 118 | /MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def 119 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 120 | rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad 121 | sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix 122 | closepath} bdef 123 | /FtbRR {MtbRR stroke } bdef 124 | /PtbRR {MtbRR fill } bdef 125 | /stri 6 array def /dtri 6 array def 126 | /smat 6 array def /dmat 6 array def 127 | /tmat1 6 array def /tmat2 6 array def /dif 3 array def 128 | /asub {/ind2 exch def /ind1 exch def dup dup 129 | ind1 get exch ind2 get sub exch } bdef 130 | /tri_to_matrix { 131 | 2 0 asub 3 1 asub 4 0 asub 5 1 asub 132 | dup 0 get exch 1 get 7 -1 roll astore } bdef 133 | /compute_transform { 134 | dmat dtri tri_to_matrix tmat1 invertmatrix 135 | smat stri tri_to_matrix tmat2 concatmatrix } bdef 136 | /ds {stri astore pop} bdef 137 | /dt {dtri astore pop} bdef 138 | /db {2 copy /cols xdef /rows xdef mul dup 3 mul string 139 | currentfile 140 | 3 index 0 eq {/ASCIIHexDecode filter} 141 | {/ASCII85Decode filter 3 index 2 eq {/RunLengthDecode filter} if } 142 | ifelse exch readstring pop 143 | dup 0 3 index getinterval /rbmap xdef 144 | dup 2 index dup getinterval /gbmap xdef 145 | 1 index dup 2 mul exch getinterval /bbmap xdef pop pop}bdef 146 | /it {gs np dtri aload pop moveto lineto lineto cp c 147 | cols rows 8 compute_transform 148 | rbmap gbmap bbmap true 3 colorimage gr}bdef 149 | /il {newpath moveto lineto stroke}bdef 150 | currentdict end def 151 | %%EndProlog 152 | 153 | %%BeginSetup 154 | MathWorks begin 155 | 156 | 0 cap 157 | 158 | end 159 | %%EndSetup 160 | 161 | %%Page: 1 1 162 | %%BeginPageSetup 163 | %%PageBoundingBox: 35 246 549 535 164 | MathWorks begin 165 | bpage 166 | %%EndPageSetup 167 | 168 | %%BeginObject: obj1 169 | bplot 170 | 171 | /dpi2point 12 def 172 | portraitMode 0420 6552 csm 173 | 174 | 0 123 6174 3477 rc 175 | 86 dict begin %Colortable dictionary 176 | /c0 { 0.000000 0.000000 0.000000 sr} bdef 177 | /c1 { 1.000000 1.000000 1.000000 sr} bdef 178 | /c2 { 0.900000 0.000000 0.000000 sr} bdef 179 | /c3 { 0.000000 0.820000 0.000000 sr} bdef 180 | /c4 { 0.000000 0.000000 0.800000 sr} bdef 181 | /c5 { 0.910000 0.820000 0.320000 sr} bdef 182 | /c6 { 1.000000 0.260000 0.820000 sr} bdef 183 | /c7 { 0.000000 0.820000 0.820000 sr} bdef 184 | c0 185 | 1 j 186 | 1 sg 187 | 0 0 6500 3601 rf 188 | 18 w 189 | 12 w 190 | DO 191 | SO 192 | 18 w 193 | 0 sg 194 | 777 3056 mt 5990 3056 L 195 | 777 306 mt 5990 306 L 196 | 777 3056 mt 777 306 L 197 | 5990 3056 mt 5990 306 L 198 | 777 3056 mt 5990 3056 L 199 | 777 3056 mt 777 306 L 200 | 777 3056 mt 777 2951 L 201 | 777 307 mt 777 411 L 202 | %%IncludeResource: font Helvetica 203 | /Helvetica /ISOLatin1Encoding 240 FMSR 204 | 205 | 711 3313 mt 206 | (0) s 207 | 950 3056 mt 950 3003 L 208 | 950 307 mt 950 359 L 209 | 1124 3056 mt 1124 3003 L 210 | 1124 307 mt 1124 359 L 211 | 1298 3056 mt 1298 3003 L 212 | 1298 307 mt 1298 359 L 213 | 1472 3056 mt 1472 3003 L 214 | 1472 307 mt 1472 359 L 215 | 1645 3056 mt 1645 3003 L 216 | 1645 307 mt 1645 359 L 217 | 1645 3056 mt 1645 3003 L 218 | 1645 307 mt 1645 359 L 219 | 1645 3056 mt 1645 3003 L 220 | 1645 307 mt 1645 359 L 221 | 1645 3056 mt 1645 3003 L 222 | 1645 307 mt 1645 359 L 223 | 1645 3056 mt 1645 3003 L 224 | 1645 307 mt 1645 359 L 225 | 1645 3056 mt 1645 2951 L 226 | 1645 307 mt 1645 411 L 227 | 1512 3313 mt 228 | (10) s 229 | 1819 3056 mt 1819 3003 L 230 | 1819 307 mt 1819 359 L 231 | 1993 3056 mt 1993 3003 L 232 | 1993 307 mt 1993 359 L 233 | 2167 3056 mt 2167 3003 L 234 | 2167 307 mt 2167 359 L 235 | 2340 3056 mt 2340 3003 L 236 | 2340 307 mt 2340 359 L 237 | 2514 3056 mt 2514 3003 L 238 | 2514 307 mt 2514 359 L 239 | 2514 3056 mt 2514 3003 L 240 | 2514 307 mt 2514 359 L 241 | 2514 3056 mt 2514 3003 L 242 | 2514 307 mt 2514 359 L 243 | 2514 3056 mt 2514 3003 L 244 | 2514 307 mt 2514 359 L 245 | 2514 3056 mt 2514 3003 L 246 | 2514 307 mt 2514 359 L 247 | 2514 3056 mt 2514 2951 L 248 | 2514 307 mt 2514 411 L 249 | 2381 3313 mt 250 | (20) s 251 | 2688 3056 mt 2688 3003 L 252 | 2688 307 mt 2688 359 L 253 | 2862 3056 mt 2862 3003 L 254 | 2862 307 mt 2862 359 L 255 | 3035 3056 mt 3035 3003 L 256 | 3035 307 mt 3035 359 L 257 | 3209 3056 mt 3209 3003 L 258 | 3209 307 mt 3209 359 L 259 | 3383 3056 mt 3383 3003 L 260 | 3383 307 mt 3383 359 L 261 | 3383 3056 mt 3383 3003 L 262 | 3383 307 mt 3383 359 L 263 | 3383 3056 mt 3383 3003 L 264 | 3383 307 mt 3383 359 L 265 | 3383 3056 mt 3383 3003 L 266 | 3383 307 mt 3383 359 L 267 | 3383 3056 mt 3383 3003 L 268 | 3383 307 mt 3383 359 L 269 | 3383 3056 mt 3383 2951 L 270 | 3383 307 mt 3383 411 L 271 | 3250 3313 mt 272 | (30) s 273 | 3557 3056 mt 3557 3003 L 274 | 3557 307 mt 3557 359 L 275 | 3731 3056 mt 3731 3003 L 276 | 3731 307 mt 3731 359 L 277 | 3904 3056 mt 3904 3003 L 278 | 3904 307 mt 3904 359 L 279 | 4078 3056 mt 4078 3003 L 280 | 4078 307 mt 4078 359 L 281 | 4252 3056 mt 4252 3003 L 282 | 4252 307 mt 4252 359 L 283 | 4252 3056 mt 4252 3003 L 284 | 4252 307 mt 4252 359 L 285 | 4252 3056 mt 4252 3003 L 286 | 4252 307 mt 4252 359 L 287 | 4252 3056 mt 4252 3003 L 288 | 4252 307 mt 4252 359 L 289 | 4252 3056 mt 4252 3003 L 290 | 4252 307 mt 4252 359 L 291 | 4252 3056 mt 4252 2951 L 292 | 4252 307 mt 4252 411 L 293 | 4119 3313 mt 294 | (40) s 295 | 4426 3056 mt 4426 3003 L 296 | 4426 307 mt 4426 359 L 297 | 4599 3056 mt 4599 3003 L 298 | 4599 307 mt 4599 359 L 299 | 4773 3056 mt 4773 3003 L 300 | 4773 307 mt 4773 359 L 301 | 4947 3056 mt 4947 3003 L 302 | 4947 307 mt 4947 359 L 303 | 5121 3056 mt 5121 3003 L 304 | 5121 307 mt 5121 359 L 305 | 5121 3056 mt 5121 3003 L 306 | 5121 307 mt 5121 359 L 307 | 5121 3056 mt 5121 3003 L 308 | 5121 307 mt 5121 359 L 309 | 5121 3056 mt 5121 3003 L 310 | 5121 307 mt 5121 359 L 311 | 5121 3056 mt 5121 3003 L 312 | 5121 307 mt 5121 359 L 313 | 5121 3056 mt 5121 2951 L 314 | 5121 307 mt 5121 411 L 315 | 4988 3313 mt 316 | (50) s 317 | 5294 3056 mt 5294 3003 L 318 | 5294 307 mt 5294 359 L 319 | 5468 3056 mt 5468 3003 L 320 | 5468 307 mt 5468 359 L 321 | 5642 3056 mt 5642 3003 L 322 | 5642 307 mt 5642 359 L 323 | 5816 3056 mt 5816 3003 L 324 | 5816 307 mt 5816 359 L 325 | 5990 3056 mt 5990 3003 L 326 | 5990 307 mt 5990 359 L 327 | 5990 3056 mt 5990 3003 L 328 | 5990 307 mt 5990 359 L 329 | 5990 3056 mt 5990 3003 L 330 | 5990 307 mt 5990 359 L 331 | 5990 3056 mt 5990 3003 L 332 | 5990 307 mt 5990 359 L 333 | 5990 3056 mt 5990 3003 L 334 | 5990 307 mt 5990 359 L 335 | 5990 3056 mt 5990 2951 L 336 | 5990 307 mt 5990 411 L 337 | 5857 3313 mt 338 | (60) s 339 | 777 3056 mt 881 3056 L 340 | 5990 3056 mt 5885 3056 L 341 | 335 3145 mt 342 | (-10) s 343 | 777 2918 mt 829 2918 L 344 | 5990 2918 mt 5937 2918 L 345 | 777 2781 mt 829 2781 L 346 | 5990 2781 mt 5937 2781 L 347 | 777 2643 mt 829 2643 L 348 | 5990 2643 mt 5937 2643 L 349 | 777 2506 mt 829 2506 L 350 | 5990 2506 mt 5937 2506 L 351 | 777 2368 mt 829 2368 L 352 | 5990 2368 mt 5937 2368 L 353 | 777 2368 mt 829 2368 L 354 | 5990 2368 mt 5937 2368 L 355 | 777 2368 mt 829 2368 L 356 | 5990 2368 mt 5937 2368 L 357 | 777 2368 mt 829 2368 L 358 | 5990 2368 mt 5937 2368 L 359 | 777 2368 mt 829 2368 L 360 | 5990 2368 mt 5937 2368 L 361 | 777 2368 mt 881 2368 L 362 | 5990 2368 mt 5885 2368 L 363 | 469 2457 mt 364 | (-5) s 365 | 777 2231 mt 829 2231 L 366 | 5990 2231 mt 5937 2231 L 367 | 777 2093 mt 829 2093 L 368 | 5990 2093 mt 5937 2093 L 369 | 777 1956 mt 829 1956 L 370 | 5990 1956 mt 5937 1956 L 371 | 777 1818 mt 829 1818 L 372 | 5990 1818 mt 5937 1818 L 373 | 777 1681 mt 829 1681 L 374 | 5990 1681 mt 5937 1681 L 375 | 777 1681 mt 829 1681 L 376 | 5990 1681 mt 5937 1681 L 377 | 777 1681 mt 829 1681 L 378 | 5990 1681 mt 5937 1681 L 379 | 777 1681 mt 829 1681 L 380 | 5990 1681 mt 5937 1681 L 381 | 777 1681 mt 829 1681 L 382 | 5990 1681 mt 5937 1681 L 383 | 777 1681 mt 881 1681 L 384 | 5990 1681 mt 5885 1681 L 385 | 609 1770 mt 386 | (0) s 387 | 777 1544 mt 829 1544 L 388 | 5990 1544 mt 5937 1544 L 389 | 777 1406 mt 829 1406 L 390 | 5990 1406 mt 5937 1406 L 391 | 777 1269 mt 829 1269 L 392 | 5990 1269 mt 5937 1269 L 393 | 777 1131 mt 829 1131 L 394 | 5990 1131 mt 5937 1131 L 395 | 777 994 mt 829 994 L 396 | 5990 994 mt 5937 994 L 397 | 777 994 mt 829 994 L 398 | 5990 994 mt 5937 994 L 399 | 777 994 mt 829 994 L 400 | 5990 994 mt 5937 994 L 401 | 777 994 mt 829 994 L 402 | 5990 994 mt 5937 994 L 403 | 777 994 mt 829 994 L 404 | 5990 994 mt 5937 994 L 405 | 777 994 mt 881 994 L 406 | 5990 994 mt 5885 994 L 407 | 609 1083 mt 408 | (5) s 409 | 777 856 mt 829 856 L 410 | 5990 856 mt 5937 856 L 411 | 777 719 mt 829 719 L 412 | 5990 719 mt 5937 719 L 413 | 777 581 mt 829 581 L 414 | 5990 581 mt 5937 581 L 415 | 777 444 mt 829 444 L 416 | 5990 444 mt 5937 444 L 417 | 777 307 mt 829 307 L 418 | 5990 307 mt 5937 307 L 419 | 777 307 mt 829 307 L 420 | 5990 307 mt 5937 307 L 421 | 777 307 mt 829 307 L 422 | 5990 307 mt 5937 307 L 423 | 777 307 mt 829 307 L 424 | 5990 307 mt 5937 307 L 425 | 777 307 mt 829 307 L 426 | 5990 307 mt 5937 307 L 427 | 777 307 mt 881 307 L 428 | 5990 307 mt 5885 307 L 429 | 476 396 mt 430 | (10) s 431 | 777 3056 mt 5990 3056 L 432 | 777 306 mt 5990 306 L 433 | 777 3056 mt 777 306 L 434 | 5990 3056 mt 5990 306 L 435 | gs 777 307 5214 2750 rc 436 | 30 w 437 | /c8 { 0.160000 0.440000 1.000000 sr} bdef 438 | c8 439 | 9 0 8 -2 9 -4 9 -4 9 -6 8 -8 9 -9 9 -10 440 | 8 -11 9 -13 9 -14 8 -15 9 -17 9 -17 8 -19 9 -21 441 | 9 -21 8 -22 9 -24 9 -25 9 -26 8 -27 9 -28 9 -29 442 | 8 -30 9 -31 9 -32 8 -33 9 -34 9 -34 8 -35 9 -37 443 | 9 -36 8 -38 9 -38 9 -39 9 -39 8 -40 9 -40 9 -41 444 | 8 -42 9 -41 9 -42 8 -42 9 -43 9 -43 8 -43 9 -43 445 | 9 -43 8 -43 777 1681 51 MP stroke 446 | 9 0 9 -2 8 -4 9 -4 9 -6 9 -8 8 -9 9 -10 447 | 9 -11 8 -13 9 -14 9 -15 8 -17 9 -17 9 -19 8 -21 448 | 9 -21 9 -22 8 -24 9 -25 9 -26 9 -27 8 -28 9 -29 449 | 9 -30 8 -31 9 -32 9 -33 8 -34 9 -34 9 -35 8 -37 450 | 9 -36 9 -38 9 -38 8 -39 9 -39 9 -40 8 -40 9 -41 451 | 9 -42 8 -41 9 -42 9 -42 8 -43 9 -43 9 -43 8 -43 452 | 9 -43 9 -43 9 -43 8 -43 9 -43 9 -43 8 -43 9 -43 453 | 9 -42 8 -42 9 -41 9 -42 8 -41 9 -40 9 -40 8 -39 454 | 9 -39 9 -38 9 -38 8 -36 9 -37 9 -35 8 -34 9 -34 455 | 9 -33 8 -32 9 -31 9 -30 8 -29 9 -28 9 -27 8 -26 456 | 9 -25 9 -24 9 -22 8 -21 9 -21 9 -19 8 -17 9 -17 457 | 9 -15 8 -14 9 -13 9 -11 8 -10 9 -9 9 -8 8 -6 458 | 9 -4 9 -4 9 -2 8 -1 9 1 9 2 8 4 9 4 459 | 9 6 8 8 9 9 9 10 8 11 9 13 9 14 9 15 460 | 8 17 9 17 9 19 8 21 9 21 9 22 8 24 9 25 461 | 9 26 8 27 9 28 9 29 8 30 9 31 9 32 9 33 462 | 8 34 9 34 9 35 8 37 9 36 9 38 8 38 9 39 463 | 9 39 8 40 9 40 9 41 8 42 9 41 9 42 9 42 464 | 8 43 9 43 9 43 8 43 9 43 9 43 8 43 9 43 465 | 9 43 8 43 9 43 9 43 8 42 9 42 9 41 9 42 466 | 8 41 9 40 9 40 8 39 9 39 9 38 8 38 9 36 467 | 9 37 8 35 9 34 9 34 8 33 9 32 9 31 9 30 468 | 8 29 9 28 9 27 8 26 9 25 9 24 8 22 9 21 469 | 9 21 8 19 9 17 9 17 9 15 8 14 9 13 9 11 470 | 8 10 9 9 9 8 8 6 9 4 9 4 8 2 9 0 471 | 1211 307 201 MP stroke 472 | 8 0 9 -2 9 -4 9 -4 8 -6 9 -8 9 -9 8 -10 473 | 9 -11 9 -13 8 -14 9 -15 9 -17 8 -17 9 -19 9 -21 474 | 8 -21 9 -22 9 -24 9 -25 8 -26 9 -27 9 -28 8 -29 475 | 9 -30 9 -31 8 -32 9 -33 9 -34 8 -34 9 -35 9 -37 476 | 8 -36 9 -38 9 -38 9 -39 8 -39 9 -40 9 -40 8 -41 477 | 9 -42 9 -41 8 -42 9 -42 9 -43 8 -43 9 -43 9 -43 478 | 8 -43 9 -43 9 -43 9 -43 8 -43 9 -43 9 -43 8 -43 479 | 9 -42 9 -42 8 -41 9 -42 9 -41 8 -40 9 -40 9 -39 480 | 8 -39 9 -38 9 -38 9 -36 8 -37 9 -35 9 -34 8 -34 481 | 9 -33 9 -32 8 -31 9 -30 9 -29 8 -28 9 -27 9 -26 482 | 9 -25 8 -24 9 -22 9 -21 8 -21 9 -19 9 -17 8 -17 483 | 9 -15 9 -14 8 -13 9 -11 9 -10 8 -9 9 -8 9 -6 484 | 9 -4 8 -4 9 -2 9 -1 8 1 9 2 9 4 8 4 485 | 9 6 9 8 8 9 9 10 9 11 8 13 9 14 9 15 486 | 9 17 8 17 9 19 9 21 8 21 9 22 9 24 8 25 487 | 9 26 9 27 8 28 9 29 9 30 8 31 9 32 9 33 488 | 9 34 8 34 9 35 9 37 8 36 9 38 9 38 8 39 489 | 9 39 9 40 8 40 9 41 9 42 8 41 9 42 9 42 490 | 9 43 8 43 9 43 9 43 8 43 9 43 9 43 8 43 491 | 9 43 9 43 8 43 9 43 9 42 9 42 8 41 9 42 492 | 9 41 8 40 9 40 9 39 8 39 9 38 9 38 8 36 493 | 9 37 9 35 8 34 9 34 9 33 9 32 8 31 9 30 494 | 9 29 8 28 9 27 9 26 8 25 9 24 9 22 8 21 495 | 9 21 9 19 8 17 9 17 9 15 9 14 8 13 9 11 496 | 9 10 8 9 9 8 9 6 8 4 9 4 9 2 8 0 497 | 2949 307 201 MP stroke 498 | 9 -43 9 -43 9 -43 8 -43 9 -43 9 -43 8 -42 9 -42 499 | 9 -41 8 -42 9 -41 9 -40 8 -40 9 -39 9 -39 9 -38 500 | 8 -38 9 -36 9 -37 8 -35 9 -34 9 -34 8 -33 9 -32 501 | 9 -31 8 -30 9 -29 9 -28 8 -27 9 -26 9 -25 9 -24 502 | 8 -22 9 -21 9 -21 8 -19 9 -17 9 -17 8 -15 9 -14 503 | 9 -13 8 -11 9 -10 9 -9 8 -8 9 -6 9 -4 9 -4 504 | 8 -2 9 -1 9 1 8 2 9 4 9 4 8 6 9 8 505 | 9 9 8 10 9 11 9 13 8 14 9 15 9 17 9 17 506 | 8 19 9 21 9 21 8 22 9 24 9 25 8 26 9 27 507 | 9 28 8 29 9 30 9 31 9 32 8 33 9 34 9 34 508 | 8 35 9 37 9 36 8 38 9 38 9 39 8 39 9 40 509 | 9 40 8 41 9 42 9 41 9 42 8 42 9 43 9 43 510 | 8 43 9 43 9 43 8 43 9 43 9 43 8 43 9 43 511 | 9 43 8 43 9 42 9 42 9 41 8 42 9 41 9 40 512 | 8 40 9 39 9 39 8 38 9 38 9 36 8 37 9 35 513 | 9 34 8 34 9 33 9 32 9 31 8 30 9 29 9 28 514 | 8 27 9 26 9 25 8 24 9 22 9 21 8 21 9 19 515 | 9 17 8 17 9 15 9 14 9 13 8 11 9 10 9 9 516 | 8 8 9 6 9 4 8 4 9 2 9 0 4686 307 151 MP stroke 517 | gr 518 | 519 | 30 w 520 | c8 521 | 0 sg 522 | 2744 3544 mt 523 | (Time, t \(ms\)) s 524 | 226 2412 mt -90 rotate 525 | (Voltage, V \(V\)) s 526 | 90 rotate 527 | 18 w 528 | 529 | end %%Color Dict 530 | 531 | eplot 532 | %%EndObject 533 | 534 | epage 535 | end 536 | 537 | showpage 538 | 539 | %%Trailer 540 | %%EOF 541 | -------------------------------------------------------------------------------- /examples/plotLineStyle.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-3.0 EPSF-3.0 2 | %%Creator: MATLAB, The Mathworks, Inc. Version 7.10.0.499 (R2010a). Operating System: Darwin 13.4.0 Darwin Kernel Version 13.4.0: Sun Aug 17 19:50:11 PDT 2014; root:xnu-2422.115.4~1/RELEASE_X86_64 x86_64. 3 | %%Title: ./plotLineStyle.eps 4 | %%CreationDate: 09/23/2014 19:06:00 5 | %%DocumentNeededFonts: Helvetica 6 | %%DocumentProcessColors: Cyan Magenta Yellow Black 7 | %%LanguageLevel: 2 8 | %%Pages: 1 9 | %%BoundingBox: 35 246 549 535 10 | %%EndComments 11 | 12 | %%BeginProlog 13 | % MathWorks dictionary 14 | /MathWorks 160 dict begin 15 | % definition operators 16 | /bdef {bind def} bind def 17 | /ldef {load def} bind def 18 | /xdef {exch def} bdef 19 | /xstore {exch store} bdef 20 | % operator abbreviations 21 | /c /clip ldef 22 | /cc /concat ldef 23 | /cp /closepath ldef 24 | /gr /grestore ldef 25 | /gs /gsave ldef 26 | /mt /moveto ldef 27 | /np /newpath ldef 28 | /cm /currentmatrix ldef 29 | /sm /setmatrix ldef 30 | /rm /rmoveto ldef 31 | /rl /rlineto ldef 32 | /s {show newpath} bdef 33 | /sc {setcmykcolor} bdef 34 | /sr /setrgbcolor ldef 35 | /sg /setgray ldef 36 | /w /setlinewidth ldef 37 | /j /setlinejoin ldef 38 | /cap /setlinecap ldef 39 | /rc {rectclip} bdef 40 | /rf {rectfill} bdef 41 | % page state control 42 | /pgsv () def 43 | /bpage {/pgsv save def} bdef 44 | /epage {pgsv restore} bdef 45 | /bplot /gsave ldef 46 | /eplot {stroke grestore} bdef 47 | % orientation switch 48 | /portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def 49 | % coordinate system mappings 50 | /dpi2point 0 def 51 | % font control 52 | /FontSize 0 def 53 | /FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0] 54 | makefont setfont} bdef 55 | /reencode {exch dup where {pop load} {pop StandardEncoding} ifelse 56 | exch dup 3 1 roll findfont dup length dict begin 57 | { 1 index /FID ne {def}{pop pop} ifelse } forall 58 | /Encoding exch def currentdict end definefont pop} bdef 59 | /isroman {findfont /CharStrings get /Agrave known} bdef 60 | /FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse 61 | exch FMS} bdef 62 | /csm {1 dpi2point div -1 dpi2point div scale neg translate 63 | dup landscapeMode eq {pop -90 rotate} 64 | {rotateMode eq {90 rotate} if} ifelse} bdef 65 | % line types: solid, dotted, dashed, dotdash 66 | /SO { [] 0 setdash } bdef 67 | /DO { [3 dpi2point mul 3 dpi2point mul] 0 setdash } bdef 68 | /DA { [6 dpi2point mul] 0 setdash } bdef 69 | /DD { [2 dpi2point mul 2 dpi2point mul 6 dpi2point mul 2 dpi2point mul] 0 setdash } bdef 70 | % macros for lines and objects 71 | /L {lineto stroke} bdef 72 | /MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef 73 | /AP {{rlineto} repeat} bdef 74 | /PDlw -1 def 75 | /W {/PDlw currentlinewidth def setlinewidth} def 76 | /PP {closepath eofill} bdef 77 | /DP {closepath stroke} bdef 78 | /MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto 79 | neg 0 exch rlineto closepath} bdef 80 | /FR {MR stroke} bdef 81 | /PR {MR fill} bdef 82 | /L1i {{currentfile picstr readhexstring pop} image} bdef 83 | /tMatrix matrix def 84 | /MakeOval {newpath tMatrix currentmatrix pop translate scale 85 | 0 0 1 0 360 arc tMatrix setmatrix} bdef 86 | /FO {MakeOval stroke} bdef 87 | /PO {MakeOval fill} bdef 88 | /PD {currentlinewidth 2 div 0 360 arc fill 89 | PDlw -1 eq not {PDlw w /PDlw -1 def} if} def 90 | /FA {newpath tMatrix currentmatrix pop translate scale 91 | 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef 92 | /PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 93 | 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef 94 | /FAn {newpath tMatrix currentmatrix pop translate scale 95 | 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef 96 | /PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 97 | 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef 98 | /vradius 0 def /hradius 0 def /lry 0 def 99 | /lrx 0 def /uly 0 def /ulx 0 def /rad 0 def 100 | /MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef 101 | /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly 102 | vradius add translate hradius vradius scale 0 0 1 180 270 arc 103 | tMatrix setmatrix lrx hradius sub uly vradius add translate 104 | hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix 105 | lrx hradius sub lry vradius sub translate hradius vradius scale 106 | 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub 107 | translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix 108 | closepath} bdef 109 | /FRR {MRR stroke } bdef 110 | /PRR {MRR fill } bdef 111 | /MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def 112 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 113 | rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad 114 | sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix 115 | closepath} bdef 116 | /FlrRR {MlrRR stroke } bdef 117 | /PlrRR {MlrRR fill } bdef 118 | /MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def 119 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 120 | rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad 121 | sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix 122 | closepath} bdef 123 | /FtbRR {MtbRR stroke } bdef 124 | /PtbRR {MtbRR fill } bdef 125 | /stri 6 array def /dtri 6 array def 126 | /smat 6 array def /dmat 6 array def 127 | /tmat1 6 array def /tmat2 6 array def /dif 3 array def 128 | /asub {/ind2 exch def /ind1 exch def dup dup 129 | ind1 get exch ind2 get sub exch } bdef 130 | /tri_to_matrix { 131 | 2 0 asub 3 1 asub 4 0 asub 5 1 asub 132 | dup 0 get exch 1 get 7 -1 roll astore } bdef 133 | /compute_transform { 134 | dmat dtri tri_to_matrix tmat1 invertmatrix 135 | smat stri tri_to_matrix tmat2 concatmatrix } bdef 136 | /ds {stri astore pop} bdef 137 | /dt {dtri astore pop} bdef 138 | /db {2 copy /cols xdef /rows xdef mul dup 3 mul string 139 | currentfile 140 | 3 index 0 eq {/ASCIIHexDecode filter} 141 | {/ASCII85Decode filter 3 index 2 eq {/RunLengthDecode filter} if } 142 | ifelse exch readstring pop 143 | dup 0 3 index getinterval /rbmap xdef 144 | dup 2 index dup getinterval /gbmap xdef 145 | 1 index dup 2 mul exch getinterval /bbmap xdef pop pop}bdef 146 | /it {gs np dtri aload pop moveto lineto lineto cp c 147 | cols rows 8 compute_transform 148 | rbmap gbmap bbmap true 3 colorimage gr}bdef 149 | /il {newpath moveto lineto stroke}bdef 150 | currentdict end def 151 | %%EndProlog 152 | 153 | %%BeginSetup 154 | MathWorks begin 155 | 156 | 0 cap 157 | 158 | end 159 | %%EndSetup 160 | 161 | %%Page: 1 1 162 | %%BeginPageSetup 163 | %%PageBoundingBox: 35 246 549 535 164 | MathWorks begin 165 | bpage 166 | %%EndPageSetup 167 | 168 | %%BeginObject: obj1 169 | bplot 170 | 171 | /dpi2point 12 def 172 | portraitMode 0420 6552 csm 173 | 174 | 0 123 6174 3477 rc 175 | 85 dict begin %Colortable dictionary 176 | /c0 { 0.000000 0.000000 0.000000 sr} bdef 177 | /c1 { 1.000000 1.000000 1.000000 sr} bdef 178 | /c2 { 0.900000 0.000000 0.000000 sr} bdef 179 | /c3 { 0.000000 0.820000 0.000000 sr} bdef 180 | /c4 { 0.000000 0.000000 0.800000 sr} bdef 181 | /c5 { 0.910000 0.820000 0.320000 sr} bdef 182 | /c6 { 1.000000 0.260000 0.820000 sr} bdef 183 | /c7 { 0.000000 0.820000 0.820000 sr} bdef 184 | c0 185 | 1 j 186 | 1 sg 187 | 0 0 6500 3601 rf 188 | 18 w 189 | 12 w 190 | DO 191 | SO 192 | 18 w 193 | 0 sg 194 | 777 3056 mt 5990 3056 L 195 | 777 306 mt 5990 306 L 196 | 777 3056 mt 777 306 L 197 | 5990 3056 mt 5990 306 L 198 | 777 3056 mt 5990 3056 L 199 | 777 3056 mt 777 306 L 200 | 777 3056 mt 777 2951 L 201 | 777 307 mt 777 411 L 202 | %%IncludeResource: font Helvetica 203 | /Helvetica /ISOLatin1Encoding 240 FMSR 204 | 205 | 711 3313 mt 206 | (0) s 207 | 950 3056 mt 950 3003 L 208 | 950 307 mt 950 359 L 209 | 1124 3056 mt 1124 3003 L 210 | 1124 307 mt 1124 359 L 211 | 1298 3056 mt 1298 3003 L 212 | 1298 307 mt 1298 359 L 213 | 1472 3056 mt 1472 3003 L 214 | 1472 307 mt 1472 359 L 215 | 1645 3056 mt 1645 3003 L 216 | 1645 307 mt 1645 359 L 217 | 1645 3056 mt 1645 3003 L 218 | 1645 307 mt 1645 359 L 219 | 1645 3056 mt 1645 3003 L 220 | 1645 307 mt 1645 359 L 221 | 1645 3056 mt 1645 3003 L 222 | 1645 307 mt 1645 359 L 223 | 1645 3056 mt 1645 3003 L 224 | 1645 307 mt 1645 359 L 225 | 1645 3056 mt 1645 2951 L 226 | 1645 307 mt 1645 411 L 227 | 1512 3313 mt 228 | (10) s 229 | 1819 3056 mt 1819 3003 L 230 | 1819 307 mt 1819 359 L 231 | 1993 3056 mt 1993 3003 L 232 | 1993 307 mt 1993 359 L 233 | 2167 3056 mt 2167 3003 L 234 | 2167 307 mt 2167 359 L 235 | 2340 3056 mt 2340 3003 L 236 | 2340 307 mt 2340 359 L 237 | 2514 3056 mt 2514 3003 L 238 | 2514 307 mt 2514 359 L 239 | 2514 3056 mt 2514 3003 L 240 | 2514 307 mt 2514 359 L 241 | 2514 3056 mt 2514 3003 L 242 | 2514 307 mt 2514 359 L 243 | 2514 3056 mt 2514 3003 L 244 | 2514 307 mt 2514 359 L 245 | 2514 3056 mt 2514 3003 L 246 | 2514 307 mt 2514 359 L 247 | 2514 3056 mt 2514 2951 L 248 | 2514 307 mt 2514 411 L 249 | 2381 3313 mt 250 | (20) s 251 | 2688 3056 mt 2688 3003 L 252 | 2688 307 mt 2688 359 L 253 | 2862 3056 mt 2862 3003 L 254 | 2862 307 mt 2862 359 L 255 | 3035 3056 mt 3035 3003 L 256 | 3035 307 mt 3035 359 L 257 | 3209 3056 mt 3209 3003 L 258 | 3209 307 mt 3209 359 L 259 | 3383 3056 mt 3383 3003 L 260 | 3383 307 mt 3383 359 L 261 | 3383 3056 mt 3383 3003 L 262 | 3383 307 mt 3383 359 L 263 | 3383 3056 mt 3383 3003 L 264 | 3383 307 mt 3383 359 L 265 | 3383 3056 mt 3383 3003 L 266 | 3383 307 mt 3383 359 L 267 | 3383 3056 mt 3383 3003 L 268 | 3383 307 mt 3383 359 L 269 | 3383 3056 mt 3383 2951 L 270 | 3383 307 mt 3383 411 L 271 | 3250 3313 mt 272 | (30) s 273 | 3557 3056 mt 3557 3003 L 274 | 3557 307 mt 3557 359 L 275 | 3731 3056 mt 3731 3003 L 276 | 3731 307 mt 3731 359 L 277 | 3904 3056 mt 3904 3003 L 278 | 3904 307 mt 3904 359 L 279 | 4078 3056 mt 4078 3003 L 280 | 4078 307 mt 4078 359 L 281 | 4252 3056 mt 4252 3003 L 282 | 4252 307 mt 4252 359 L 283 | 4252 3056 mt 4252 3003 L 284 | 4252 307 mt 4252 359 L 285 | 4252 3056 mt 4252 3003 L 286 | 4252 307 mt 4252 359 L 287 | 4252 3056 mt 4252 3003 L 288 | 4252 307 mt 4252 359 L 289 | 4252 3056 mt 4252 3003 L 290 | 4252 307 mt 4252 359 L 291 | 4252 3056 mt 4252 2951 L 292 | 4252 307 mt 4252 411 L 293 | 4119 3313 mt 294 | (40) s 295 | 4426 3056 mt 4426 3003 L 296 | 4426 307 mt 4426 359 L 297 | 4599 3056 mt 4599 3003 L 298 | 4599 307 mt 4599 359 L 299 | 4773 3056 mt 4773 3003 L 300 | 4773 307 mt 4773 359 L 301 | 4947 3056 mt 4947 3003 L 302 | 4947 307 mt 4947 359 L 303 | 5121 3056 mt 5121 3003 L 304 | 5121 307 mt 5121 359 L 305 | 5121 3056 mt 5121 3003 L 306 | 5121 307 mt 5121 359 L 307 | 5121 3056 mt 5121 3003 L 308 | 5121 307 mt 5121 359 L 309 | 5121 3056 mt 5121 3003 L 310 | 5121 307 mt 5121 359 L 311 | 5121 3056 mt 5121 3003 L 312 | 5121 307 mt 5121 359 L 313 | 5121 3056 mt 5121 2951 L 314 | 5121 307 mt 5121 411 L 315 | 4988 3313 mt 316 | (50) s 317 | 5294 3056 mt 5294 3003 L 318 | 5294 307 mt 5294 359 L 319 | 5468 3056 mt 5468 3003 L 320 | 5468 307 mt 5468 359 L 321 | 5642 3056 mt 5642 3003 L 322 | 5642 307 mt 5642 359 L 323 | 5816 3056 mt 5816 3003 L 324 | 5816 307 mt 5816 359 L 325 | 5990 3056 mt 5990 3003 L 326 | 5990 307 mt 5990 359 L 327 | 5990 3056 mt 5990 3003 L 328 | 5990 307 mt 5990 359 L 329 | 5990 3056 mt 5990 3003 L 330 | 5990 307 mt 5990 359 L 331 | 5990 3056 mt 5990 3003 L 332 | 5990 307 mt 5990 359 L 333 | 5990 3056 mt 5990 3003 L 334 | 5990 307 mt 5990 359 L 335 | 5990 3056 mt 5990 2951 L 336 | 5990 307 mt 5990 411 L 337 | 5857 3313 mt 338 | (60) s 339 | 777 3056 mt 881 3056 L 340 | 5990 3056 mt 5885 3056 L 341 | 335 3145 mt 342 | (-10) s 343 | 777 2918 mt 829 2918 L 344 | 5990 2918 mt 5937 2918 L 345 | 777 2781 mt 829 2781 L 346 | 5990 2781 mt 5937 2781 L 347 | 777 2643 mt 829 2643 L 348 | 5990 2643 mt 5937 2643 L 349 | 777 2506 mt 829 2506 L 350 | 5990 2506 mt 5937 2506 L 351 | 777 2368 mt 829 2368 L 352 | 5990 2368 mt 5937 2368 L 353 | 777 2368 mt 829 2368 L 354 | 5990 2368 mt 5937 2368 L 355 | 777 2368 mt 829 2368 L 356 | 5990 2368 mt 5937 2368 L 357 | 777 2368 mt 829 2368 L 358 | 5990 2368 mt 5937 2368 L 359 | 777 2368 mt 829 2368 L 360 | 5990 2368 mt 5937 2368 L 361 | 777 2368 mt 881 2368 L 362 | 5990 2368 mt 5885 2368 L 363 | 469 2457 mt 364 | (-5) s 365 | 777 2231 mt 829 2231 L 366 | 5990 2231 mt 5937 2231 L 367 | 777 2093 mt 829 2093 L 368 | 5990 2093 mt 5937 2093 L 369 | 777 1956 mt 829 1956 L 370 | 5990 1956 mt 5937 1956 L 371 | 777 1818 mt 829 1818 L 372 | 5990 1818 mt 5937 1818 L 373 | 777 1681 mt 829 1681 L 374 | 5990 1681 mt 5937 1681 L 375 | 777 1681 mt 829 1681 L 376 | 5990 1681 mt 5937 1681 L 377 | 777 1681 mt 829 1681 L 378 | 5990 1681 mt 5937 1681 L 379 | 777 1681 mt 829 1681 L 380 | 5990 1681 mt 5937 1681 L 381 | 777 1681 mt 829 1681 L 382 | 5990 1681 mt 5937 1681 L 383 | 777 1681 mt 881 1681 L 384 | 5990 1681 mt 5885 1681 L 385 | 609 1770 mt 386 | (0) s 387 | 777 1544 mt 829 1544 L 388 | 5990 1544 mt 5937 1544 L 389 | 777 1406 mt 829 1406 L 390 | 5990 1406 mt 5937 1406 L 391 | 777 1269 mt 829 1269 L 392 | 5990 1269 mt 5937 1269 L 393 | 777 1131 mt 829 1131 L 394 | 5990 1131 mt 5937 1131 L 395 | 777 994 mt 829 994 L 396 | 5990 994 mt 5937 994 L 397 | 777 994 mt 829 994 L 398 | 5990 994 mt 5937 994 L 399 | 777 994 mt 829 994 L 400 | 5990 994 mt 5937 994 L 401 | 777 994 mt 829 994 L 402 | 5990 994 mt 5937 994 L 403 | 777 994 mt 829 994 L 404 | 5990 994 mt 5937 994 L 405 | 777 994 mt 881 994 L 406 | 5990 994 mt 5885 994 L 407 | 609 1083 mt 408 | (5) s 409 | 777 856 mt 829 856 L 410 | 5990 856 mt 5937 856 L 411 | 777 719 mt 829 719 L 412 | 5990 719 mt 5937 719 L 413 | 777 581 mt 829 581 L 414 | 5990 581 mt 5937 581 L 415 | 777 444 mt 829 444 L 416 | 5990 444 mt 5937 444 L 417 | 777 307 mt 829 307 L 418 | 5990 307 mt 5937 307 L 419 | 777 307 mt 829 307 L 420 | 5990 307 mt 5937 307 L 421 | 777 307 mt 829 307 L 422 | 5990 307 mt 5937 307 L 423 | 777 307 mt 829 307 L 424 | 5990 307 mt 5937 307 L 425 | 777 307 mt 829 307 L 426 | 5990 307 mt 5937 307 L 427 | 777 307 mt 881 307 L 428 | 5990 307 mt 5885 307 L 429 | 476 396 mt 430 | (10) s 431 | 777 3056 mt 5990 3056 L 432 | 777 306 mt 5990 306 L 433 | 777 3056 mt 777 306 L 434 | 5990 3056 mt 5990 306 L 435 | gs 777 307 5214 2750 rc 436 | DA 437 | 24 w 438 | 9 0 8 -2 9 -4 9 -4 9 -6 8 -8 9 -9 9 -10 439 | 8 -11 9 -13 9 -14 8 -15 9 -17 9 -17 8 -19 9 -21 440 | 9 -21 8 -22 9 -24 9 -25 9 -26 8 -27 9 -28 9 -29 441 | 8 -30 9 -31 9 -32 8 -33 9 -34 9 -34 8 -35 9 -37 442 | 9 -36 8 -38 9 -38 9 -39 9 -39 8 -40 9 -40 9 -41 443 | 8 -42 9 -41 9 -42 8 -42 9 -43 9 -43 8 -43 9 -43 444 | 9 -43 8 -43 777 1681 51 MP stroke 445 | 9 0 9 -2 8 -4 9 -4 9 -6 9 -8 8 -9 9 -10 446 | 9 -11 8 -13 9 -14 9 -15 8 -17 9 -17 9 -19 8 -21 447 | 9 -21 9 -22 8 -24 9 -25 9 -26 9 -27 8 -28 9 -29 448 | 9 -30 8 -31 9 -32 9 -33 8 -34 9 -34 9 -35 8 -37 449 | 9 -36 9 -38 9 -38 8 -39 9 -39 9 -40 8 -40 9 -41 450 | 9 -42 8 -41 9 -42 9 -42 8 -43 9 -43 9 -43 8 -43 451 | 9 -43 9 -43 9 -43 8 -43 9 -43 9 -43 8 -43 9 -43 452 | 9 -42 8 -42 9 -41 9 -42 8 -41 9 -40 9 -40 8 -39 453 | 9 -39 9 -38 9 -38 8 -36 9 -37 9 -35 8 -34 9 -34 454 | 9 -33 8 -32 9 -31 9 -30 8 -29 9 -28 9 -27 8 -26 455 | 9 -25 9 -24 9 -22 8 -21 9 -21 9 -19 8 -17 9 -17 456 | 9 -15 8 -14 9 -13 9 -11 8 -10 9 -9 9 -8 8 -6 457 | 9 -4 9 -4 9 -2 8 -1 9 1 9 2 8 4 9 4 458 | 9 6 8 8 9 9 9 10 8 11 9 13 9 14 9 15 459 | 8 17 9 17 9 19 8 21 9 21 9 22 8 24 9 25 460 | 9 26 8 27 9 28 9 29 8 30 9 31 9 32 9 33 461 | 8 34 9 34 9 35 8 37 9 36 9 38 8 38 9 39 462 | 9 39 8 40 9 40 9 41 8 42 9 41 9 42 9 42 463 | 8 43 9 43 9 43 8 43 9 43 9 43 8 43 9 43 464 | 9 43 8 43 9 43 9 43 8 42 9 42 9 41 9 42 465 | 8 41 9 40 9 40 8 39 9 39 9 38 8 38 9 36 466 | 9 37 8 35 9 34 9 34 8 33 9 32 9 31 9 30 467 | 8 29 9 28 9 27 8 26 9 25 9 24 8 22 9 21 468 | 9 21 8 19 9 17 9 17 9 15 8 14 9 13 9 11 469 | 8 10 9 9 9 8 8 6 9 4 9 4 8 2 9 0 470 | 1211 307 201 MP stroke 471 | 8 0 9 -2 9 -4 9 -4 8 -6 9 -8 9 -9 8 -10 472 | 9 -11 9 -13 8 -14 9 -15 9 -17 8 -17 9 -19 9 -21 473 | 8 -21 9 -22 9 -24 9 -25 8 -26 9 -27 9 -28 8 -29 474 | 9 -30 9 -31 8 -32 9 -33 9 -34 8 -34 9 -35 9 -37 475 | 8 -36 9 -38 9 -38 9 -39 8 -39 9 -40 9 -40 8 -41 476 | 9 -42 9 -41 8 -42 9 -42 9 -43 8 -43 9 -43 9 -43 477 | 8 -43 9 -43 9 -43 9 -43 8 -43 9 -43 9 -43 8 -43 478 | 9 -42 9 -42 8 -41 9 -42 9 -41 8 -40 9 -40 9 -39 479 | 8 -39 9 -38 9 -38 9 -36 8 -37 9 -35 9 -34 8 -34 480 | 9 -33 9 -32 8 -31 9 -30 9 -29 8 -28 9 -27 9 -26 481 | 9 -25 8 -24 9 -22 9 -21 8 -21 9 -19 9 -17 8 -17 482 | 9 -15 9 -14 8 -13 9 -11 9 -10 8 -9 9 -8 9 -6 483 | 9 -4 8 -4 9 -2 9 -1 8 1 9 2 9 4 8 4 484 | 9 6 9 8 8 9 9 10 9 11 8 13 9 14 9 15 485 | 9 17 8 17 9 19 9 21 8 21 9 22 9 24 8 25 486 | 9 26 9 27 8 28 9 29 9 30 8 31 9 32 9 33 487 | 9 34 8 34 9 35 9 37 8 36 9 38 9 38 8 39 488 | 9 39 9 40 8 40 9 41 9 42 8 41 9 42 9 42 489 | 9 43 8 43 9 43 9 43 8 43 9 43 9 43 8 43 490 | 9 43 9 43 8 43 9 43 9 42 9 42 8 41 9 42 491 | 9 41 8 40 9 40 9 39 8 39 9 38 9 38 8 36 492 | 9 37 9 35 8 34 9 34 9 33 9 32 8 31 9 30 493 | 9 29 8 28 9 27 9 26 8 25 9 24 9 22 8 21 494 | 9 21 9 19 8 17 9 17 9 15 9 14 8 13 9 11 495 | 9 10 8 9 9 8 9 6 8 4 9 4 9 2 8 0 496 | 2949 307 201 MP stroke 497 | 9 -43 9 -43 9 -43 8 -43 9 -43 9 -43 8 -42 9 -42 498 | 9 -41 8 -42 9 -41 9 -40 8 -40 9 -39 9 -39 9 -38 499 | 8 -38 9 -36 9 -37 8 -35 9 -34 9 -34 8 -33 9 -32 500 | 9 -31 8 -30 9 -29 9 -28 8 -27 9 -26 9 -25 9 -24 501 | 8 -22 9 -21 9 -21 8 -19 9 -17 9 -17 8 -15 9 -14 502 | 9 -13 8 -11 9 -10 9 -9 8 -8 9 -6 9 -4 9 -4 503 | 8 -2 9 -1 9 1 8 2 9 4 9 4 8 6 9 8 504 | 9 9 8 10 9 11 9 13 8 14 9 15 9 17 9 17 505 | 8 19 9 21 9 21 8 22 9 24 9 25 8 26 9 27 506 | 9 28 8 29 9 30 9 31 9 32 8 33 9 34 9 34 507 | 8 35 9 37 9 36 8 38 9 38 9 39 8 39 9 40 508 | 9 40 8 41 9 42 9 41 9 42 8 42 9 43 9 43 509 | 8 43 9 43 9 43 8 43 9 43 9 43 8 43 9 43 510 | 9 43 8 43 9 42 9 42 9 41 8 42 9 41 9 40 511 | 8 40 9 39 9 39 8 38 9 38 9 36 8 37 9 35 512 | 9 34 8 34 9 33 9 32 9 31 8 30 9 29 9 28 513 | 8 27 9 26 9 25 8 24 9 22 9 21 8 21 9 19 514 | 9 17 8 17 9 15 9 14 9 13 8 11 9 10 9 9 515 | 8 8 9 6 9 4 8 4 9 2 9 0 4686 307 151 MP stroke 516 | gr 517 | 518 | 24 w 519 | DA 520 | 2744 3544 mt 521 | (Time, t \(ms\)) s 522 | 226 2412 mt -90 rotate 523 | (Voltage, V \(V\)) s 524 | 90 rotate 525 | SO 526 | 18 w 527 | 528 | end %%Color Dict 529 | 530 | eplot 531 | %%EndObject 532 | 533 | epage 534 | end 535 | 536 | showpage 537 | 538 | %%Trailer 539 | %%EOF 540 | -------------------------------------------------------------------------------- /examples/plotLineStyle.m: -------------------------------------------------------------------------------- 1 | % Set line style, line width, and color. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | % load previously generated fig file 7 | figFile = 'single.fig'; 8 | open(figFile) 9 | 10 | %% plot now 11 | opt.XLabel = 'Time, t (ms)'; % xlabel 12 | opt.YLabel = 'Voltage, V (V)'; %ylabel 13 | opt.Colors = [0, 0, 0]; % change plot color 14 | opt.LineWidth = 2; % line width 15 | opt.LineStyle = {'--'}; % line style 16 | 17 | % Save? comment the following line if you do not want to save 18 | opt.FileName = 'plotLineStyle.png'; 19 | 20 | % create the plot 21 | setPlotProp(opt); 22 | -------------------------------------------------------------------------------- /examples/plotLineStyle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/plotLineStyle.png -------------------------------------------------------------------------------- /examples/plotMarker.m: -------------------------------------------------------------------------------- 1 | clear all; 2 | 3 | 4 | % load previously generated fig file 5 | figFile = 'multiple.fig'; 6 | open(figFile) 7 | 8 | 9 | % change properties 10 | opt.XLabel = 'Time, t (ms)'; % xlabel 11 | opt.YLabel = 'Voltage, V (V)'; %ylabel 12 | opt.YTick = [-10, 0, 10]; %[tick1, tick2, .. ] 13 | opt.XLim = [0, 80]; % [min, max] 14 | opt.YLim = [-11, 11]; % [min, max] 15 | 16 | opt.Colors = [ % three colors for three data set 17 | 1, 0, 0; 18 | 0.25, 0.25, 0.25; 19 | 0, 0, 1; 20 | ]; 21 | 22 | opt.LineWidth = [2, 2, 2]; % three line widths 23 | opt.LineStyle = {'-', '-', '-'}; % three line styles 24 | opt.Markers = {'o', '', 's'}; 25 | opt.MarkerSpacing = [15, 15, 15]; 26 | opt.Legend = {'\theta = 0^o', '\theta = 45^o', '\theta = 90^o'}; % legends 27 | 28 | % Save? comment the following line if you do not want to save 29 | opt.FileName = 'plotMarkers.png'; 30 | 31 | % create the plot 32 | setPlotProp(opt); 33 | -------------------------------------------------------------------------------- /examples/plotMarkers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/plotMarkers.png -------------------------------------------------------------------------------- /examples/plotMultiple.m: -------------------------------------------------------------------------------- 1 | % Multiple plots using plotPub 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | %% lets plot 3 cycles of 50Hz AC voltage 7 | f = 50; 8 | Vm = 10; 9 | phi = pi/4; 10 | 11 | % generate the signal 12 | t = [0:0.0001:3/f]; 13 | th = 2*pi*f*t; 14 | v1 = Vm*sin(th); 15 | v2 = Vm*sin(th - phi); 16 | v3 = Vm*sin(th - phi*2); 17 | 18 | figure; 19 | plot(t*1E3, v1); 20 | hold on; 21 | plot(t*1E3, v2); 22 | plot(t*1E3, v3); 23 | hold off; 24 | 25 | %% settings 26 | opt = []; 27 | opt.XLabel = 'Time, t (ms)'; % xlabel 28 | opt.YLabel = 'Voltage, V (V)'; %ylabel 29 | opt.YTick = [-10, 0, 10]; 30 | opt.YLim = [-11, 11]; 31 | 32 | % Save? comment the following line if you do not want to save 33 | opt.FileName = 'plotMultiple.tiff'; 34 | 35 | % create the plot 36 | setPlotProp(opt); 37 | -------------------------------------------------------------------------------- /examples/plotMultiple.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/plotMultiple.png -------------------------------------------------------------------------------- /examples/plotMultiple.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/plotMultiple.tiff -------------------------------------------------------------------------------- /examples/plotMultiple2.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-3.0 EPSF-3.0 2 | %%Creator: MATLAB, The Mathworks, Inc. Version 7.10.0.499 (R2010a). Operating System: Darwin 13.4.0 Darwin Kernel Version 13.4.0: Sun Aug 17 19:50:11 PDT 2014; root:xnu-2422.115.4~1/RELEASE_X86_64 x86_64. 3 | %%Title: ./plotMultiple2.eps 4 | %%CreationDate: 09/23/2014 19:09:19 5 | %%DocumentNeededFonts: Helvetica 6 | %%DocumentProcessColors: Cyan Magenta Yellow Black 7 | %%LanguageLevel: 2 8 | %%Pages: 1 9 | %%BoundingBox: 35 246 549 532 10 | %%EndComments 11 | 12 | %%BeginProlog 13 | % MathWorks dictionary 14 | /MathWorks 160 dict begin 15 | % definition operators 16 | /bdef {bind def} bind def 17 | /ldef {load def} bind def 18 | /xdef {exch def} bdef 19 | /xstore {exch store} bdef 20 | % operator abbreviations 21 | /c /clip ldef 22 | /cc /concat ldef 23 | /cp /closepath ldef 24 | /gr /grestore ldef 25 | /gs /gsave ldef 26 | /mt /moveto ldef 27 | /np /newpath ldef 28 | /cm /currentmatrix ldef 29 | /sm /setmatrix ldef 30 | /rm /rmoveto ldef 31 | /rl /rlineto ldef 32 | /s {show newpath} bdef 33 | /sc {setcmykcolor} bdef 34 | /sr /setrgbcolor ldef 35 | /sg /setgray ldef 36 | /w /setlinewidth ldef 37 | /j /setlinejoin ldef 38 | /cap /setlinecap ldef 39 | /rc {rectclip} bdef 40 | /rf {rectfill} bdef 41 | % page state control 42 | /pgsv () def 43 | /bpage {/pgsv save def} bdef 44 | /epage {pgsv restore} bdef 45 | /bplot /gsave ldef 46 | /eplot {stroke grestore} bdef 47 | % orientation switch 48 | /portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def 49 | % coordinate system mappings 50 | /dpi2point 0 def 51 | % font control 52 | /FontSize 0 def 53 | /FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0] 54 | makefont setfont} bdef 55 | /reencode {exch dup where {pop load} {pop StandardEncoding} ifelse 56 | exch dup 3 1 roll findfont dup length dict begin 57 | { 1 index /FID ne {def}{pop pop} ifelse } forall 58 | /Encoding exch def currentdict end definefont pop} bdef 59 | /isroman {findfont /CharStrings get /Agrave known} bdef 60 | /FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse 61 | exch FMS} bdef 62 | /csm {1 dpi2point div -1 dpi2point div scale neg translate 63 | dup landscapeMode eq {pop -90 rotate} 64 | {rotateMode eq {90 rotate} if} ifelse} bdef 65 | % line types: solid, dotted, dashed, dotdash 66 | /SO { [] 0 setdash } bdef 67 | /DO { [3 dpi2point mul 3 dpi2point mul] 0 setdash } bdef 68 | /DA { [6 dpi2point mul] 0 setdash } bdef 69 | /DD { [2 dpi2point mul 2 dpi2point mul 6 dpi2point mul 2 dpi2point mul] 0 setdash } bdef 70 | % macros for lines and objects 71 | /L {lineto stroke} bdef 72 | /MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef 73 | /AP {{rlineto} repeat} bdef 74 | /PDlw -1 def 75 | /W {/PDlw currentlinewidth def setlinewidth} def 76 | /PP {closepath eofill} bdef 77 | /DP {closepath stroke} bdef 78 | /MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto 79 | neg 0 exch rlineto closepath} bdef 80 | /FR {MR stroke} bdef 81 | /PR {MR fill} bdef 82 | /L1i {{currentfile picstr readhexstring pop} image} bdef 83 | /tMatrix matrix def 84 | /MakeOval {newpath tMatrix currentmatrix pop translate scale 85 | 0 0 1 0 360 arc tMatrix setmatrix} bdef 86 | /FO {MakeOval stroke} bdef 87 | /PO {MakeOval fill} bdef 88 | /PD {currentlinewidth 2 div 0 360 arc fill 89 | PDlw -1 eq not {PDlw w /PDlw -1 def} if} def 90 | /FA {newpath tMatrix currentmatrix pop translate scale 91 | 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef 92 | /PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 93 | 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef 94 | /FAn {newpath tMatrix currentmatrix pop translate scale 95 | 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef 96 | /PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 97 | 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef 98 | /vradius 0 def /hradius 0 def /lry 0 def 99 | /lrx 0 def /uly 0 def /ulx 0 def /rad 0 def 100 | /MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef 101 | /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly 102 | vradius add translate hradius vradius scale 0 0 1 180 270 arc 103 | tMatrix setmatrix lrx hradius sub uly vradius add translate 104 | hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix 105 | lrx hradius sub lry vradius sub translate hradius vradius scale 106 | 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub 107 | translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix 108 | closepath} bdef 109 | /FRR {MRR stroke } bdef 110 | /PRR {MRR fill } bdef 111 | /MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def 112 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 113 | rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad 114 | sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix 115 | closepath} bdef 116 | /FlrRR {MlrRR stroke } bdef 117 | /PlrRR {MlrRR fill } bdef 118 | /MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def 119 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 120 | rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad 121 | sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix 122 | closepath} bdef 123 | /FtbRR {MtbRR stroke } bdef 124 | /PtbRR {MtbRR fill } bdef 125 | /stri 6 array def /dtri 6 array def 126 | /smat 6 array def /dmat 6 array def 127 | /tmat1 6 array def /tmat2 6 array def /dif 3 array def 128 | /asub {/ind2 exch def /ind1 exch def dup dup 129 | ind1 get exch ind2 get sub exch } bdef 130 | /tri_to_matrix { 131 | 2 0 asub 3 1 asub 4 0 asub 5 1 asub 132 | dup 0 get exch 1 get 7 -1 roll astore } bdef 133 | /compute_transform { 134 | dmat dtri tri_to_matrix tmat1 invertmatrix 135 | smat stri tri_to_matrix tmat2 concatmatrix } bdef 136 | /ds {stri astore pop} bdef 137 | /dt {dtri astore pop} bdef 138 | /db {2 copy /cols xdef /rows xdef mul dup 3 mul string 139 | currentfile 140 | 3 index 0 eq {/ASCIIHexDecode filter} 141 | {/ASCII85Decode filter 3 index 2 eq {/RunLengthDecode filter} if } 142 | ifelse exch readstring pop 143 | dup 0 3 index getinterval /rbmap xdef 144 | dup 2 index dup getinterval /gbmap xdef 145 | 1 index dup 2 mul exch getinterval /bbmap xdef pop pop}bdef 146 | /it {gs np dtri aload pop moveto lineto lineto cp c 147 | cols rows 8 compute_transform 148 | rbmap gbmap bbmap true 3 colorimage gr}bdef 149 | /il {newpath moveto lineto stroke}bdef 150 | currentdict end def 151 | %%EndProlog 152 | 153 | %%BeginSetup 154 | MathWorks begin 155 | 156 | 0 cap 157 | 158 | end 159 | %%EndSetup 160 | 161 | %%Page: 1 1 162 | %%BeginPageSetup 163 | %%PageBoundingBox: 35 246 549 532 164 | MathWorks begin 165 | bpage 166 | %%EndPageSetup 167 | 168 | %%BeginObject: obj1 169 | bplot 170 | 171 | /dpi2point 12 def 172 | portraitMode 0420 6552 csm 173 | 174 | 0 165 6174 3435 rc 175 | 85 dict begin %Colortable dictionary 176 | /c0 { 0.000000 0.000000 0.000000 sr} bdef 177 | /c1 { 1.000000 1.000000 1.000000 sr} bdef 178 | /c2 { 0.900000 0.000000 0.000000 sr} bdef 179 | /c3 { 0.000000 0.820000 0.000000 sr} bdef 180 | /c4 { 0.000000 0.000000 0.800000 sr} bdef 181 | /c5 { 0.910000 0.820000 0.320000 sr} bdef 182 | /c6 { 1.000000 0.260000 0.820000 sr} bdef 183 | /c7 { 0.000000 0.820000 0.820000 sr} bdef 184 | c0 185 | 1 j 186 | 1 sg 187 | 0 0 6500 3601 rf 188 | 18 w 189 | 12 w 190 | DO 191 | SO 192 | 18 w 193 | 0 sg 194 | 777 3056 mt 5990 3056 L 195 | 777 307 mt 5990 307 L 196 | 777 3056 mt 777 307 L 197 | 5990 3056 mt 5990 307 L 198 | 777 3056 mt 5990 3056 L 199 | 777 3056 mt 777 307 L 200 | 777 3056 mt 777 2951 L 201 | 777 307 mt 777 411 L 202 | %%IncludeResource: font Helvetica 203 | /Helvetica /ISOLatin1Encoding 240 FMSR 204 | 205 | 711 3313 mt 206 | (0) s 207 | 907 3056 mt 907 3003 L 208 | 907 307 mt 907 359 L 209 | 1037 3056 mt 1037 3003 L 210 | 1037 307 mt 1037 359 L 211 | 1167 3056 mt 1167 3003 L 212 | 1167 307 mt 1167 359 L 213 | 1298 3056 mt 1298 3003 L 214 | 1298 307 mt 1298 359 L 215 | 1428 3056 mt 1428 3003 L 216 | 1428 307 mt 1428 359 L 217 | 1558 3056 mt 1558 3003 L 218 | 1558 307 mt 1558 359 L 219 | 1689 3056 mt 1689 3003 L 220 | 1689 307 mt 1689 359 L 221 | 1819 3056 mt 1819 3003 L 222 | 1819 307 mt 1819 359 L 223 | 1949 3056 mt 1949 3003 L 224 | 1949 307 mt 1949 359 L 225 | 2080 3056 mt 2080 2951 L 226 | 2080 307 mt 2080 411 L 227 | 1947 3313 mt 228 | (20) s 229 | 2210 3056 mt 2210 3003 L 230 | 2210 307 mt 2210 359 L 231 | 2340 3056 mt 2340 3003 L 232 | 2340 307 mt 2340 359 L 233 | 2471 3056 mt 2471 3003 L 234 | 2471 307 mt 2471 359 L 235 | 2601 3056 mt 2601 3003 L 236 | 2601 307 mt 2601 359 L 237 | 2731 3056 mt 2731 3003 L 238 | 2731 307 mt 2731 359 L 239 | 2862 3056 mt 2862 3003 L 240 | 2862 307 mt 2862 359 L 241 | 2992 3056 mt 2992 3003 L 242 | 2992 307 mt 2992 359 L 243 | 3122 3056 mt 3122 3003 L 244 | 3122 307 mt 3122 359 L 245 | 3253 3056 mt 3253 3003 L 246 | 3253 307 mt 3253 359 L 247 | 3383 3056 mt 3383 2951 L 248 | 3383 307 mt 3383 411 L 249 | 3250 3313 mt 250 | (40) s 251 | 3513 3056 mt 3513 3003 L 252 | 3513 307 mt 3513 359 L 253 | 3644 3056 mt 3644 3003 L 254 | 3644 307 mt 3644 359 L 255 | 3774 3056 mt 3774 3003 L 256 | 3774 307 mt 3774 359 L 257 | 3904 3056 mt 3904 3003 L 258 | 3904 307 mt 3904 359 L 259 | 4035 3056 mt 4035 3003 L 260 | 4035 307 mt 4035 359 L 261 | 4165 3056 mt 4165 3003 L 262 | 4165 307 mt 4165 359 L 263 | 4295 3056 mt 4295 3003 L 264 | 4295 307 mt 4295 359 L 265 | 4426 3056 mt 4426 3003 L 266 | 4426 307 mt 4426 359 L 267 | 4556 3056 mt 4556 3003 L 268 | 4556 307 mt 4556 359 L 269 | 4686 3056 mt 4686 2951 L 270 | 4686 307 mt 4686 411 L 271 | 4553 3313 mt 272 | (60) s 273 | 4817 3056 mt 4817 3003 L 274 | 4817 307 mt 4817 359 L 275 | 4947 3056 mt 4947 3003 L 276 | 4947 307 mt 4947 359 L 277 | 5077 3056 mt 5077 3003 L 278 | 5077 307 mt 5077 359 L 279 | 5208 3056 mt 5208 3003 L 280 | 5208 307 mt 5208 359 L 281 | 5338 3056 mt 5338 3003 L 282 | 5338 307 mt 5338 359 L 283 | 5468 3056 mt 5468 3003 L 284 | 5468 307 mt 5468 359 L 285 | 5599 3056 mt 5599 3003 L 286 | 5599 307 mt 5599 359 L 287 | 5729 3056 mt 5729 3003 L 288 | 5729 307 mt 5729 359 L 289 | 5859 3056 mt 5859 3003 L 290 | 5859 307 mt 5859 359 L 291 | 5990 3056 mt 5990 2951 L 292 | 5990 307 mt 5990 411 L 293 | 5857 3313 mt 294 | (80) s 295 | 777 3056 mt 829 3056 L 296 | 5990 3056 mt 5937 3056 L 297 | 777 2931 mt 881 2931 L 298 | 5990 2931 mt 5885 2931 L 299 | 335 3020 mt 300 | (-10) s 301 | 777 2806 mt 829 2806 L 302 | 5990 2806 mt 5937 2806 L 303 | 777 2681 mt 829 2681 L 304 | 5990 2681 mt 5937 2681 L 305 | 777 2556 mt 829 2556 L 306 | 5990 2556 mt 5937 2556 L 307 | 777 2431 mt 829 2431 L 308 | 5990 2431 mt 5937 2431 L 309 | 777 2306 mt 829 2306 L 310 | 5990 2306 mt 5937 2306 L 311 | 777 2181 mt 829 2181 L 312 | 5990 2181 mt 5937 2181 L 313 | 777 2056 mt 829 2056 L 314 | 5990 2056 mt 5937 2056 L 315 | 777 1931 mt 829 1931 L 316 | 5990 1931 mt 5937 1931 L 317 | 777 1806 mt 829 1806 L 318 | 5990 1806 mt 5937 1806 L 319 | 777 1681 mt 881 1681 L 320 | 5990 1681 mt 5885 1681 L 321 | 609 1770 mt 322 | (0) s 323 | 777 1556 mt 829 1556 L 324 | 5990 1556 mt 5937 1556 L 325 | 777 1431 mt 829 1431 L 326 | 5990 1431 mt 5937 1431 L 327 | 777 1306 mt 829 1306 L 328 | 5990 1306 mt 5937 1306 L 329 | 777 1181 mt 829 1181 L 330 | 5990 1181 mt 5937 1181 L 331 | 777 1056 mt 829 1056 L 332 | 5990 1056 mt 5937 1056 L 333 | 777 931 mt 829 931 L 334 | 5990 931 mt 5937 931 L 335 | 777 806 mt 829 806 L 336 | 5990 806 mt 5937 806 L 337 | 777 681 mt 829 681 L 338 | 5990 681 mt 5937 681 L 339 | 777 556 mt 829 556 L 340 | 5990 556 mt 5937 556 L 341 | 777 431 mt 881 431 L 342 | 5990 431 mt 5885 431 L 343 | 476 520 mt 344 | (10) s 345 | 777 307 mt 829 307 L 346 | 5990 307 mt 5937 307 L 347 | 777 3056 mt 5990 3056 L 348 | 777 307 mt 5990 307 L 349 | 777 3056 mt 777 307 L 350 | 5990 3056 mt 5990 307 L 351 | gs 777 307 5214 2750 rc 352 | 24 w 353 | /c8 { 1.000000 0.000000 0.000000 sr} bdef 354 | c8 355 | 6 -39 7 -39 6 -40 7 -39 6 -38 7 -39 6 -39 7 -38 356 | 6 -38 7 -37 6 -37 7 -37 6 -36 7 -36 6 -35 7 -35 357 | 7 -34 6 -34 7 -32 6 -32 7 -32 6 -30 7 -30 6 -29 358 | 7 -29 6 -27 7 -26 6 -26 7 -24 6 -24 7 -22 6 -22 359 | 7 -21 6 -19 7 -18 6 -18 7 -16 6 -15 7 -14 6 -12 360 | 7 -12 6 -10 7 -9 6 -8 7 -7 6 -6 7 -4 7 -3 361 | 6 -2 7 -1 6 1 7 2 6 3 7 4 6 6 7 7 362 | 6 8 7 9 6 10 7 12 6 12 7 14 6 15 7 16 363 | 6 18 7 18 6 19 7 21 6 22 7 22 6 24 7 24 364 | 6 26 7 26 6 27 7 29 7 29 6 30 7 30 6 32 365 | 7 32 6 32 7 34 6 34 7 35 6 35 7 36 6 36 366 | 7 37 6 37 7 37 6 38 7 38 6 39 7 39 6 38 367 | 7 39 6 40 7 39 6 39 7 39 6 39 7 40 6 39 368 | 7 38 6 39 7 39 7 38 6 38 7 37 6 37 7 37 369 | 6 36 7 36 6 35 7 35 6 34 7 34 6 32 7 32 370 | 6 32 7 30 6 30 7 29 6 29 7 27 6 26 7 26 371 | 6 24 7 24 6 22 7 22 6 21 7 19 6 18 7 18 372 | 6 16 7 15 7 14 6 12 7 12 6 10 7 9 6 8 373 | 7 7 6 6 7 4 6 3 7 2 6 1 7 -1 6 -2 374 | 7 -3 6 -4 7 -6 6 -7 7 -8 6 -9 7 -10 6 -12 375 | 7 -12 6 -14 7 -15 6 -16 7 -18 6 -18 7 -19 6 -21 376 | 7 -22 7 -22 6 -24 7 -24 6 -26 7 -26 6 -27 7 -29 377 | 6 -29 7 -30 6 -30 7 -32 6 -32 7 -32 6 -34 7 -34 378 | 6 -35 7 -35 6 -36 7 -36 6 -37 7 -37 6 -37 7 -38 379 | 6 -38 7 -39 6 -39 7 -38 6 -39 7 -40 6 -39 7 -39 380 | 7 -39 6 -39 7 -40 6 -39 7 -38 6 -39 7 -39 6 -38 381 | 7 -38 6 -37 7 -37 6 -37 7 -36 6 -36 7 -35 6 -35 382 | 7 -34 6 -34 7 -32 6 -32 7 -32 6 -30 7 -30 6 -29 383 | 7 -29 6 -27 7 -26 6 -26 7 -24 6 -24 7 -22 7 -22 384 | 6 -21 7 -19 6 -18 7 -18 6 -16 7 -15 6 -14 7 -12 385 | 6 -12 7 -10 6 -9 7 -8 6 -7 7 -6 6 -4 7 -3 386 | 6 -2 7 -1 6 1 7 2 6 3 7 4 6 6 7 7 387 | 6 8 7 9 6 10 7 12 6 12 7 14 7 15 6 16 388 | 7 18 6 18 7 19 6 21 7 22 6 22 7 24 6 24 389 | 7 26 6 26 7 27 6 29 7 29 6 30 7 30 6 32 390 | 7 32 6 32 7 34 6 34 7 35 6 35 7 36 6 36 391 | 7 37 6 37 7 37 6 38 7 38 7 39 6 39 7 38 392 | 6 39 7 40 6 39 2738 1720 300 MP stroke 393 | 7 39 6 39 7 39 6 40 7 39 6 38 7 39 6 39 394 | 7 38 6 38 7 37 6 37 7 37 6 36 7 36 6 35 395 | 7 35 6 34 7 34 6 32 7 32 6 32 7 30 6 30 396 | 7 29 7 29 6 27 7 26 6 26 7 24 6 24 7 22 397 | 6 22 7 21 6 19 7 18 6 18 7 16 6 15 7 14 398 | 6 12 7 12 6 10 7 9 6 8 7 7 6 6 7 4 399 | 6 3 7 2 6 1 7 -1 6 -2 7 -3 7 -4 6 -6 400 | 7 -7 6 -8 7 -9 6 -10 7 -12 6 -12 7 -14 6 -15 401 | 7 -16 6 -18 7 -18 6 -19 7 -21 6 -22 7 -22 6 -24 402 | 7 -24 6 -26 7 -26 6 -27 7 -29 6 -29 7 -30 6 -30 403 | 7 -32 6 -32 7 -32 6 -34 7 -34 7 -35 6 -35 7 -36 404 | 6 -36 7 -37 6 -37 7 -37 6 -38 7 -38 6 -39 7 -39 405 | 6 -38 7 -39 6 -40 7 -39 6 -39 7 -39 6 -39 7 -40 406 | 6 -39 7 -38 6 -39 7 -39 6 -38 7 -38 6 -37 7 -37 407 | 6 -37 7 -36 6 -36 7 -35 7 -35 6 -34 7 -34 6 -32 408 | 7 -32 6 -32 7 -30 6 -30 7 -29 6 -29 7 -27 6 -26 409 | 7 -26 6 -24 7 -24 6 -22 7 -22 6 -21 7 -19 6 -18 410 | 7 -18 6 -16 7 -15 6 -14 7 -12 6 -12 7 -10 6 -9 411 | 7 -8 6 -7 7 -6 7 -4 6 -3 7 -2 6 -1 7 1 412 | 6 2 7 3 6 4 7 6 6 7 7 8 6 9 7 10 413 | 6 12 7 12 6 14 7 15 6 16 7 18 6 18 7 19 414 | 6 21 7 22 6 22 7 24 6 24 7 26 6 26 7 27 415 | 6 29 7 29 7 30 6 30 7 32 6 32 7 32 6 34 416 | 7 34 6 35 7 35 6 36 7 36 6 37 7 37 6 37 417 | 7 38 6 38 7 39 6 39 7 38 6 39 7 40 6 39 418 | 7 39 6 39 7 39 6 40 7 39 6 38 7 39 6 39 419 | 7 38 7 38 6 37 7 37 6 37 7 36 6 36 7 35 420 | 6 35 7 34 6 34 7 32 6 32 7 32 6 30 7 30 421 | 6 29 7 29 6 27 7 26 6 26 7 24 6 24 7 22 422 | 6 22 7 21 6 19 7 18 6 18 7 16 6 15 7 14 423 | 7 12 6 12 7 10 6 9 7 8 6 7 7 6 6 4 424 | 7 3 6 2 7 1 6 -1 7 -2 6 -3 7 -4 6 -6 425 | 7 -7 6 -8 7 -9 6 -10 7 -12 6 -12 7 -14 6 -15 426 | 7 -16 6 -18 7 -18 6 -19 7 -21 6 -22 7 -22 7 -24 427 | 6 -24 7 -26 6 -26 7 -27 6 -29 7 -29 6 -30 7 -30 428 | 6 -32 7 -32 6 -32 7 -34 6 -34 7 -35 6 -35 7 -36 429 | 6 -36 7 -37 6 -37 7 -37 6 -38 7 -38 6 -39 7 -39 430 | 6 -38 7 -39 6 -40 790 1603 300 MP stroke 431 | 7 -39 6 -39 777 1681 3 MP stroke 432 | DO 433 | 12 w 434 | 0.25 sg 435 | 6 -27 7 -26 6 -26 7 -24 6 -24 7 -22 6 -22 7 -21 436 | 6 -19 7 -18 6 -18 7 -16 6 -15 7 -14 6 -12 7 -12 437 | 7 -10 6 -9 7 -8 6 -7 7 -6 6 -4 7 -3 6 -2 438 | 7 -1 6 1 7 2 6 3 7 4 6 6 7 7 6 8 439 | 7 9 6 10 7 12 6 12 7 14 6 15 7 16 6 18 440 | 7 18 6 19 7 21 6 22 7 22 6 24 7 24 7 26 441 | 6 26 7 27 6 29 7 29 6 30 7 30 6 32 7 32 442 | 6 32 7 34 6 34 7 35 6 35 7 36 6 36 7 37 443 | 6 37 7 37 6 38 7 38 6 39 7 39 6 38 7 39 444 | 6 40 7 39 6 39 7 39 7 39 6 40 7 39 6 38 445 | 7 39 6 39 7 38 6 38 7 37 6 37 7 37 6 36 446 | 7 36 6 35 7 35 6 34 7 34 6 32 7 32 6 32 447 | 7 30 6 30 7 29 6 29 7 27 6 26 7 26 6 24 448 | 7 24 6 22 7 22 7 21 6 19 7 18 6 18 7 16 449 | 6 15 7 14 6 12 7 12 6 10 7 9 6 8 7 7 450 | 6 6 7 4 6 3 7 2 6 1 7 -1 6 -2 7 -3 451 | 6 -4 7 -6 6 -7 7 -8 6 -9 7 -10 6 -12 7 -12 452 | 6 -14 7 -15 7 -16 6 -18 7 -18 6 -19 7 -21 6 -22 453 | 7 -22 6 -24 7 -24 6 -26 7 -26 6 -27 7 -29 6 -29 454 | 7 -30 6 -30 7 -32 6 -32 7 -32 6 -34 7 -34 6 -35 455 | 7 -35 6 -36 7 -36 6 -37 7 -37 6 -37 7 -38 6 -38 456 | 7 -39 7 -39 6 -38 7 -39 6 -40 7 -39 6 -39 7 -39 457 | 6 -39 7 -40 6 -39 7 -38 6 -39 7 -39 6 -38 7 -38 458 | 6 -37 7 -37 6 -37 7 -36 6 -36 7 -35 6 -35 7 -34 459 | 6 -34 7 -32 6 -32 7 -32 6 -30 7 -30 6 -29 7 -29 460 | 7 -27 6 -26 7 -26 6 -24 7 -24 6 -22 7 -22 6 -21 461 | 7 -19 6 -18 7 -18 6 -16 7 -15 6 -14 7 -12 6 -12 462 | 7 -10 6 -9 7 -8 6 -7 7 -6 6 -4 7 -3 6 -2 463 | 7 -1 6 1 7 2 6 3 7 4 6 6 7 7 7 8 464 | 6 9 7 10 6 12 7 12 6 14 7 15 6 16 7 18 465 | 6 18 7 19 6 21 7 22 6 22 7 24 6 24 7 26 466 | 6 26 7 27 6 29 7 29 6 30 7 30 6 32 7 32 467 | 6 32 7 34 6 34 7 35 6 35 7 36 7 36 6 37 468 | 7 37 6 37 7 38 6 38 7 39 6 39 7 38 6 39 469 | 7 40 6 39 7 39 6 39 7 39 6 40 7 39 6 38 470 | 7 39 6 39 7 38 6 38 7 37 6 37 7 37 6 36 471 | 7 36 6 35 7 35 6 34 7 34 7 32 6 32 7 32 472 | 6 30 7 30 6 29 2738 826 300 MP stroke 473 | 7 29 6 27 7 26 6 26 7 24 6 24 7 22 6 22 474 | 7 21 6 19 7 18 6 18 7 16 6 15 7 14 6 12 475 | 7 12 6 10 7 9 6 8 7 7 6 6 7 4 6 3 476 | 7 2 7 1 6 -1 7 -2 6 -3 7 -4 6 -6 7 -7 477 | 6 -8 7 -9 6 -10 7 -12 6 -12 7 -14 6 -15 7 -16 478 | 6 -18 7 -18 6 -19 7 -21 6 -22 7 -22 6 -24 7 -24 479 | 6 -26 7 -26 6 -27 7 -29 6 -29 7 -30 7 -30 6 -32 480 | 7 -32 6 -32 7 -34 6 -34 7 -35 6 -35 7 -36 6 -36 481 | 7 -37 6 -37 7 -37 6 -38 7 -38 6 -39 7 -39 6 -38 482 | 7 -39 6 -40 7 -39 6 -39 7 -39 6 -39 7 -40 6 -39 483 | 7 -38 6 -39 7 -39 6 -38 7 -38 7 -37 6 -37 7 -37 484 | 6 -36 7 -36 6 -35 7 -35 6 -34 7 -34 6 -32 7 -32 485 | 6 -32 7 -30 6 -30 7 -29 6 -29 7 -27 6 -26 7 -26 486 | 6 -24 7 -24 6 -22 7 -22 6 -21 7 -19 6 -18 7 -18 487 | 6 -16 7 -15 6 -14 7 -12 7 -12 6 -10 7 -9 6 -8 488 | 7 -7 6 -6 7 -4 6 -3 7 -2 6 -1 7 1 6 2 489 | 7 3 6 4 7 6 6 7 7 8 6 9 7 10 6 12 490 | 7 12 6 14 7 15 6 16 7 18 6 18 7 19 6 21 491 | 7 22 6 22 7 24 7 24 6 26 7 26 6 27 7 29 492 | 6 29 7 30 6 30 7 32 6 32 7 32 6 34 7 34 493 | 6 35 7 35 6 36 7 36 6 37 7 37 6 37 7 38 494 | 6 38 7 39 6 39 7 38 6 39 7 40 6 39 7 39 495 | 6 39 7 39 7 40 6 39 7 38 6 39 7 39 6 38 496 | 7 38 6 37 7 37 6 37 7 36 6 36 7 35 6 35 497 | 7 34 6 34 7 32 6 32 7 32 6 30 7 30 6 29 498 | 7 29 6 27 7 26 6 26 7 24 6 24 7 22 6 22 499 | 7 21 7 19 6 18 7 18 6 16 7 15 6 14 7 12 500 | 6 12 7 10 6 9 7 8 6 7 7 6 6 4 7 3 501 | 6 2 7 1 6 -1 7 -2 6 -3 7 -4 6 -6 7 -7 502 | 6 -8 7 -9 6 -10 7 -12 6 -12 7 -14 6 -15 7 -16 503 | 7 -18 6 -18 7 -19 6 -21 7 -22 6 -22 7 -24 6 -24 504 | 7 -26 6 -26 7 -27 6 -29 7 -29 6 -30 7 -30 6 -32 505 | 7 -32 6 -32 7 -34 6 -34 7 -35 6 -35 7 -36 6 -36 506 | 7 -37 6 -37 7 -37 6 -38 7 -38 6 -39 7 -39 7 -38 507 | 6 -39 7 -40 6 -39 7 -39 6 -39 7 -39 6 -40 7 -39 508 | 6 -38 7 -39 6 -39 7 -38 6 -38 7 -37 6 -37 7 -37 509 | 6 -36 7 -36 6 -35 7 -35 6 -34 7 -34 6 -32 7 -32 510 | 6 -32 7 -30 6 -30 790 2507 300 MP stroke 511 | 7 -29 6 -29 777 2565 3 MP stroke 512 | DA 513 | /c9 { 0.000000 0.000000 1.000000 sr} bdef 514 | c9 515 | 6 1 7 2 6 3 7 4 6 6 7 7 6 8 7 9 516 | 6 10 7 12 6 12 7 14 6 15 7 16 6 18 7 18 517 | 7 19 6 21 7 22 6 22 7 24 6 24 7 26 6 26 518 | 7 27 6 29 7 29 6 30 7 30 6 32 7 32 6 32 519 | 7 34 6 34 7 35 6 35 7 36 6 36 7 37 6 37 520 | 7 37 6 38 7 38 6 39 7 39 6 38 7 39 7 40 521 | 6 39 7 39 6 39 7 39 6 40 7 39 6 38 7 39 522 | 6 39 7 38 6 38 7 37 6 37 7 37 6 36 7 36 523 | 6 35 7 35 6 34 7 34 6 32 7 32 6 32 7 30 524 | 6 30 7 29 6 29 7 27 7 26 6 26 7 24 6 24 525 | 7 22 6 22 7 21 6 19 7 18 6 18 7 16 6 15 526 | 7 14 6 12 7 12 6 10 7 9 6 8 7 7 6 6 527 | 7 4 6 3 7 2 6 1 7 -1 6 -2 7 -3 6 -4 528 | 7 -6 6 -7 7 -8 7 -9 6 -10 7 -12 6 -12 7 -14 529 | 6 -15 7 -16 6 -18 7 -18 6 -19 7 -21 6 -22 7 -22 530 | 6 -24 7 -24 6 -26 7 -26 6 -27 7 -29 6 -29 7 -30 531 | 6 -30 7 -32 6 -32 7 -32 6 -34 7 -34 6 -35 7 -35 532 | 6 -36 7 -36 7 -37 6 -37 7 -37 6 -38 7 -38 6 -39 533 | 7 -39 6 -38 7 -39 6 -40 7 -39 6 -39 7 -39 6 -39 534 | 7 -40 6 -39 7 -38 6 -39 7 -39 6 -38 7 -38 6 -37 535 | 7 -37 6 -37 7 -36 6 -36 7 -35 6 -35 7 -34 6 -34 536 | 7 -32 7 -32 6 -32 7 -30 6 -30 7 -29 6 -29 7 -27 537 | 6 -26 7 -26 6 -24 7 -24 6 -22 7 -22 6 -21 7 -19 538 | 6 -18 7 -18 6 -16 7 -15 6 -14 7 -12 6 -12 7 -10 539 | 6 -9 7 -8 6 -7 7 -6 6 -4 7 -3 6 -2 7 -1 540 | 7 1 6 2 7 3 6 4 7 6 6 7 7 8 6 9 541 | 7 10 6 12 7 12 6 14 7 15 6 16 7 18 6 18 542 | 7 19 6 21 7 22 6 22 7 24 6 24 7 26 6 26 543 | 7 27 6 29 7 29 6 30 7 30 6 32 7 32 7 32 544 | 6 34 7 34 6 35 7 35 6 36 7 36 6 37 7 37 545 | 6 37 7 38 6 38 7 39 6 39 7 38 6 39 7 40 546 | 6 39 7 39 6 39 7 39 6 40 7 39 6 38 7 39 547 | 6 39 7 38 6 38 7 37 6 37 7 37 7 36 6 36 548 | 7 35 6 35 7 34 6 34 7 32 6 32 7 32 6 30 549 | 7 30 6 29 7 29 6 27 7 26 6 26 7 24 6 24 550 | 7 22 6 22 7 21 6 19 7 18 6 18 7 16 6 15 551 | 7 14 6 12 7 12 6 10 7 9 7 8 6 7 7 6 552 | 6 4 7 3 6 2 2738 432 300 MP stroke 553 | 7 1 6 -1 7 -2 6 -3 7 -4 6 -6 7 -7 6 -8 554 | 7 -9 6 -10 7 -12 6 -12 7 -14 6 -15 7 -16 6 -18 555 | 7 -18 6 -19 7 -21 6 -22 7 -22 6 -24 7 -24 6 -26 556 | 7 -26 7 -27 6 -29 7 -29 6 -30 7 -30 6 -32 7 -32 557 | 6 -32 7 -34 6 -34 7 -35 6 -35 7 -36 6 -36 7 -37 558 | 6 -37 7 -37 6 -38 7 -38 6 -39 7 -39 6 -38 7 -39 559 | 6 -40 7 -39 6 -39 7 -39 6 -39 7 -40 7 -39 6 -38 560 | 7 -39 6 -39 7 -38 6 -38 7 -37 6 -37 7 -37 6 -36 561 | 7 -36 6 -35 7 -35 6 -34 7 -34 6 -32 7 -32 6 -32 562 | 7 -30 6 -30 7 -29 6 -29 7 -27 6 -26 7 -26 6 -24 563 | 7 -24 6 -22 7 -22 6 -21 7 -19 7 -18 6 -18 7 -16 564 | 6 -15 7 -14 6 -12 7 -12 6 -10 7 -9 6 -8 7 -7 565 | 6 -6 7 -4 6 -3 7 -2 6 -1 7 1 6 2 7 3 566 | 6 4 7 6 6 7 7 8 6 9 7 10 6 12 7 12 567 | 6 14 7 15 6 16 7 18 7 18 6 19 7 21 6 22 568 | 7 22 6 24 7 24 6 26 7 26 6 27 7 29 6 29 569 | 7 30 6 30 7 32 6 32 7 32 6 34 7 34 6 35 570 | 7 35 6 36 7 36 6 37 7 37 6 37 7 38 6 38 571 | 7 39 6 39 7 38 7 39 6 40 7 39 6 39 7 39 572 | 6 39 7 40 6 39 7 38 6 39 7 39 6 38 7 38 573 | 6 37 7 37 6 37 7 36 6 36 7 35 6 35 7 34 574 | 6 34 7 32 6 32 7 32 6 30 7 30 6 29 7 29 575 | 6 27 7 26 7 26 6 24 7 24 6 22 7 22 6 21 576 | 7 19 6 18 7 18 6 16 7 15 6 14 7 12 6 12 577 | 7 10 6 9 7 8 6 7 7 6 6 4 7 3 6 2 578 | 7 1 6 -1 7 -2 6 -3 7 -4 6 -6 7 -7 6 -8 579 | 7 -9 7 -10 6 -12 7 -12 6 -14 7 -15 6 -16 7 -18 580 | 6 -18 7 -19 6 -21 7 -22 6 -22 7 -24 6 -24 7 -26 581 | 6 -26 7 -27 6 -29 7 -29 6 -30 7 -30 6 -32 7 -32 582 | 6 -32 7 -34 6 -34 7 -35 6 -35 7 -36 6 -36 7 -37 583 | 7 -37 6 -37 7 -38 6 -38 7 -39 6 -39 7 -38 6 -39 584 | 7 -40 6 -39 7 -39 6 -39 7 -39 6 -40 7 -39 6 -38 585 | 7 -39 6 -39 7 -38 6 -38 7 -37 6 -37 7 -37 6 -36 586 | 7 -36 6 -35 7 -35 6 -34 7 -34 6 -32 7 -32 7 -32 587 | 6 -30 7 -30 6 -29 7 -29 6 -27 7 -26 6 -26 7 -24 588 | 6 -24 7 -22 6 -22 7 -21 6 -19 7 -18 6 -18 7 -16 589 | 6 -15 7 -14 6 -12 7 -12 6 -10 7 -9 6 -8 7 -7 590 | 6 -6 7 -4 6 -3 790 2928 300 MP stroke 591 | 7 -2 6 -1 777 2931 3 MP stroke 592 | gr 593 | 594 | 12 w 595 | c9 596 | DA 597 | 0 sg 598 | 2744 3544 mt 599 | (Time, t \(ms\)) s 600 | 226 2412 mt -90 rotate 601 | (Voltage, V \(V\)) s 602 | 90 rotate 603 | %%IncludeResource: font Helvetica 604 | /Helvetica /ISOLatin1Encoding 120 FMSR 605 | 606 | 760 3099 mt 607 | ( ) s 608 | 5974 349 mt 609 | ( ) s 610 | SO 611 | 18 w 612 | 6 w 613 | %%IncludeResource: font Symbol 614 | /Symbol /ISOLatin1Encoding 240 FMSR 615 | 616 | 5092 662 mt 617 | (q) s 618 | %%IncludeResource: font Helvetica 619 | /Helvetica /ISOLatin1Encoding 240 FMSR 620 | 621 | 5217 662 mt 622 | ( = 0) s 623 | %%IncludeResource: font Helvetica 624 | /Helvetica /ISOLatin1Encoding 192 FMSR 625 | 626 | 5624 542 mt 627 | (o) s 628 | gs 4655 367 1277 1171 rc 629 | 24 w 630 | c8 631 | 335 0 4722 574 2 MP stroke 632 | gr 633 | 634 | 24 w 635 | c8 636 | 0 sg 637 | %%IncludeResource: font Symbol 638 | /Symbol /ISOLatin1Encoding 240 FMSR 639 | 640 | 5092 1040 mt 641 | (q) s 642 | %%IncludeResource: font Helvetica 643 | /Helvetica /ISOLatin1Encoding 240 FMSR 644 | 645 | 5217 1040 mt 646 | ( = 45) s 647 | %%IncludeResource: font Helvetica 648 | /Helvetica /ISOLatin1Encoding 192 FMSR 649 | 650 | 5757 920 mt 651 | (o) s 652 | gs 4655 367 1277 1171 rc 653 | DO 654 | 12 w 655 | 0.25 sg 656 | 335 0 4722 952 2 MP stroke 657 | SO 658 | gr 659 | 660 | 12 w 661 | 0.25 sg 662 | 0 sg 663 | %%IncludeResource: font Symbol 664 | /Symbol /ISOLatin1Encoding 240 FMSR 665 | 666 | 5092 1417 mt 667 | (q) s 668 | %%IncludeResource: font Helvetica 669 | /Helvetica /ISOLatin1Encoding 240 FMSR 670 | 671 | 5217 1417 mt 672 | ( = 90) s 673 | %%IncludeResource: font Helvetica 674 | /Helvetica /ISOLatin1Encoding 192 FMSR 675 | 676 | 5757 1297 mt 677 | (o) s 678 | gs 4655 367 1277 1171 rc 679 | DA 680 | c9 681 | 335 0 4722 1329 2 MP stroke 682 | SO 683 | 6 w 684 | gr 685 | 686 | 6 w 687 | c9 688 | 689 | end %%Color Dict 690 | 691 | eplot 692 | %%EndObject 693 | 694 | epage 695 | end 696 | 697 | showpage 698 | 699 | %%Trailer 700 | %%EOF 701 | -------------------------------------------------------------------------------- /examples/plotMultiple2.m: -------------------------------------------------------------------------------- 1 | % Multiple plots using setPlotProp. Sets color, legend, line style, tick 2 | % etc. 3 | 4 | clear all; 5 | addpath('../lib'); 6 | 7 | %% lets plot 3 cycles of 50Hz AC voltage 8 | f = 50; 9 | Vm = 10; 10 | phi = pi/4; 11 | 12 | % generate the signal 13 | t = [0:0.0001:3/f]; 14 | th = 2*pi*f*t; 15 | v1 = Vm*sin(th); 16 | v2 = Vm*sin(th - phi); 17 | v3 = Vm*sin(th - phi*2); 18 | 19 | figure; 20 | plot(t*1E3, v1); 21 | hold on; 22 | plot(t*1E3, v2); 23 | plot(t*1E3, v3); 24 | hold off; 25 | 26 | %% change properties 27 | opt.XLabel = 'Time, t (ms)'; % xlabel 28 | opt.YLabel = 'Voltage, V (V)'; %ylabel 29 | opt.YTick = [-10, 0, 10]; %[tick1, tick2, .. ] 30 | opt.XLim = [0, 80]; % [min, max] 31 | opt.YLim = [-11, 11]; % [min, max] 32 | 33 | opt.Colors = [ % three colors for three data set 34 | 1, 0, 0; 35 | 0.25, 0.25, 0.25; 36 | 0, 0, 1; 37 | ]; 38 | 39 | opt.LineWidth = [2, 2, 2]; % three line widths 40 | opt.LineStyle = {'-', ':', '--'}; % three line styles 41 | opt.Legend = {'\theta = 0^o', '\theta = 45^o', '\theta = 90^o'}; % legends 42 | 43 | % Save? comment the following line if you do not want to save 44 | opt.FileName = 'plotMultiple2.png'; 45 | 46 | % create the plot 47 | setPlotProp(opt); 48 | -------------------------------------------------------------------------------- /examples/plotMultiple2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/plotMultiple2.png -------------------------------------------------------------------------------- /examples/plotSimple.m: -------------------------------------------------------------------------------- 1 | % Load, modify and export a fig file as an eps file. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | %% lets plot 3 cycles of 50Hz AC voltage 7 | f = 50; % frequency 8 | Vm = 10; % peak 9 | phi = 0; % phase 10 | 11 | % generate the signal 12 | t = [0:0.0001:3/f]; 13 | th = 2*pi*f*t; 14 | v = Vm*sin(th+phi); 15 | 16 | % plot it 17 | figure; 18 | plot(t*1E3, v); 19 | 20 | % change settings 21 | opt = []; 22 | opt.XLabel = 'Time, t (ms)'; % xlabel 23 | opt.YLabel = 'Voltage, V (V)'; %ylabel 24 | opt.Title = 'Voltage as a function of time'; 25 | 26 | % Save? comment the following line if you do not want to save 27 | opt.FileName = 'plotSimple1.eps'; 28 | 29 | % apply the settings 30 | setPlotProp(opt); 31 | -------------------------------------------------------------------------------- /examples/plotSimple1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/plotSimple1.png -------------------------------------------------------------------------------- /examples/plotSimpleLog.m: -------------------------------------------------------------------------------- 1 | % Log scale. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | 7 | %% lets plot 3 cycles of 50Hz AC voltage 8 | f = 50; 9 | Vm = 10; 10 | phi = 0; 11 | 12 | % generate the signal 13 | t = [0:0.00001:3/f]; 14 | th = 2*pi*f*t; 15 | v = Vm*sin(th+phi); 16 | vsqr = v.^2 + 1E-5; 17 | 18 | figure; 19 | plot(t*1E3, vsqr); 20 | 21 | %% plot now 22 | opt.XLabel = 'Time, t (ms)'; % xlabel 23 | opt.YLabel = 'Voltage, V (V)'; %ylabel 24 | opt.YScale = 'log'; 25 | 26 | % Save? comment the following line if you do not want to save 27 | opt.FileName = 'plotSimpleLog.eps'; 28 | 29 | % create the plot 30 | setPlotProp(opt); 31 | -------------------------------------------------------------------------------- /examples/plotSimpleLog2.m: -------------------------------------------------------------------------------- 1 | % Log scale with custom tick. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | %% lets plot 3 cycles of 50Hz AC voltage 7 | f = 50; 8 | Vm = 10; 9 | phi = 0; 10 | 11 | % generate the signal 12 | t = [0:0.00001:3/f]; 13 | th = 2*pi*f*t; 14 | v = Vm*sin(th+phi); 15 | vsqr = v.^2 + 1E-3; 16 | 17 | %% plot now 18 | plotx{1} = t*1E3; %convert time in ms and create a cell array 19 | ploty{1} = vsqr; % assign v to a cell array 20 | opt.XLabel = 'Time, t (ms)'; % xlabel 21 | opt.YLabel = 'Voltage, V (V)'; %ylabel 22 | opt.YScale = 'log'; % 'linear' or 'log' 23 | opt.YLim = [1E-3, 1E3]; % [min, max] 24 | opt.YTick = [1E-3, 1E-1, 1E1, 1E3]; %[tick1, tick2, .. ] 25 | opt.YGrid = 'on'; % 'on' or 'off' 26 | 27 | % Save? comment the following line if you do not want to save 28 | opt.FileName = 'plotSimpleLog2.eps'; 29 | 30 | % create the plot 31 | plotPub(plotx, ploty, 1, opt); 32 | -------------------------------------------------------------------------------- /examples/plotSimpleLog2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/plotSimpleLog2.png -------------------------------------------------------------------------------- /examples/plotSimpleLogLog.m: -------------------------------------------------------------------------------- 1 | % Log-log scale. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | %% lets plot 3 cycles of 50Hz AC voltage 7 | f = 50; 8 | Vm = 10; 9 | phi = 0; 10 | 11 | % generate the signal 12 | t = [0:0.00001:3/f]; 13 | th = 2*pi*f*t; 14 | v = Vm*sin(th+phi); 15 | vsqr = v.^2; 16 | 17 | figure; 18 | plot(t*1E3, vsqr); 19 | 20 | %% settings 21 | opt.XLabel = 'Time, t (ms)'; % xlabel 22 | opt.YLabel = 'Voltage, V (V)'; %ylabel 23 | opt.YScale = 'log'; % 'linear' or 'log' 24 | opt.XScale = 'log'; % 'linear' or 'log' 25 | opt.YLim = [1E-3, 1E3]; % [min, max] 26 | opt.YTick = [1E-3, 1E-1, 1E1, 1E3]; %[tick1, tick2, .. ] 27 | opt.YGrid = 'on'; % 'on' or 'off' 28 | opt.XGrid = 'on'; % 'on' or 'off' 29 | 30 | % Save? comment the following line if you do not want to save 31 | opt.FileName = 'plotSimpleLogLog.eps'; 32 | 33 | % create the plot 34 | setPlotProp(opt); 35 | -------------------------------------------------------------------------------- /examples/plotSimpleLogLog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/plotSimpleLogLog.png -------------------------------------------------------------------------------- /examples/plotSize.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-3.0 EPSF-3.0 2 | %%Creator: MATLAB, The Mathworks, Inc. Version 7.10.0.499 (R2010a). Operating System: Darwin 13.4.0 Darwin Kernel Version 13.4.0: Sun Aug 17 19:50:11 PDT 2014; root:xnu-2422.115.4~1/RELEASE_X86_64 x86_64. 3 | %%Title: ./plotSize.eps 4 | %%CreationDate: 09/23/2014 19:15:20 5 | %%DocumentNeededFonts: Helvetica 6 | %%DocumentProcessColors: Cyan Magenta Yellow Black 7 | %%LanguageLevel: 2 8 | %%Pages: 1 9 | %%BoundingBox: 0 246 586 535 10 | %%EndComments 11 | 12 | %%BeginProlog 13 | % MathWorks dictionary 14 | /MathWorks 160 dict begin 15 | % definition operators 16 | /bdef {bind def} bind def 17 | /ldef {load def} bind def 18 | /xdef {exch def} bdef 19 | /xstore {exch store} bdef 20 | % operator abbreviations 21 | /c /clip ldef 22 | /cc /concat ldef 23 | /cp /closepath ldef 24 | /gr /grestore ldef 25 | /gs /gsave ldef 26 | /mt /moveto ldef 27 | /np /newpath ldef 28 | /cm /currentmatrix ldef 29 | /sm /setmatrix ldef 30 | /rm /rmoveto ldef 31 | /rl /rlineto ldef 32 | /s {show newpath} bdef 33 | /sc {setcmykcolor} bdef 34 | /sr /setrgbcolor ldef 35 | /sg /setgray ldef 36 | /w /setlinewidth ldef 37 | /j /setlinejoin ldef 38 | /cap /setlinecap ldef 39 | /rc {rectclip} bdef 40 | /rf {rectfill} bdef 41 | % page state control 42 | /pgsv () def 43 | /bpage {/pgsv save def} bdef 44 | /epage {pgsv restore} bdef 45 | /bplot /gsave ldef 46 | /eplot {stroke grestore} bdef 47 | % orientation switch 48 | /portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def 49 | % coordinate system mappings 50 | /dpi2point 0 def 51 | % font control 52 | /FontSize 0 def 53 | /FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0] 54 | makefont setfont} bdef 55 | /reencode {exch dup where {pop load} {pop StandardEncoding} ifelse 56 | exch dup 3 1 roll findfont dup length dict begin 57 | { 1 index /FID ne {def}{pop pop} ifelse } forall 58 | /Encoding exch def currentdict end definefont pop} bdef 59 | /isroman {findfont /CharStrings get /Agrave known} bdef 60 | /FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse 61 | exch FMS} bdef 62 | /csm {1 dpi2point div -1 dpi2point div scale neg translate 63 | dup landscapeMode eq {pop -90 rotate} 64 | {rotateMode eq {90 rotate} if} ifelse} bdef 65 | % line types: solid, dotted, dashed, dotdash 66 | /SO { [] 0 setdash } bdef 67 | /DO { [3 dpi2point mul 3 dpi2point mul] 0 setdash } bdef 68 | /DA { [6 dpi2point mul] 0 setdash } bdef 69 | /DD { [2 dpi2point mul 2 dpi2point mul 6 dpi2point mul 2 dpi2point mul] 0 setdash } bdef 70 | % macros for lines and objects 71 | /L {lineto stroke} bdef 72 | /MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef 73 | /AP {{rlineto} repeat} bdef 74 | /PDlw -1 def 75 | /W {/PDlw currentlinewidth def setlinewidth} def 76 | /PP {closepath eofill} bdef 77 | /DP {closepath stroke} bdef 78 | /MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto 79 | neg 0 exch rlineto closepath} bdef 80 | /FR {MR stroke} bdef 81 | /PR {MR fill} bdef 82 | /L1i {{currentfile picstr readhexstring pop} image} bdef 83 | /tMatrix matrix def 84 | /MakeOval {newpath tMatrix currentmatrix pop translate scale 85 | 0 0 1 0 360 arc tMatrix setmatrix} bdef 86 | /FO {MakeOval stroke} bdef 87 | /PO {MakeOval fill} bdef 88 | /PD {currentlinewidth 2 div 0 360 arc fill 89 | PDlw -1 eq not {PDlw w /PDlw -1 def} if} def 90 | /FA {newpath tMatrix currentmatrix pop translate scale 91 | 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef 92 | /PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 93 | 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef 94 | /FAn {newpath tMatrix currentmatrix pop translate scale 95 | 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef 96 | /PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 97 | 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef 98 | /vradius 0 def /hradius 0 def /lry 0 def 99 | /lrx 0 def /uly 0 def /ulx 0 def /rad 0 def 100 | /MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef 101 | /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly 102 | vradius add translate hradius vradius scale 0 0 1 180 270 arc 103 | tMatrix setmatrix lrx hradius sub uly vradius add translate 104 | hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix 105 | lrx hradius sub lry vradius sub translate hradius vradius scale 106 | 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub 107 | translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix 108 | closepath} bdef 109 | /FRR {MRR stroke } bdef 110 | /PRR {MRR fill } bdef 111 | /MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def 112 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 113 | rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad 114 | sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix 115 | closepath} bdef 116 | /FlrRR {MlrRR stroke } bdef 117 | /PlrRR {MlrRR fill } bdef 118 | /MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def 119 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 120 | rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad 121 | sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix 122 | closepath} bdef 123 | /FtbRR {MtbRR stroke } bdef 124 | /PtbRR {MtbRR fill } bdef 125 | /stri 6 array def /dtri 6 array def 126 | /smat 6 array def /dmat 6 array def 127 | /tmat1 6 array def /tmat2 6 array def /dif 3 array def 128 | /asub {/ind2 exch def /ind1 exch def dup dup 129 | ind1 get exch ind2 get sub exch } bdef 130 | /tri_to_matrix { 131 | 2 0 asub 3 1 asub 4 0 asub 5 1 asub 132 | dup 0 get exch 1 get 7 -1 roll astore } bdef 133 | /compute_transform { 134 | dmat dtri tri_to_matrix tmat1 invertmatrix 135 | smat stri tri_to_matrix tmat2 concatmatrix } bdef 136 | /ds {stri astore pop} bdef 137 | /dt {dtri astore pop} bdef 138 | /db {2 copy /cols xdef /rows xdef mul dup 3 mul string 139 | currentfile 140 | 3 index 0 eq {/ASCIIHexDecode filter} 141 | {/ASCII85Decode filter 3 index 2 eq {/RunLengthDecode filter} if } 142 | ifelse exch readstring pop 143 | dup 0 3 index getinterval /rbmap xdef 144 | dup 2 index dup getinterval /gbmap xdef 145 | 1 index dup 2 mul exch getinterval /bbmap xdef pop pop}bdef 146 | /it {gs np dtri aload pop moveto lineto lineto cp c 147 | cols rows 8 compute_transform 148 | rbmap gbmap bbmap true 3 colorimage gr}bdef 149 | /il {newpath moveto lineto stroke}bdef 150 | currentdict end def 151 | %%EndProlog 152 | 153 | %%BeginSetup 154 | MathWorks begin 155 | 156 | 0 cap 157 | 158 | end 159 | %%EndSetup 160 | 161 | %%Page: 1 1 162 | %%BeginPageSetup 163 | %%PageBoundingBox: 0 246 586 535 164 | MathWorks begin 165 | bpage 166 | %%EndPageSetup 167 | 168 | %%BeginObject: obj1 169 | bplot 170 | 171 | /dpi2point 12 def 172 | portraitMode 0000 6552 csm 173 | 174 | 0 123 7038 3477 rc 175 | 86 dict begin %Colortable dictionary 176 | /c0 { 0.000000 0.000000 0.000000 sr} bdef 177 | /c1 { 1.000000 1.000000 1.000000 sr} bdef 178 | /c2 { 0.900000 0.000000 0.000000 sr} bdef 179 | /c3 { 0.000000 0.820000 0.000000 sr} bdef 180 | /c4 { 0.000000 0.000000 0.800000 sr} bdef 181 | /c5 { 0.910000 0.820000 0.320000 sr} bdef 182 | /c6 { 1.000000 0.260000 0.820000 sr} bdef 183 | /c7 { 0.000000 0.820000 0.820000 sr} bdef 184 | c0 185 | 1 j 186 | 1 sg 187 | 0 0 7363 3601 rf 188 | 18 w 189 | 12 w 190 | DO 191 | SO 192 | 18 w 193 | 0 sg 194 | 777 3056 mt 6854 3056 L 195 | 777 306 mt 6854 306 L 196 | 777 3056 mt 777 306 L 197 | 6854 3056 mt 6854 306 L 198 | 777 3056 mt 6854 3056 L 199 | 777 3056 mt 777 306 L 200 | 777 3056 mt 777 2934 L 201 | 777 307 mt 777 428 L 202 | %%IncludeResource: font Helvetica 203 | /Helvetica /ISOLatin1Encoding 240 FMSR 204 | 205 | 711 3313 mt 206 | (0) s 207 | 979 3056 mt 979 2995 L 208 | 979 307 mt 979 367 L 209 | 1182 3056 mt 1182 2995 L 210 | 1182 307 mt 1182 367 L 211 | 1384 3056 mt 1384 2995 L 212 | 1384 307 mt 1384 367 L 213 | 1587 3056 mt 1587 2995 L 214 | 1587 307 mt 1587 367 L 215 | 1789 3056 mt 1789 2995 L 216 | 1789 307 mt 1789 367 L 217 | 1789 3056 mt 1789 2995 L 218 | 1789 307 mt 1789 367 L 219 | 1789 3056 mt 1789 2995 L 220 | 1789 307 mt 1789 367 L 221 | 1789 3056 mt 1789 2995 L 222 | 1789 307 mt 1789 367 L 223 | 1789 3056 mt 1789 2995 L 224 | 1789 307 mt 1789 367 L 225 | 1789 3056 mt 1789 2934 L 226 | 1789 307 mt 1789 428 L 227 | 1656 3313 mt 228 | (10) s 229 | 1992 3056 mt 1992 2995 L 230 | 1992 307 mt 1992 367 L 231 | 2194 3056 mt 2194 2995 L 232 | 2194 307 mt 2194 367 L 233 | 2397 3056 mt 2397 2995 L 234 | 2397 307 mt 2397 367 L 235 | 2600 3056 mt 2600 2995 L 236 | 2600 307 mt 2600 367 L 237 | 2802 3056 mt 2802 2995 L 238 | 2802 307 mt 2802 367 L 239 | 2802 3056 mt 2802 2995 L 240 | 2802 307 mt 2802 367 L 241 | 2802 3056 mt 2802 2995 L 242 | 2802 307 mt 2802 367 L 243 | 2802 3056 mt 2802 2995 L 244 | 2802 307 mt 2802 367 L 245 | 2802 3056 mt 2802 2995 L 246 | 2802 307 mt 2802 367 L 247 | 2802 3056 mt 2802 2934 L 248 | 2802 307 mt 2802 428 L 249 | 2669 3313 mt 250 | (20) s 251 | 3005 3056 mt 3005 2995 L 252 | 3005 307 mt 3005 367 L 253 | 3207 3056 mt 3207 2995 L 254 | 3207 307 mt 3207 367 L 255 | 3410 3056 mt 3410 2995 L 256 | 3410 307 mt 3410 367 L 257 | 3612 3056 mt 3612 2995 L 258 | 3612 307 mt 3612 367 L 259 | 3815 3056 mt 3815 2995 L 260 | 3815 307 mt 3815 367 L 261 | 3815 3056 mt 3815 2995 L 262 | 3815 307 mt 3815 367 L 263 | 3815 3056 mt 3815 2995 L 264 | 3815 307 mt 3815 367 L 265 | 3815 3056 mt 3815 2995 L 266 | 3815 307 mt 3815 367 L 267 | 3815 3056 mt 3815 2995 L 268 | 3815 307 mt 3815 367 L 269 | 3815 3056 mt 3815 2934 L 270 | 3815 307 mt 3815 428 L 271 | 3682 3313 mt 272 | (30) s 273 | 4018 3056 mt 4018 2995 L 274 | 4018 307 mt 4018 367 L 275 | 4220 3056 mt 4220 2995 L 276 | 4220 307 mt 4220 367 L 277 | 4423 3056 mt 4423 2995 L 278 | 4423 307 mt 4423 367 L 279 | 4625 3056 mt 4625 2995 L 280 | 4625 307 mt 4625 367 L 281 | 4828 3056 mt 4828 2995 L 282 | 4828 307 mt 4828 367 L 283 | 4828 3056 mt 4828 2995 L 284 | 4828 307 mt 4828 367 L 285 | 4828 3056 mt 4828 2995 L 286 | 4828 307 mt 4828 367 L 287 | 4828 3056 mt 4828 2995 L 288 | 4828 307 mt 4828 367 L 289 | 4828 3056 mt 4828 2995 L 290 | 4828 307 mt 4828 367 L 291 | 4828 3056 mt 4828 2934 L 292 | 4828 307 mt 4828 428 L 293 | 4695 3313 mt 294 | (40) s 295 | 5030 3056 mt 5030 2995 L 296 | 5030 307 mt 5030 367 L 297 | 5233 3056 mt 5233 2995 L 298 | 5233 307 mt 5233 367 L 299 | 5436 3056 mt 5436 2995 L 300 | 5436 307 mt 5436 367 L 301 | 5638 3056 mt 5638 2995 L 302 | 5638 307 mt 5638 367 L 303 | 5841 3056 mt 5841 2995 L 304 | 5841 307 mt 5841 367 L 305 | 5841 3056 mt 5841 2995 L 306 | 5841 307 mt 5841 367 L 307 | 5841 3056 mt 5841 2995 L 308 | 5841 307 mt 5841 367 L 309 | 5841 3056 mt 5841 2995 L 310 | 5841 307 mt 5841 367 L 311 | 5841 3056 mt 5841 2995 L 312 | 5841 307 mt 5841 367 L 313 | 5841 3056 mt 5841 2934 L 314 | 5841 307 mt 5841 428 L 315 | 5708 3313 mt 316 | (50) s 317 | 6043 3056 mt 6043 2995 L 318 | 6043 307 mt 6043 367 L 319 | 6246 3056 mt 6246 2995 L 320 | 6246 307 mt 6246 367 L 321 | 6448 3056 mt 6448 2995 L 322 | 6448 307 mt 6448 367 L 323 | 6651 3056 mt 6651 2995 L 324 | 6651 307 mt 6651 367 L 325 | 6854 3056 mt 6854 2995 L 326 | 6854 307 mt 6854 367 L 327 | 6854 3056 mt 6854 2995 L 328 | 6854 307 mt 6854 367 L 329 | 6854 3056 mt 6854 2995 L 330 | 6854 307 mt 6854 367 L 331 | 6854 3056 mt 6854 2995 L 332 | 6854 307 mt 6854 367 L 333 | 6854 3056 mt 6854 2995 L 334 | 6854 307 mt 6854 367 L 335 | 6854 3056 mt 6854 2934 L 336 | 6854 307 mt 6854 428 L 337 | 6721 3313 mt 338 | (60) s 339 | 777 3056 mt 898 3056 L 340 | 6854 3056 mt 6732 3056 L 341 | 335 3145 mt 342 | (-10) s 343 | 777 2918 mt 837 2918 L 344 | 6854 2918 mt 6793 2918 L 345 | 777 2781 mt 837 2781 L 346 | 6854 2781 mt 6793 2781 L 347 | 777 2643 mt 837 2643 L 348 | 6854 2643 mt 6793 2643 L 349 | 777 2506 mt 837 2506 L 350 | 6854 2506 mt 6793 2506 L 351 | 777 2368 mt 837 2368 L 352 | 6854 2368 mt 6793 2368 L 353 | 777 2368 mt 837 2368 L 354 | 6854 2368 mt 6793 2368 L 355 | 777 2368 mt 837 2368 L 356 | 6854 2368 mt 6793 2368 L 357 | 777 2368 mt 837 2368 L 358 | 6854 2368 mt 6793 2368 L 359 | 777 2368 mt 837 2368 L 360 | 6854 2368 mt 6793 2368 L 361 | 777 2368 mt 898 2368 L 362 | 6854 2368 mt 6732 2368 L 363 | 469 2457 mt 364 | (-5) s 365 | 777 2231 mt 837 2231 L 366 | 6854 2231 mt 6793 2231 L 367 | 777 2093 mt 837 2093 L 368 | 6854 2093 mt 6793 2093 L 369 | 777 1956 mt 837 1956 L 370 | 6854 1956 mt 6793 1956 L 371 | 777 1818 mt 837 1818 L 372 | 6854 1818 mt 6793 1818 L 373 | 777 1681 mt 837 1681 L 374 | 6854 1681 mt 6793 1681 L 375 | 777 1681 mt 837 1681 L 376 | 6854 1681 mt 6793 1681 L 377 | 777 1681 mt 837 1681 L 378 | 6854 1681 mt 6793 1681 L 379 | 777 1681 mt 837 1681 L 380 | 6854 1681 mt 6793 1681 L 381 | 777 1681 mt 837 1681 L 382 | 6854 1681 mt 6793 1681 L 383 | 777 1681 mt 898 1681 L 384 | 6854 1681 mt 6732 1681 L 385 | 609 1770 mt 386 | (0) s 387 | 777 1544 mt 837 1544 L 388 | 6854 1544 mt 6793 1544 L 389 | 777 1406 mt 837 1406 L 390 | 6854 1406 mt 6793 1406 L 391 | 777 1269 mt 837 1269 L 392 | 6854 1269 mt 6793 1269 L 393 | 777 1131 mt 837 1131 L 394 | 6854 1131 mt 6793 1131 L 395 | 777 994 mt 837 994 L 396 | 6854 994 mt 6793 994 L 397 | 777 994 mt 837 994 L 398 | 6854 994 mt 6793 994 L 399 | 777 994 mt 837 994 L 400 | 6854 994 mt 6793 994 L 401 | 777 994 mt 837 994 L 402 | 6854 994 mt 6793 994 L 403 | 777 994 mt 837 994 L 404 | 6854 994 mt 6793 994 L 405 | 777 994 mt 898 994 L 406 | 6854 994 mt 6732 994 L 407 | 609 1083 mt 408 | (5) s 409 | 777 856 mt 837 856 L 410 | 6854 856 mt 6793 856 L 411 | 777 719 mt 837 719 L 412 | 6854 719 mt 6793 719 L 413 | 777 581 mt 837 581 L 414 | 6854 581 mt 6793 581 L 415 | 777 444 mt 837 444 L 416 | 6854 444 mt 6793 444 L 417 | 777 307 mt 837 307 L 418 | 6854 307 mt 6793 307 L 419 | 777 307 mt 837 307 L 420 | 6854 307 mt 6793 307 L 421 | 777 307 mt 837 307 L 422 | 6854 307 mt 6793 307 L 423 | 777 307 mt 837 307 L 424 | 6854 307 mt 6793 307 L 425 | 777 307 mt 837 307 L 426 | 6854 307 mt 6793 307 L 427 | 777 307 mt 898 307 L 428 | 6854 307 mt 6732 307 L 429 | 476 396 mt 430 | (10) s 431 | 777 3056 mt 6854 3056 L 432 | 777 306 mt 6854 306 L 433 | 777 3056 mt 777 306 L 434 | 6854 3056 mt 6854 306 L 435 | gs 777 307 6078 2750 rc 436 | 30 w 437 | /c8 { 0.160000 0.440000 1.000000 sr} bdef 438 | c8 439 | 10 0 10 -2 10 -4 11 -4 10 -6 10 -8 10 -9 10 -10 440 | 10 -11 10 -13 10 -14 11 -15 10 -17 10 -17 10 -19 10 -21 441 | 10 -21 10 -22 11 -24 10 -25 10 -26 10 -27 10 -28 10 -29 442 | 10 -30 10 -31 11 -32 10 -33 10 -34 10 -34 10 -35 10 -37 443 | 10 -36 10 -38 11 -38 10 -39 10 -39 10 -40 10 -40 10 -41 444 | 10 -42 10 -41 11 -42 10 -42 10 -43 10 -43 10 -43 10 -43 445 | 10 -43 10 -43 777 1681 51 MP stroke 446 | 11 0 10 -2 10 -4 10 -4 10 -6 10 -8 10 -9 10 -10 447 | 11 -11 10 -13 10 -14 10 -15 10 -17 10 -17 10 -19 10 -21 448 | 11 -21 10 -22 10 -24 10 -25 10 -26 10 -27 10 -28 10 -29 449 | 11 -30 10 -31 10 -32 10 -33 10 -34 10 -34 10 -35 11 -37 450 | 10 -36 10 -38 10 -38 10 -39 10 -39 10 -40 10 -40 11 -41 451 | 10 -42 10 -41 10 -42 10 -42 10 -43 10 -43 10 -43 11 -43 452 | 10 -43 10 -43 10 -43 10 -43 10 -43 10 -43 10 -43 11 -43 453 | 10 -42 10 -42 10 -41 10 -42 10 -41 10 -40 11 -40 10 -39 454 | 10 -39 10 -38 10 -38 10 -36 10 -37 10 -35 11 -34 10 -34 455 | 10 -33 10 -32 10 -31 10 -30 10 -29 10 -28 11 -27 10 -26 456 | 10 -25 10 -24 10 -22 10 -21 10 -21 10 -19 11 -17 10 -17 457 | 10 -15 10 -14 10 -13 10 -11 10 -10 10 -9 11 -8 10 -6 458 | 10 -4 10 -4 10 -2 10 -1 10 1 11 2 10 4 10 4 459 | 10 6 10 8 10 9 10 10 10 11 11 13 10 14 10 15 460 | 10 17 10 17 10 19 10 21 10 21 11 22 10 24 10 25 461 | 10 26 10 27 10 28 10 29 10 30 11 31 10 32 10 33 462 | 10 34 10 34 10 35 10 37 10 36 11 38 10 38 10 39 463 | 10 39 10 40 10 40 10 41 11 42 10 41 10 42 10 42 464 | 10 43 10 43 10 43 10 43 11 43 10 43 10 43 10 43 465 | 10 43 10 43 10 43 10 43 11 42 10 42 10 41 10 42 466 | 10 41 10 40 10 40 10 39 11 39 10 38 10 38 10 36 467 | 10 37 10 35 10 34 10 34 11 33 10 32 10 31 10 30 468 | 10 29 10 28 10 27 11 26 10 25 10 24 10 22 10 21 469 | 10 21 10 19 10 17 11 17 10 15 10 14 10 13 10 11 470 | 10 10 10 9 10 8 11 6 10 4 10 4 10 2 10 0 471 | 1283 307 201 MP stroke 472 | 10 0 10 -2 10 -4 10 -4 10 -6 11 -8 10 -9 10 -10 473 | 10 -11 10 -13 10 -14 10 -15 10 -17 11 -17 10 -19 10 -21 474 | 10 -21 10 -22 10 -24 10 -25 10 -26 11 -27 10 -28 10 -29 475 | 10 -30 10 -31 10 -32 10 -33 10 -34 11 -34 10 -35 10 -37 476 | 10 -36 10 -38 10 -38 10 -39 10 -39 11 -40 10 -40 10 -41 477 | 10 -42 10 -41 10 -42 10 -42 11 -43 10 -43 10 -43 10 -43 478 | 10 -43 10 -43 10 -43 10 -43 11 -43 10 -43 10 -43 10 -43 479 | 10 -42 10 -42 10 -41 10 -42 11 -41 10 -40 10 -40 10 -39 480 | 10 -39 10 -38 10 -38 10 -36 11 -37 10 -35 10 -34 10 -34 481 | 10 -33 10 -32 10 -31 11 -30 10 -29 10 -28 10 -27 10 -26 482 | 10 -25 10 -24 10 -22 11 -21 10 -21 10 -19 10 -17 10 -17 483 | 10 -15 10 -14 10 -13 11 -11 10 -10 10 -9 10 -8 10 -6 484 | 10 -4 10 -4 10 -2 11 -1 10 1 10 2 10 4 10 4 485 | 10 6 10 8 10 9 11 10 10 11 10 13 10 14 10 15 486 | 10 17 10 17 11 19 10 21 10 21 10 22 10 24 10 25 487 | 10 26 10 27 11 28 10 29 10 30 10 31 10 32 10 33 488 | 10 34 10 34 11 35 10 37 10 36 10 38 10 38 10 39 489 | 10 39 10 40 11 40 10 41 10 42 10 41 10 42 10 42 490 | 10 43 10 43 11 43 10 43 10 43 10 43 10 43 10 43 491 | 10 43 11 43 10 43 10 43 10 42 10 42 10 41 10 42 492 | 10 41 11 40 10 40 10 39 10 39 10 38 10 38 10 36 493 | 10 37 11 35 10 34 10 34 10 33 10 32 10 31 10 30 494 | 10 29 11 28 10 27 10 26 10 25 10 24 10 22 10 21 495 | 10 21 11 19 10 17 10 17 10 15 10 14 10 13 10 11 496 | 11 10 10 9 10 8 10 6 10 4 10 4 10 2 10 0 497 | 3309 307 201 MP stroke 498 | 11 -43 10 -43 10 -43 10 -43 10 -43 10 -43 10 -42 11 -42 499 | 10 -41 10 -42 10 -41 10 -40 10 -40 10 -39 10 -39 11 -38 500 | 10 -38 10 -36 10 -37 10 -35 10 -34 10 -34 10 -33 11 -32 501 | 10 -31 10 -30 10 -29 10 -28 10 -27 10 -26 10 -25 11 -24 502 | 10 -22 10 -21 10 -21 10 -19 10 -17 10 -17 11 -15 10 -14 503 | 10 -13 10 -11 10 -10 10 -9 10 -8 10 -6 11 -4 10 -4 504 | 10 -2 10 -1 10 1 10 2 10 4 10 4 11 6 10 8 505 | 10 9 10 10 10 11 10 13 10 14 10 15 11 17 10 17 506 | 10 19 10 21 10 21 10 22 10 24 10 25 11 26 10 27 507 | 10 28 10 29 10 30 10 31 10 32 11 33 10 34 10 34 508 | 10 35 10 37 10 36 10 38 10 38 11 39 10 39 10 40 509 | 10 40 10 41 10 42 10 41 10 42 11 42 10 43 10 43 510 | 10 43 10 43 10 43 10 43 10 43 11 43 10 43 10 43 511 | 10 43 10 43 10 42 10 42 10 41 11 42 10 41 10 40 512 | 10 40 10 39 10 39 10 38 11 38 10 36 10 37 10 35 513 | 10 34 10 34 10 33 10 32 11 31 10 30 10 29 10 28 514 | 10 27 10 26 10 25 10 24 11 22 10 21 10 21 10 19 515 | 10 17 10 17 10 15 10 14 11 13 10 11 10 10 10 9 516 | 10 8 10 6 10 4 10 4 11 2 10 0 5334 307 151 MP stroke 517 | gr 518 | 519 | 30 w 520 | c8 521 | 0 sg 522 | 3176 3544 mt 523 | (Time, t \(ms\)) s 524 | 226 2412 mt -90 rotate 525 | (Voltage, V \(V\)) s 526 | 90 rotate 527 | 18 w 528 | 529 | end %%Color Dict 530 | 531 | eplot 532 | %%EndObject 533 | 534 | epage 535 | end 536 | 537 | showpage 538 | 539 | %%Trailer 540 | %%EOF 541 | -------------------------------------------------------------------------------- /examples/plotSize.m: -------------------------------------------------------------------------------- 1 | % Set box size. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | 7 | % load previously generated fig file 8 | figFile = 'single.fig'; 9 | open(figFile) 10 | 11 | %% change settings 12 | opt.XLabel = 'Time, t (ms)'; % xlabel 13 | opt.YLabel = 'Voltage, V (V)'; %ylabel 14 | opt.BoxDim = [7, 3]; %[width, height] 15 | 16 | % Save? comment the following line if you do not want to save 17 | opt.FileName = 'plotSize.eps'; 18 | 19 | % apply 20 | setPlotProp(opt); 21 | -------------------------------------------------------------------------------- /examples/plotSize.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/plotSize.png -------------------------------------------------------------------------------- /examples/plotSomeOther.m: -------------------------------------------------------------------------------- 1 | clear all; 2 | addpath('../lib'); 3 | 4 | %% lets plot 3 cycles of 50Hz AC voltage 5 | f = 50; 6 | Vm = 10; 7 | phi = 0; 8 | 9 | % generate the signal 10 | t = [0:0.0001:3/f]; 11 | th = 2*pi*f*t; 12 | v = Vm*sin(th+phi); 13 | 14 | %% plot now 15 | plotx{1} = t*1E3; %convert time in ms and create a cell array 16 | ploty{1} = v; % assign v to a cell array 17 | opt.XLabel = 'Time, t (ms)'; % xlabel 18 | opt.YLabel = 'Voltage, V (V)'; %ylabel 19 | opt.YTick = [-10, 0, 10]; %[tick1, tick2, .. ] 20 | opt.YLim = [-11, 11]; % [min, max] 21 | opt.XMinorTick = 'off'; % 'on' or 'off' 22 | opt.Colors = [1, 0, 0]; %[red, green, blue] 23 | 24 | % Save? comment the following line if you do not want to save 25 | opt.FileName = 'plotVoltSomeOther.tiff'; 26 | 27 | % create the plot 28 | plotPub(plotx, ploty, 1,opt); 29 | -------------------------------------------------------------------------------- /examples/plotVoltSomeOther.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/plotVoltSomeOther.tiff -------------------------------------------------------------------------------- /examples/single.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/single.fig -------------------------------------------------------------------------------- /examples/ugly.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples/ugly.png -------------------------------------------------------------------------------- /examples_class/multiple.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples_class/multiple.fig -------------------------------------------------------------------------------- /examples_class/plotAxisLimit.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples_class/plotAxisLimit.jpg -------------------------------------------------------------------------------- /examples_class/plotAxislim.m: -------------------------------------------------------------------------------- 1 | % Set axes limit. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | %% lets plot 3 cycles of 50Hz AC voltage 7 | f = 50; 8 | Vm = 10; 9 | phi = 0; 10 | 11 | % generate the signal 12 | t = [0:0.0001:3/f]; 13 | th = 2*pi*f*t; 14 | v = Vm*sin(th+phi); 15 | 16 | %% plot now 17 | plt = Plot(t*1E3, v); 18 | 19 | plt.XLabel = 'Time, t (ms)'; % xlabel 20 | plt.YLabel = 'Voltage, V (V)'; %ylabel 21 | plt.XLim = [0, 40]; % set x axis limit 22 | plt.YLim = [-11, 11]; % set y axis limit 23 | 24 | % Save? comment the following line if you do not want to save 25 | plt.export('plotAxisLimit.jpg'); 26 | -------------------------------------------------------------------------------- /examples_class/plotLineStyle.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-3.0 EPSF-3.0 2 | %%Creator: MATLAB, The MathWorks, Inc. Version 8.2.0.701 (R2013b). Operating System: Darwin 13.4.0 Darwin Kernel Version 13.4.0: Wed Dec 17 19:05:52 PST 2014; root:xnu-2422.115.10~1/RELEASE_X86_64 x86_64. 3 | %%Title: ./plotLineStyle.eps 4 | %%CreationDate: 03/18/2015 22:46:25 5 | %%DocumentNeededFonts: Helvetica 6 | %%DocumentProcessColors: Cyan Magenta Yellow Black 7 | %%LanguageLevel: 2 8 | %%Pages: 1 9 | %%BoundingBox: 32 243 546 532 10 | %%EndComments 11 | 12 | %%BeginProlog 13 | % MathWorks dictionary 14 | /MathWorks 160 dict begin 15 | % definition operators 16 | /bdef {bind def} bind def 17 | /ldef {load def} bind def 18 | /xdef {exch def} bdef 19 | /xstore {exch store} bdef 20 | % operator abbreviations 21 | /c /clip ldef 22 | /cc /concat ldef 23 | /cp /closepath ldef 24 | /gr /grestore ldef 25 | /gs /gsave ldef 26 | /mt /moveto ldef 27 | /np /newpath ldef 28 | /cm /currentmatrix ldef 29 | /sm /setmatrix ldef 30 | /rm /rmoveto ldef 31 | /rl /rlineto ldef 32 | /s {show newpath} bdef 33 | /sc {setcmykcolor} bdef 34 | /sr /setrgbcolor ldef 35 | /sg /setgray ldef 36 | /w /setlinewidth ldef 37 | /j /setlinejoin ldef 38 | /cap /setlinecap ldef 39 | /rc {rectclip} bdef 40 | /rf {rectfill} bdef 41 | % page state control 42 | /pgsv () def 43 | /bpage {/pgsv save def} bdef 44 | /epage {pgsv restore} bdef 45 | /bplot /gsave ldef 46 | /eplot {stroke grestore} bdef 47 | % orientation switch 48 | /portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def 49 | % coordinate system mappings 50 | /dpi2point 0 def 51 | % font control 52 | /FontSize 0 def 53 | /FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0] 54 | makefont setfont} bdef 55 | /reencode {exch dup where {pop load} {pop StandardEncoding} ifelse 56 | exch dup 3 1 roll findfont dup length dict begin 57 | { 1 index /FID ne {def}{pop pop} ifelse } forall 58 | /Encoding exch def currentdict end definefont pop} bdef 59 | /isroman {findfont /CharStrings get /Agrave known} bdef 60 | /FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse 61 | exch FMS} bdef 62 | /csm {1 dpi2point div -1 dpi2point div scale neg translate 63 | dup landscapeMode eq {pop -90 rotate} 64 | {rotateMode eq {90 rotate} if} ifelse} bdef 65 | % line types: solid, dotted, dashed, dotdash 66 | /SO { [] 0 setdash } bdef 67 | /DO { [3 dpi2point mul 3 dpi2point mul] 0 setdash } bdef 68 | /DA { [6 dpi2point mul] 0 setdash } bdef 69 | /DD { [2 dpi2point mul 2 dpi2point mul 6 dpi2point mul 2 dpi2point mul] 0 setdash } bdef 70 | % macros for lines and objects 71 | /L {lineto stroke} bdef 72 | /MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef 73 | /AP {{rlineto} repeat} bdef 74 | /PDlw -1 def 75 | /W {/PDlw currentlinewidth def setlinewidth} def 76 | /PP {closepath eofill} bdef 77 | /DP {closepath stroke} bdef 78 | /MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto 79 | neg 0 exch rlineto closepath} bdef 80 | /FR {MR stroke} bdef 81 | /PR {MR fill} bdef 82 | /L1i {{currentfile picstr readhexstring pop} image} bdef 83 | /tMatrix matrix def 84 | /MakeOval {newpath tMatrix currentmatrix pop translate scale 85 | 0 0 1 0 360 arc tMatrix setmatrix} bdef 86 | /FO {MakeOval stroke} bdef 87 | /PO {MakeOval fill} bdef 88 | /PD {currentlinewidth 2 div 0 360 arc fill 89 | PDlw -1 eq not {PDlw w /PDlw -1 def} if} def 90 | /FA {newpath tMatrix currentmatrix pop translate scale 91 | 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef 92 | /PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 93 | 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef 94 | /FAn {newpath tMatrix currentmatrix pop translate scale 95 | 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef 96 | /PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 97 | 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef 98 | /vradius 0 def /hradius 0 def /lry 0 def 99 | /lrx 0 def /uly 0 def /ulx 0 def /rad 0 def 100 | /MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef 101 | /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly 102 | vradius add translate hradius vradius scale 0 0 1 180 270 arc 103 | tMatrix setmatrix lrx hradius sub uly vradius add translate 104 | hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix 105 | lrx hradius sub lry vradius sub translate hradius vradius scale 106 | 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub 107 | translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix 108 | closepath} bdef 109 | /FRR {MRR stroke } bdef 110 | /PRR {MRR fill } bdef 111 | /MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def 112 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 113 | rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad 114 | sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix 115 | closepath} bdef 116 | /FlrRR {MlrRR stroke } bdef 117 | /PlrRR {MlrRR fill } bdef 118 | /MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def 119 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 120 | rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad 121 | sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix 122 | closepath} bdef 123 | /FtbRR {MtbRR stroke } bdef 124 | /PtbRR {MtbRR fill } bdef 125 | /stri 6 array def /dtri 6 array def 126 | /smat 6 array def /dmat 6 array def 127 | /tmat1 6 array def /tmat2 6 array def /dif 3 array def 128 | /asub {/ind2 exch def /ind1 exch def dup dup 129 | ind1 get exch ind2 get sub exch } bdef 130 | /tri_to_matrix { 131 | 2 0 asub 3 1 asub 4 0 asub 5 1 asub 132 | dup 0 get exch 1 get 7 -1 roll astore } bdef 133 | /compute_transform { 134 | dmat dtri tri_to_matrix tmat1 invertmatrix 135 | smat stri tri_to_matrix tmat2 concatmatrix } bdef 136 | /ds {stri astore pop} bdef 137 | /dt {dtri astore pop} bdef 138 | /db {2 copy /cols xdef /rows xdef mul dup 3 mul string 139 | currentfile 140 | 3 index 0 eq {/ASCIIHexDecode filter} 141 | {/ASCII85Decode filter 3 index 2 eq {/RunLengthDecode filter} if } 142 | ifelse exch readstring pop 143 | dup 0 3 index getinterval /rbmap xdef 144 | dup 2 index dup getinterval /gbmap xdef 145 | 1 index dup 2 mul exch getinterval /bbmap xdef pop pop}bdef 146 | /it {gs np dtri aload pop moveto lineto lineto cp c 147 | cols rows 8 compute_transform 148 | rbmap gbmap bbmap true 3 colorimage gr}bdef 149 | /il {newpath moveto lineto stroke}bdef 150 | currentdict end def 151 | %%EndProlog 152 | 153 | %%BeginSetup 154 | MathWorks begin 155 | 156 | 0 cap 157 | 158 | end 159 | %%EndSetup 160 | 161 | %%Page: 1 1 162 | %%BeginPageSetup 163 | %%PageBoundingBox: 32 243 546 532 164 | MathWorks begin 165 | bpage 166 | %%EndPageSetup 167 | 168 | %%BeginObject: obj1 169 | bplot 170 | 171 | /dpi2point 12 def 172 | portraitMode 0312 6588 csm 173 | 174 | 73 196 6167 3471 rc 175 | 85 dict begin %Colortable dictionary 176 | /c0 { 0.000000 0.000000 0.000000 sr} bdef 177 | /c1 { 1.000000 1.000000 1.000000 sr} bdef 178 | /c2 { 0.900000 0.000000 0.000000 sr} bdef 179 | /c3 { 0.000000 0.820000 0.000000 sr} bdef 180 | /c4 { 0.000000 0.000000 0.800000 sr} bdef 181 | /c5 { 0.910000 0.820000 0.320000 sr} bdef 182 | /c6 { 1.000000 0.260000 0.820000 sr} bdef 183 | /c7 { 0.000000 0.820000 0.820000 sr} bdef 184 | c0 185 | 1 j 186 | 1 sg 187 | 0 0 6709 3668 rf 188 | 18 w 189 | 0 2733 5184 0 0 -2733 872 3113 4 MP 190 | PP 191 | -5184 0 0 2733 5184 0 0 -2733 872 3113 5 MP stroke 192 | 12 w 193 | DO 194 | SO 195 | 18 w 196 | 0 sg 197 | 872 3113 mt 6056 3113 L 198 | 872 380 mt 6056 380 L 199 | 872 3113 mt 872 380 L 200 | 6056 3113 mt 6056 380 L 201 | 872 3113 mt 6056 3113 L 202 | 872 3113 mt 872 380 L 203 | 872 3113 mt 872 3009 L 204 | 872 380 mt 872 483 L 205 | %%IncludeResource: font Helvetica 206 | /Helvetica /ISOLatin1Encoding 240 FMSR 207 | 208 | 806 3370 mt 209 | (0) s 210 | 1044 3113 mt 1044 3061 L 211 | 1044 380 mt 1044 431 L 212 | 1217 3113 mt 1217 3061 L 213 | 1217 380 mt 1217 431 L 214 | 1390 3113 mt 1390 3061 L 215 | 1390 380 mt 1390 431 L 216 | 1563 3113 mt 1563 3061 L 217 | 1563 380 mt 1563 431 L 218 | 1736 3113 mt 1736 3061 L 219 | 1736 380 mt 1736 431 L 220 | 1736 3113 mt 1736 3061 L 221 | 1736 380 mt 1736 431 L 222 | 1736 3113 mt 1736 3061 L 223 | 1736 380 mt 1736 431 L 224 | 1736 3113 mt 1736 3061 L 225 | 1736 380 mt 1736 431 L 226 | 1736 3113 mt 1736 3061 L 227 | 1736 380 mt 1736 431 L 228 | 1736 3113 mt 1736 3009 L 229 | 1736 380 mt 1736 483 L 230 | 1603 3370 mt 231 | (10) s 232 | 1908 3113 mt 1908 3061 L 233 | 1908 380 mt 1908 431 L 234 | 2081 3113 mt 2081 3061 L 235 | 2081 380 mt 2081 431 L 236 | 2254 3113 mt 2254 3061 L 237 | 2254 380 mt 2254 431 L 238 | 2427 3113 mt 2427 3061 L 239 | 2427 380 mt 2427 431 L 240 | 2600 3113 mt 2600 3061 L 241 | 2600 380 mt 2600 431 L 242 | 2600 3113 mt 2600 3061 L 243 | 2600 380 mt 2600 431 L 244 | 2600 3113 mt 2600 3061 L 245 | 2600 380 mt 2600 431 L 246 | 2600 3113 mt 2600 3061 L 247 | 2600 380 mt 2600 431 L 248 | 2600 3113 mt 2600 3061 L 249 | 2600 380 mt 2600 431 L 250 | 2600 3113 mt 2600 3009 L 251 | 2600 380 mt 2600 483 L 252 | 2467 3370 mt 253 | (20) s 254 | 2772 3113 mt 2772 3061 L 255 | 2772 380 mt 2772 431 L 256 | 2945 3113 mt 2945 3061 L 257 | 2945 380 mt 2945 431 L 258 | 3118 3113 mt 3118 3061 L 259 | 3118 380 mt 3118 431 L 260 | 3291 3113 mt 3291 3061 L 261 | 3291 380 mt 3291 431 L 262 | 3464 3113 mt 3464 3061 L 263 | 3464 380 mt 3464 431 L 264 | 3464 3113 mt 3464 3061 L 265 | 3464 380 mt 3464 431 L 266 | 3464 3113 mt 3464 3061 L 267 | 3464 380 mt 3464 431 L 268 | 3464 3113 mt 3464 3061 L 269 | 3464 380 mt 3464 431 L 270 | 3464 3113 mt 3464 3061 L 271 | 3464 380 mt 3464 431 L 272 | 3464 3113 mt 3464 3009 L 273 | 3464 380 mt 3464 483 L 274 | 3331 3370 mt 275 | (30) s 276 | 3636 3113 mt 3636 3061 L 277 | 3636 380 mt 3636 431 L 278 | 3809 3113 mt 3809 3061 L 279 | 3809 380 mt 3809 431 L 280 | 3982 3113 mt 3982 3061 L 281 | 3982 380 mt 3982 431 L 282 | 4155 3113 mt 4155 3061 L 283 | 4155 380 mt 4155 431 L 284 | 4328 3113 mt 4328 3061 L 285 | 4328 380 mt 4328 431 L 286 | 4328 3113 mt 4328 3061 L 287 | 4328 380 mt 4328 431 L 288 | 4328 3113 mt 4328 3061 L 289 | 4328 380 mt 4328 431 L 290 | 4328 3113 mt 4328 3061 L 291 | 4328 380 mt 4328 431 L 292 | 4328 3113 mt 4328 3061 L 293 | 4328 380 mt 4328 431 L 294 | 4328 3113 mt 4328 3009 L 295 | 4328 380 mt 4328 483 L 296 | 4195 3370 mt 297 | (40) s 298 | 4500 3113 mt 4500 3061 L 299 | 4500 380 mt 4500 431 L 300 | 4673 3113 mt 4673 3061 L 301 | 4673 380 mt 4673 431 L 302 | 4846 3113 mt 4846 3061 L 303 | 4846 380 mt 4846 431 L 304 | 5019 3113 mt 5019 3061 L 305 | 5019 380 mt 5019 431 L 306 | 5192 3113 mt 5192 3061 L 307 | 5192 380 mt 5192 431 L 308 | 5192 3113 mt 5192 3061 L 309 | 5192 380 mt 5192 431 L 310 | 5192 3113 mt 5192 3061 L 311 | 5192 380 mt 5192 431 L 312 | 5192 3113 mt 5192 3061 L 313 | 5192 380 mt 5192 431 L 314 | 5192 3113 mt 5192 3061 L 315 | 5192 380 mt 5192 431 L 316 | 5192 3113 mt 5192 3009 L 317 | 5192 380 mt 5192 483 L 318 | 5059 3370 mt 319 | (50) s 320 | 5364 3113 mt 5364 3061 L 321 | 5364 380 mt 5364 431 L 322 | 5537 3113 mt 5537 3061 L 323 | 5537 380 mt 5537 431 L 324 | 5710 3113 mt 5710 3061 L 325 | 5710 380 mt 5710 431 L 326 | 5883 3113 mt 5883 3061 L 327 | 5883 380 mt 5883 431 L 328 | 6056 3113 mt 6056 3061 L 329 | 6056 380 mt 6056 431 L 330 | 6056 3113 mt 6056 3061 L 331 | 6056 380 mt 6056 431 L 332 | 6056 3113 mt 6056 3061 L 333 | 6056 380 mt 6056 431 L 334 | 6056 3113 mt 6056 3061 L 335 | 6056 380 mt 6056 431 L 336 | 6056 3113 mt 6056 3061 L 337 | 6056 380 mt 6056 431 L 338 | 6056 3113 mt 6056 3009 L 339 | 6056 380 mt 6056 483 L 340 | 5923 3370 mt 341 | (60) s 342 | 872 3113 mt 975 3113 L 343 | 6056 3113 mt 5952 3113 L 344 | 430 3202 mt 345 | (-10) s 346 | 872 2976 mt 923 2976 L 347 | 6056 2976 mt 6004 2976 L 348 | 872 2839 mt 923 2839 L 349 | 6056 2839 mt 6004 2839 L 350 | 872 2703 mt 923 2703 L 351 | 6056 2703 mt 6004 2703 L 352 | 872 2566 mt 923 2566 L 353 | 6056 2566 mt 6004 2566 L 354 | 872 2429 mt 923 2429 L 355 | 6056 2429 mt 6004 2429 L 356 | 872 2429 mt 923 2429 L 357 | 6056 2429 mt 6004 2429 L 358 | 872 2429 mt 923 2429 L 359 | 6056 2429 mt 6004 2429 L 360 | 872 2429 mt 923 2429 L 361 | 6056 2429 mt 6004 2429 L 362 | 872 2429 mt 923 2429 L 363 | 6056 2429 mt 6004 2429 L 364 | 872 2429 mt 975 2429 L 365 | 6056 2429 mt 5952 2429 L 366 | 564 2518 mt 367 | (-5) s 368 | 872 2293 mt 923 2293 L 369 | 6056 2293 mt 6004 2293 L 370 | 872 2156 mt 923 2156 L 371 | 6056 2156 mt 6004 2156 L 372 | 872 2019 mt 923 2019 L 373 | 6056 2019 mt 6004 2019 L 374 | 872 1883 mt 923 1883 L 375 | 6056 1883 mt 6004 1883 L 376 | 872 1746 mt 923 1746 L 377 | 6056 1746 mt 6004 1746 L 378 | 872 1746 mt 923 1746 L 379 | 6056 1746 mt 6004 1746 L 380 | 872 1746 mt 923 1746 L 381 | 6056 1746 mt 6004 1746 L 382 | 872 1746 mt 923 1746 L 383 | 6056 1746 mt 6004 1746 L 384 | 872 1746 mt 923 1746 L 385 | 6056 1746 mt 6004 1746 L 386 | 872 1746 mt 975 1746 L 387 | 6056 1746 mt 5952 1746 L 388 | 704 1835 mt 389 | (0) s 390 | 872 1609 mt 923 1609 L 391 | 6056 1609 mt 6004 1609 L 392 | 872 1473 mt 923 1473 L 393 | 6056 1473 mt 6004 1473 L 394 | 872 1336 mt 923 1336 L 395 | 6056 1336 mt 6004 1336 L 396 | 872 1199 mt 923 1199 L 397 | 6056 1199 mt 6004 1199 L 398 | 872 1063 mt 923 1063 L 399 | 6056 1063 mt 6004 1063 L 400 | 872 1063 mt 923 1063 L 401 | 6056 1063 mt 6004 1063 L 402 | 872 1063 mt 923 1063 L 403 | 6056 1063 mt 6004 1063 L 404 | 872 1063 mt 923 1063 L 405 | 6056 1063 mt 6004 1063 L 406 | 872 1063 mt 923 1063 L 407 | 6056 1063 mt 6004 1063 L 408 | 872 1063 mt 975 1063 L 409 | 6056 1063 mt 5952 1063 L 410 | 704 1152 mt 411 | (5) s 412 | 872 926 mt 923 926 L 413 | 6056 926 mt 6004 926 L 414 | 872 789 mt 923 789 L 415 | 6056 789 mt 6004 789 L 416 | 872 653 mt 923 653 L 417 | 6056 653 mt 6004 653 L 418 | 872 516 mt 923 516 L 419 | 6056 516 mt 6004 516 L 420 | 872 380 mt 923 380 L 421 | 6056 380 mt 6004 380 L 422 | 872 380 mt 923 380 L 423 | 6056 380 mt 6004 380 L 424 | 872 380 mt 923 380 L 425 | 6056 380 mt 6004 380 L 426 | 872 380 mt 923 380 L 427 | 6056 380 mt 6004 380 L 428 | 872 380 mt 923 380 L 429 | 6056 380 mt 6004 380 L 430 | 872 380 mt 975 380 L 431 | 6056 380 mt 5952 380 L 432 | 571 469 mt 433 | (10) s 434 | 872 3113 mt 6056 3113 L 435 | 872 380 mt 6056 380 L 436 | 872 3113 mt 872 380 L 437 | 6056 3113 mt 6056 380 L 438 | gs 872 380 5185 2734 rc 439 | DA 440 | 24 w 441 | 9 -43 9 -43 8 -43 9 -42 9 -43 8 -42 9 -42 9 -42 442 | 8 -41 9 -41 9 -41 8 -40 9 -40 8 -39 9 -38 9 -38 443 | 8 -38 9 -36 9 -36 8 -35 9 -35 9 -33 8 -33 9 -31 444 | 8 -31 9 -30 9 -29 8 -28 9 -27 9 -26 8 -24 9 -24 445 | 9 -22 8 -21 9 -21 9 -18 8 -18 9 -17 8 -15 9 -14 446 | 9 -12 8 -12 9 -10 9 -8 8 -8 9 -6 9 -4 8 -4 447 | 9 -2 8 -1 9 1 9 2 8 4 9 4 9 6 8 8 448 | 9 8 9 10 8 12 9 12 9 14 8 15 9 17 8 18 449 | 9 18 9 21 8 21 9 22 9 24 8 24 9 26 9 27 450 | 8 28 9 29 8 30 9 31 9 31 8 33 9 33 9 35 451 | 8 35 9 36 9 36 8 38 9 38 9 38 8 39 9 40 452 | 8 40 9 41 9 41 8 41 9 42 9 42 8 42 9 43 453 | 9 42 8 43 9 43 8 43 9 43 9 43 8 43 9 42 454 | 9 43 8 42 9 42 9 42 8 41 9 41 9 41 8 40 455 | 9 40 8 39 9 38 9 38 8 38 9 36 9 36 8 35 456 | 9 35 9 33 8 33 9 31 8 31 9 30 9 29 8 28 457 | 9 27 9 26 8 24 9 24 9 22 8 21 9 21 9 18 458 | 8 18 9 17 8 15 9 14 9 12 8 12 9 10 9 8 459 | 8 8 9 6 9 4 8 4 9 2 8 0 9 0 9 -2 460 | 8 -4 9 -4 9 -6 8 -8 9 -8 9 -10 8 -12 9 -12 461 | 9 -14 8 -15 9 -17 8 -18 9 -18 9 -21 8 -21 9 -22 462 | 9 -24 8 -24 9 -26 9 -27 8 -28 9 -29 8 -30 9 -31 463 | 9 -31 8 -33 9 -33 9 -35 8 -35 9 -36 9 -36 8 -38 464 | 9 -38 9 -38 8 -39 9 -40 8 -40 9 -41 9 -41 8 -41 465 | 9 -42 9 -42 8 -42 9 -43 9 -42 8 -43 9 -43 8 -43 466 | 9 -43 9 -43 8 -43 9 -42 9 -43 8 -42 9 -42 9 -42 467 | 8 -41 9 -41 9 -41 8 -40 9 -40 8 -39 9 -38 9 -38 468 | 8 -38 9 -36 9 -36 8 -35 9 -35 9 -33 8 -33 9 -31 469 | 8 -31 9 -30 9 -29 8 -28 9 -27 9 -26 8 -24 9 -24 470 | 9 -22 8 -21 9 -21 9 -18 8 -18 9 -17 8 -15 9 -14 471 | 9 -12 8 -12 9 -10 9 -8 8 -8 9 -6 9 -4 8 -4 472 | 9 -2 9 -1 8 1 9 2 8 4 9 4 9 6 8 8 473 | 9 8 9 10 8 12 9 12 9 14 8 15 9 17 8 18 474 | 9 18 9 21 8 21 9 22 9 24 8 24 9 26 9 27 475 | 8 28 9 29 8 30 9 31 9 31 8 33 9 33 9 35 476 | 8 35 9 36 9 36 8 38 9 38 9 38 8 39 9 40 477 | 8 40 9 41 9 41 8 41 9 42 9 42 8 42 9 43 478 | 9 42 8 43 9 43 3472 1789 300 MP stroke 479 | 8 43 9 43 9 43 8 43 9 42 9 43 8 42 9 42 480 | 9 42 8 41 9 41 9 41 8 40 9 40 8 39 9 38 481 | 9 38 8 38 9 36 9 36 8 35 9 35 9 33 8 33 482 | 9 31 8 31 9 30 9 29 8 28 9 27 9 26 8 24 483 | 9 24 9 22 8 21 9 21 9 18 8 18 9 17 8 15 484 | 9 14 9 12 8 12 9 10 9 8 8 8 9 6 9 4 485 | 8 4 9 2 8 0 9 0 9 -2 8 -4 9 -4 9 -6 486 | 8 -8 9 -8 9 -10 8 -12 9 -12 9 -14 8 -15 9 -17 487 | 8 -18 9 -18 9 -21 8 -21 9 -22 9 -24 8 -24 9 -26 488 | 9 -27 8 -28 9 -29 8 -30 9 -31 9 -31 8 -33 9 -33 489 | 9 -35 8 -35 9 -36 9 -36 8 -38 9 -38 9 -38 8 -39 490 | 9 -40 8 -40 9 -41 9 -41 8 -41 9 -42 9 -42 8 -42 491 | 9 -43 9 -42 8 -43 9 -43 8 -43 9 -43 9 -43 8 -43 492 | 9 -42 9 -43 8 -42 9 -42 9 -42 8 -41 9 -41 9 -41 493 | 8 -40 9 -40 8 -39 9 -38 9 -38 8 -38 9 -36 9 -36 494 | 8 -35 9 -35 9 -33 8 -33 9 -31 8 -31 9 -30 9 -29 495 | 8 -28 9 -27 9 -26 8 -24 9 -24 9 -22 8 -21 9 -21 496 | 9 -18 8 -18 9 -17 8 -15 9 -14 9 -12 8 -12 9 -10 497 | 9 -8 8 -8 9 -6 9 -4 8 -4 9 -2 8 -1 9 1 498 | 9 2 8 4 9 4 9 6 8 8 9 8 9 10 8 12 499 | 9 12 9 14 8 15 9 17 8 18 9 18 9 21 8 21 500 | 9 22 9 24 8 24 9 26 9 27 8 28 9 29 8 30 501 | 9 31 9 31 8 33 9 33 9 35 8 35 9 36 9 36 502 | 8 38 9 38 9 38 8 39 9 40 8 40 9 41 9 41 503 | 8 41 9 42 9 42 8 42 9 43 9 42 8 43 9 43 504 | 8 43 9 43 9 43 8 43 9 42 9 43 8 42 9 42 505 | 9 42 8 41 9 41 9 41 8 40 9 40 8 39 9 38 506 | 9 38 8 38 9 36 9 36 8 35 9 35 9 33 8 33 507 | 9 31 8 31 9 30 9 29 8 28 9 27 9 26 8 24 508 | 9 24 9 22 8 21 9 21 9 18 8 18 9 17 8 15 509 | 9 14 9 12 8 12 9 10 9 8 8 8 9 6 9 4 510 | 8 4 9 2 8 0 9 0 9 -2 8 -4 9 -4 9 -6 511 | 8 -8 9 -8 9 -10 8 -12 9 -12 9 -14 8 -15 9 -17 512 | 8 -18 9 -18 9 -21 8 -21 9 -22 9 -24 8 -24 9 -26 513 | 9 -27 8 -28 9 -29 8 -30 9 -31 9 -31 8 -33 9 -33 514 | 9 -35 8 -35 9 -36 9 -36 8 -38 9 -38 9 -38 8 -39 515 | 9 -40 8 -40 9 -41 9 -41 8 -41 9 -42 9 -42 8 -42 516 | 9 -43 9 -42 8 -43 889 1660 300 MP stroke 517 | 9 -43 8 -43 872 1746 3 MP stroke 518 | gr 519 | 520 | 24 w 521 | DA 522 | 2825 3601 mt 523 | (Time, t \(ms\)) s 524 | 321 2477 mt -90 rotate 525 | (Voltage, V \(V\)) s 526 | 90 rotate 527 | SO 528 | 18 w 529 | 530 | end %%Color Dict 531 | 532 | eplot 533 | %%EndObject 534 | 535 | epage 536 | end 537 | 538 | showpage 539 | 540 | %%Trailer 541 | %%EOF 542 | -------------------------------------------------------------------------------- /examples_class/plotLineStyle.m: -------------------------------------------------------------------------------- 1 | % Set line style, line width, and color. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | % load previously generated fig file 7 | figFile = 'single.fig'; 8 | plt = Plot(figFile); 9 | 10 | %% ettings 11 | plt.XLabel = 'Time, t (ms)'; % xlabel 12 | plt.YLabel = 'Voltage, V (V)'; %ylabel 13 | plt.Colors = {[0, 0, 0]}; % change plot color 14 | plt.LineWidth = 2; % line width 15 | plt.LineStyle = {'--'}; % line style 16 | 17 | % Save? comment the following line if you do not want to save 18 | plt.export('plotLineStyle.png'); 19 | 20 | -------------------------------------------------------------------------------- /examples_class/plotLineStyle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples_class/plotLineStyle.png -------------------------------------------------------------------------------- /examples_class/plotMarker.m: -------------------------------------------------------------------------------- 1 | clear all; 2 | 3 | 4 | % load previously generated fig file 5 | figFile = 'multiple.fig'; 6 | plt = Plot(figFile); 7 | 8 | % change properties 9 | plt.XLabel = 'Time, t (ms)'; % xlabel 10 | plt.YLabel = 'Voltage, V (V)'; %ylabel 11 | plt.YTick = [-10, 0, 10]; %[tick1, tick2, .. ] 12 | plt.XLim = [0, 80]; % [min, max] 13 | plt.YLim = [-11, 11]; % [min, max] 14 | 15 | plt.Colors = { % three colors for three data set 16 | [ 1, 0, 0] 17 | [ 0.25, 0.25, 0.25] 18 | [ 0, 0, 1] 19 | }; 20 | 21 | plt.LineWidth = [2, 2, 2]; % three line widths 22 | plt.LineStyle = {'-', '-', '-'}; % three line styles 23 | plt.Markers = {'o', '', 's'}; 24 | plt.MarkerSpacing = [15, 15, 15]; 25 | plt.Legend = {'\theta = 0^o', '\theta = 45^o', '\theta = 90^o'}; % legends 26 | 27 | % Save? comment the following line if you do not want to save 28 | plt.export('plotMarkers.png'); 29 | 30 | -------------------------------------------------------------------------------- /examples_class/plotMarkers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples_class/plotMarkers.png -------------------------------------------------------------------------------- /examples_class/plotMultiple.m: -------------------------------------------------------------------------------- 1 | % Multiple plots using plotPub 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | %% lets plot 3 cycles of 50Hz AC voltage 7 | f = 50; 8 | Vm = 10; 9 | phi = pi/4; 10 | 11 | % generate the signal 12 | t = [0:0.0001:3/f]; 13 | th = 2*pi*f*t; 14 | v1 = Vm*sin(th); 15 | v2 = Vm*sin(th - phi); 16 | v3 = Vm*sin(th - phi*2); 17 | 18 | %% plot and settings 19 | plt = Plot(t*1E3, v1, t*1E3, v2, t*1E3, v3); 20 | 21 | plt.XLabel = 'Time, t (ms)'; % xlabel 22 | plt.YLabel = 'Voltage, V (V)'; %ylabel 23 | plt.YTick = [-10, 0, 10]; 24 | plt.YLim = [-11, 11]; 25 | 26 | % Save? comment the following line if you do not want to save 27 | plt.export('plotMultiple.png'); 28 | 29 | -------------------------------------------------------------------------------- /examples_class/plotMultiple.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples_class/plotMultiple.png -------------------------------------------------------------------------------- /examples_class/plotMultiple.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples_class/plotMultiple.tiff -------------------------------------------------------------------------------- /examples_class/plotMultiple2.m: -------------------------------------------------------------------------------- 1 | % Multiple plots using setPlotProp. Sets color, legend, line style, tick 2 | % etc. 3 | 4 | clear all; 5 | addpath('../lib'); 6 | 7 | %% lets plot 3 cycles of 50Hz AC voltage 8 | f = 50; 9 | Vm = 10; 10 | phi = pi/4; 11 | 12 | % generate the signal 13 | t = [0:0.0001:3/f]; 14 | th = 2*pi*f*t; 15 | v1 = Vm*sin(th); 16 | v2 = Vm*sin(th - phi); 17 | v3 = Vm*sin(th - phi*2); 18 | 19 | figure; 20 | plot(t*1E3, v1); 21 | hold on; 22 | plot(t*1E3, v2); 23 | plot(t*1E3, v3); 24 | hold off; 25 | 26 | %% change properties 27 | plt = Plot(); 28 | plt.XLabel = 'Time, t (ms)'; % xlabel 29 | plt.YLabel = 'Voltage, V (V)'; %ylabel 30 | plt.YTick = [-10, 0, 10]; %[tick1, tick2, .. ] 31 | plt.XLim = [0, 80]; % [min, max] 32 | plt.YLim = [-11, 11]; % [min, max] 33 | 34 | plt.Colors = { % three colors for three data set 35 | [ 1, 0, 0] 36 | [ 0.25, 0.25, 0.25] 37 | [ 0, 0, 1] 38 | }; 39 | 40 | plt.LineWidth = [2, 2, 2]; % three line widths 41 | plt.LineStyle = {'-', ':', '--'}; % three line styles 42 | plt.Legend = {'\theta = 0^o', '\theta = 45^o', '\theta = 90^o'}; % legends 43 | 44 | % Save? comment the following line if you do not want to save 45 | plt.export('plotMultiple2.eps'); 46 | 47 | -------------------------------------------------------------------------------- /examples_class/plotSimple.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-3.0 EPSF-3.0 2 | %%Creator: MATLAB, The MathWorks, Inc. Version 8.2.0.701 (R2013b). Operating System: Darwin 13.4.0 Darwin Kernel Version 13.4.0: Wed Dec 17 19:05:52 PST 2014; root:xnu-2422.115.10~1/RELEASE_X86_64 x86_64. 3 | %%Title: ./plotSimple.eps 4 | %%CreationDate: 03/18/2015 20:08:19 5 | %%DocumentNeededFonts: Helvetica 6 | %%DocumentProcessColors: Cyan Magenta Yellow Black 7 | %%LanguageLevel: 2 8 | %%Pages: 1 9 | %%BoundingBox: 32 243 546 532 10 | %%EndComments 11 | 12 | %%BeginProlog 13 | % MathWorks dictionary 14 | /MathWorks 160 dict begin 15 | % definition operators 16 | /bdef {bind def} bind def 17 | /ldef {load def} bind def 18 | /xdef {exch def} bdef 19 | /xstore {exch store} bdef 20 | % operator abbreviations 21 | /c /clip ldef 22 | /cc /concat ldef 23 | /cp /closepath ldef 24 | /gr /grestore ldef 25 | /gs /gsave ldef 26 | /mt /moveto ldef 27 | /np /newpath ldef 28 | /cm /currentmatrix ldef 29 | /sm /setmatrix ldef 30 | /rm /rmoveto ldef 31 | /rl /rlineto ldef 32 | /s {show newpath} bdef 33 | /sc {setcmykcolor} bdef 34 | /sr /setrgbcolor ldef 35 | /sg /setgray ldef 36 | /w /setlinewidth ldef 37 | /j /setlinejoin ldef 38 | /cap /setlinecap ldef 39 | /rc {rectclip} bdef 40 | /rf {rectfill} bdef 41 | % page state control 42 | /pgsv () def 43 | /bpage {/pgsv save def} bdef 44 | /epage {pgsv restore} bdef 45 | /bplot /gsave ldef 46 | /eplot {stroke grestore} bdef 47 | % orientation switch 48 | /portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def 49 | % coordinate system mappings 50 | /dpi2point 0 def 51 | % font control 52 | /FontSize 0 def 53 | /FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0] 54 | makefont setfont} bdef 55 | /reencode {exch dup where {pop load} {pop StandardEncoding} ifelse 56 | exch dup 3 1 roll findfont dup length dict begin 57 | { 1 index /FID ne {def}{pop pop} ifelse } forall 58 | /Encoding exch def currentdict end definefont pop} bdef 59 | /isroman {findfont /CharStrings get /Agrave known} bdef 60 | /FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse 61 | exch FMS} bdef 62 | /csm {1 dpi2point div -1 dpi2point div scale neg translate 63 | dup landscapeMode eq {pop -90 rotate} 64 | {rotateMode eq {90 rotate} if} ifelse} bdef 65 | % line types: solid, dotted, dashed, dotdash 66 | /SO { [] 0 setdash } bdef 67 | /DO { [3 dpi2point mul 3 dpi2point mul] 0 setdash } bdef 68 | /DA { [6 dpi2point mul] 0 setdash } bdef 69 | /DD { [2 dpi2point mul 2 dpi2point mul 6 dpi2point mul 2 dpi2point mul] 0 setdash } bdef 70 | % macros for lines and objects 71 | /L {lineto stroke} bdef 72 | /MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef 73 | /AP {{rlineto} repeat} bdef 74 | /PDlw -1 def 75 | /W {/PDlw currentlinewidth def setlinewidth} def 76 | /PP {closepath eofill} bdef 77 | /DP {closepath stroke} bdef 78 | /MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto 79 | neg 0 exch rlineto closepath} bdef 80 | /FR {MR stroke} bdef 81 | /PR {MR fill} bdef 82 | /L1i {{currentfile picstr readhexstring pop} image} bdef 83 | /tMatrix matrix def 84 | /MakeOval {newpath tMatrix currentmatrix pop translate scale 85 | 0 0 1 0 360 arc tMatrix setmatrix} bdef 86 | /FO {MakeOval stroke} bdef 87 | /PO {MakeOval fill} bdef 88 | /PD {currentlinewidth 2 div 0 360 arc fill 89 | PDlw -1 eq not {PDlw w /PDlw -1 def} if} def 90 | /FA {newpath tMatrix currentmatrix pop translate scale 91 | 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef 92 | /PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 93 | 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef 94 | /FAn {newpath tMatrix currentmatrix pop translate scale 95 | 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef 96 | /PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 97 | 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef 98 | /vradius 0 def /hradius 0 def /lry 0 def 99 | /lrx 0 def /uly 0 def /ulx 0 def /rad 0 def 100 | /MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef 101 | /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly 102 | vradius add translate hradius vradius scale 0 0 1 180 270 arc 103 | tMatrix setmatrix lrx hradius sub uly vradius add translate 104 | hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix 105 | lrx hradius sub lry vradius sub translate hradius vradius scale 106 | 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub 107 | translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix 108 | closepath} bdef 109 | /FRR {MRR stroke } bdef 110 | /PRR {MRR fill } bdef 111 | /MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def 112 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 113 | rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad 114 | sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix 115 | closepath} bdef 116 | /FlrRR {MlrRR stroke } bdef 117 | /PlrRR {MlrRR fill } bdef 118 | /MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def 119 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 120 | rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad 121 | sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix 122 | closepath} bdef 123 | /FtbRR {MtbRR stroke } bdef 124 | /PtbRR {MtbRR fill } bdef 125 | /stri 6 array def /dtri 6 array def 126 | /smat 6 array def /dmat 6 array def 127 | /tmat1 6 array def /tmat2 6 array def /dif 3 array def 128 | /asub {/ind2 exch def /ind1 exch def dup dup 129 | ind1 get exch ind2 get sub exch } bdef 130 | /tri_to_matrix { 131 | 2 0 asub 3 1 asub 4 0 asub 5 1 asub 132 | dup 0 get exch 1 get 7 -1 roll astore } bdef 133 | /compute_transform { 134 | dmat dtri tri_to_matrix tmat1 invertmatrix 135 | smat stri tri_to_matrix tmat2 concatmatrix } bdef 136 | /ds {stri astore pop} bdef 137 | /dt {dtri astore pop} bdef 138 | /db {2 copy /cols xdef /rows xdef mul dup 3 mul string 139 | currentfile 140 | 3 index 0 eq {/ASCIIHexDecode filter} 141 | {/ASCII85Decode filter 3 index 2 eq {/RunLengthDecode filter} if } 142 | ifelse exch readstring pop 143 | dup 0 3 index getinterval /rbmap xdef 144 | dup 2 index dup getinterval /gbmap xdef 145 | 1 index dup 2 mul exch getinterval /bbmap xdef pop pop}bdef 146 | /it {gs np dtri aload pop moveto lineto lineto cp c 147 | cols rows 8 compute_transform 148 | rbmap gbmap bbmap true 3 colorimage gr}bdef 149 | /il {newpath moveto lineto stroke}bdef 150 | currentdict end def 151 | %%EndProlog 152 | 153 | %%BeginSetup 154 | MathWorks begin 155 | 156 | 0 cap 157 | 158 | end 159 | %%EndSetup 160 | 161 | %%Page: 1 1 162 | %%BeginPageSetup 163 | %%PageBoundingBox: 32 243 546 532 164 | MathWorks begin 165 | bpage 166 | %%EndPageSetup 167 | 168 | %%BeginObject: obj1 169 | bplot 170 | 171 | /dpi2point 12 def 172 | portraitMode 0312 6588 csm 173 | 174 | 73 196 6167 3471 rc 175 | 86 dict begin %Colortable dictionary 176 | /c0 { 0.000000 0.000000 0.000000 sr} bdef 177 | /c1 { 1.000000 1.000000 1.000000 sr} bdef 178 | /c2 { 0.900000 0.000000 0.000000 sr} bdef 179 | /c3 { 0.000000 0.820000 0.000000 sr} bdef 180 | /c4 { 0.000000 0.000000 0.800000 sr} bdef 181 | /c5 { 0.910000 0.820000 0.320000 sr} bdef 182 | /c6 { 1.000000 0.260000 0.820000 sr} bdef 183 | /c7 { 0.000000 0.820000 0.820000 sr} bdef 184 | c0 185 | 1 j 186 | 1 sg 187 | 0 0 6709 3668 rf 188 | 18 w 189 | 0 2733 5184 0 0 -2733 872 3113 4 MP 190 | PP 191 | -5184 0 0 2733 5184 0 0 -2733 872 3113 5 MP stroke 192 | 12 w 193 | DO 194 | SO 195 | 18 w 196 | 0 sg 197 | 872 3113 mt 6056 3113 L 198 | 872 380 mt 6056 380 L 199 | 872 3113 mt 872 380 L 200 | 6056 3113 mt 6056 380 L 201 | 872 3113 mt 6056 3113 L 202 | 872 3113 mt 872 380 L 203 | 872 3113 mt 872 3009 L 204 | 872 380 mt 872 483 L 205 | %%IncludeResource: font Helvetica 206 | /Helvetica /ISOLatin1Encoding 240 FMSR 207 | 208 | 806 3370 mt 209 | (0) s 210 | 1044 3113 mt 1044 3061 L 211 | 1044 380 mt 1044 431 L 212 | 1217 3113 mt 1217 3061 L 213 | 1217 380 mt 1217 431 L 214 | 1390 3113 mt 1390 3061 L 215 | 1390 380 mt 1390 431 L 216 | 1563 3113 mt 1563 3061 L 217 | 1563 380 mt 1563 431 L 218 | 1736 3113 mt 1736 3061 L 219 | 1736 380 mt 1736 431 L 220 | 1736 3113 mt 1736 3061 L 221 | 1736 380 mt 1736 431 L 222 | 1736 3113 mt 1736 3061 L 223 | 1736 380 mt 1736 431 L 224 | 1736 3113 mt 1736 3061 L 225 | 1736 380 mt 1736 431 L 226 | 1736 3113 mt 1736 3061 L 227 | 1736 380 mt 1736 431 L 228 | 1736 3113 mt 1736 3009 L 229 | 1736 380 mt 1736 483 L 230 | 1603 3370 mt 231 | (10) s 232 | 1908 3113 mt 1908 3061 L 233 | 1908 380 mt 1908 431 L 234 | 2081 3113 mt 2081 3061 L 235 | 2081 380 mt 2081 431 L 236 | 2254 3113 mt 2254 3061 L 237 | 2254 380 mt 2254 431 L 238 | 2427 3113 mt 2427 3061 L 239 | 2427 380 mt 2427 431 L 240 | 2600 3113 mt 2600 3061 L 241 | 2600 380 mt 2600 431 L 242 | 2600 3113 mt 2600 3061 L 243 | 2600 380 mt 2600 431 L 244 | 2600 3113 mt 2600 3061 L 245 | 2600 380 mt 2600 431 L 246 | 2600 3113 mt 2600 3061 L 247 | 2600 380 mt 2600 431 L 248 | 2600 3113 mt 2600 3061 L 249 | 2600 380 mt 2600 431 L 250 | 2600 3113 mt 2600 3009 L 251 | 2600 380 mt 2600 483 L 252 | 2467 3370 mt 253 | (20) s 254 | 2772 3113 mt 2772 3061 L 255 | 2772 380 mt 2772 431 L 256 | 2945 3113 mt 2945 3061 L 257 | 2945 380 mt 2945 431 L 258 | 3118 3113 mt 3118 3061 L 259 | 3118 380 mt 3118 431 L 260 | 3291 3113 mt 3291 3061 L 261 | 3291 380 mt 3291 431 L 262 | 3464 3113 mt 3464 3061 L 263 | 3464 380 mt 3464 431 L 264 | 3464 3113 mt 3464 3061 L 265 | 3464 380 mt 3464 431 L 266 | 3464 3113 mt 3464 3061 L 267 | 3464 380 mt 3464 431 L 268 | 3464 3113 mt 3464 3061 L 269 | 3464 380 mt 3464 431 L 270 | 3464 3113 mt 3464 3061 L 271 | 3464 380 mt 3464 431 L 272 | 3464 3113 mt 3464 3009 L 273 | 3464 380 mt 3464 483 L 274 | 3331 3370 mt 275 | (30) s 276 | 3636 3113 mt 3636 3061 L 277 | 3636 380 mt 3636 431 L 278 | 3809 3113 mt 3809 3061 L 279 | 3809 380 mt 3809 431 L 280 | 3982 3113 mt 3982 3061 L 281 | 3982 380 mt 3982 431 L 282 | 4155 3113 mt 4155 3061 L 283 | 4155 380 mt 4155 431 L 284 | 4328 3113 mt 4328 3061 L 285 | 4328 380 mt 4328 431 L 286 | 4328 3113 mt 4328 3061 L 287 | 4328 380 mt 4328 431 L 288 | 4328 3113 mt 4328 3061 L 289 | 4328 380 mt 4328 431 L 290 | 4328 3113 mt 4328 3061 L 291 | 4328 380 mt 4328 431 L 292 | 4328 3113 mt 4328 3061 L 293 | 4328 380 mt 4328 431 L 294 | 4328 3113 mt 4328 3009 L 295 | 4328 380 mt 4328 483 L 296 | 4195 3370 mt 297 | (40) s 298 | 4500 3113 mt 4500 3061 L 299 | 4500 380 mt 4500 431 L 300 | 4673 3113 mt 4673 3061 L 301 | 4673 380 mt 4673 431 L 302 | 4846 3113 mt 4846 3061 L 303 | 4846 380 mt 4846 431 L 304 | 5019 3113 mt 5019 3061 L 305 | 5019 380 mt 5019 431 L 306 | 5192 3113 mt 5192 3061 L 307 | 5192 380 mt 5192 431 L 308 | 5192 3113 mt 5192 3061 L 309 | 5192 380 mt 5192 431 L 310 | 5192 3113 mt 5192 3061 L 311 | 5192 380 mt 5192 431 L 312 | 5192 3113 mt 5192 3061 L 313 | 5192 380 mt 5192 431 L 314 | 5192 3113 mt 5192 3061 L 315 | 5192 380 mt 5192 431 L 316 | 5192 3113 mt 5192 3009 L 317 | 5192 380 mt 5192 483 L 318 | 5059 3370 mt 319 | (50) s 320 | 5364 3113 mt 5364 3061 L 321 | 5364 380 mt 5364 431 L 322 | 5537 3113 mt 5537 3061 L 323 | 5537 380 mt 5537 431 L 324 | 5710 3113 mt 5710 3061 L 325 | 5710 380 mt 5710 431 L 326 | 5883 3113 mt 5883 3061 L 327 | 5883 380 mt 5883 431 L 328 | 6056 3113 mt 6056 3061 L 329 | 6056 380 mt 6056 431 L 330 | 6056 3113 mt 6056 3061 L 331 | 6056 380 mt 6056 431 L 332 | 6056 3113 mt 6056 3061 L 333 | 6056 380 mt 6056 431 L 334 | 6056 3113 mt 6056 3061 L 335 | 6056 380 mt 6056 431 L 336 | 6056 3113 mt 6056 3061 L 337 | 6056 380 mt 6056 431 L 338 | 6056 3113 mt 6056 3009 L 339 | 6056 380 mt 6056 483 L 340 | 5923 3370 mt 341 | (60) s 342 | 872 3113 mt 975 3113 L 343 | 6056 3113 mt 5952 3113 L 344 | 430 3202 mt 345 | (-10) s 346 | 872 2976 mt 923 2976 L 347 | 6056 2976 mt 6004 2976 L 348 | 872 2839 mt 923 2839 L 349 | 6056 2839 mt 6004 2839 L 350 | 872 2703 mt 923 2703 L 351 | 6056 2703 mt 6004 2703 L 352 | 872 2566 mt 923 2566 L 353 | 6056 2566 mt 6004 2566 L 354 | 872 2429 mt 923 2429 L 355 | 6056 2429 mt 6004 2429 L 356 | 872 2429 mt 923 2429 L 357 | 6056 2429 mt 6004 2429 L 358 | 872 2429 mt 923 2429 L 359 | 6056 2429 mt 6004 2429 L 360 | 872 2429 mt 923 2429 L 361 | 6056 2429 mt 6004 2429 L 362 | 872 2429 mt 923 2429 L 363 | 6056 2429 mt 6004 2429 L 364 | 872 2429 mt 975 2429 L 365 | 6056 2429 mt 5952 2429 L 366 | 564 2518 mt 367 | (-5) s 368 | 872 2293 mt 923 2293 L 369 | 6056 2293 mt 6004 2293 L 370 | 872 2156 mt 923 2156 L 371 | 6056 2156 mt 6004 2156 L 372 | 872 2019 mt 923 2019 L 373 | 6056 2019 mt 6004 2019 L 374 | 872 1883 mt 923 1883 L 375 | 6056 1883 mt 6004 1883 L 376 | 872 1746 mt 923 1746 L 377 | 6056 1746 mt 6004 1746 L 378 | 872 1746 mt 923 1746 L 379 | 6056 1746 mt 6004 1746 L 380 | 872 1746 mt 923 1746 L 381 | 6056 1746 mt 6004 1746 L 382 | 872 1746 mt 923 1746 L 383 | 6056 1746 mt 6004 1746 L 384 | 872 1746 mt 923 1746 L 385 | 6056 1746 mt 6004 1746 L 386 | 872 1746 mt 975 1746 L 387 | 6056 1746 mt 5952 1746 L 388 | 704 1835 mt 389 | (0) s 390 | 872 1609 mt 923 1609 L 391 | 6056 1609 mt 6004 1609 L 392 | 872 1473 mt 923 1473 L 393 | 6056 1473 mt 6004 1473 L 394 | 872 1336 mt 923 1336 L 395 | 6056 1336 mt 6004 1336 L 396 | 872 1199 mt 923 1199 L 397 | 6056 1199 mt 6004 1199 L 398 | 872 1063 mt 923 1063 L 399 | 6056 1063 mt 6004 1063 L 400 | 872 1063 mt 923 1063 L 401 | 6056 1063 mt 6004 1063 L 402 | 872 1063 mt 923 1063 L 403 | 6056 1063 mt 6004 1063 L 404 | 872 1063 mt 923 1063 L 405 | 6056 1063 mt 6004 1063 L 406 | 872 1063 mt 923 1063 L 407 | 6056 1063 mt 6004 1063 L 408 | 872 1063 mt 975 1063 L 409 | 6056 1063 mt 5952 1063 L 410 | 704 1152 mt 411 | (5) s 412 | 872 926 mt 923 926 L 413 | 6056 926 mt 6004 926 L 414 | 872 789 mt 923 789 L 415 | 6056 789 mt 6004 789 L 416 | 872 653 mt 923 653 L 417 | 6056 653 mt 6004 653 L 418 | 872 516 mt 923 516 L 419 | 6056 516 mt 6004 516 L 420 | 872 380 mt 923 380 L 421 | 6056 380 mt 6004 380 L 422 | 872 380 mt 923 380 L 423 | 6056 380 mt 6004 380 L 424 | 872 380 mt 923 380 L 425 | 6056 380 mt 6004 380 L 426 | 872 380 mt 923 380 L 427 | 6056 380 mt 6004 380 L 428 | 872 380 mt 923 380 L 429 | 6056 380 mt 6004 380 L 430 | 872 380 mt 975 380 L 431 | 6056 380 mt 5952 380 L 432 | 571 469 mt 433 | (10) s 434 | 872 3113 mt 6056 3113 L 435 | 872 380 mt 6056 380 L 436 | 872 3113 mt 872 380 L 437 | 6056 3113 mt 6056 380 L 438 | gs 872 380 5185 2734 rc 439 | 30 w 440 | /c8 { 0.160000 0.440000 1.000000 sr} bdef 441 | c8 442 | 9 -43 9 -43 8 -43 9 -42 9 -43 8 -42 9 -42 9 -42 443 | 8 -41 9 -41 9 -41 8 -40 9 -40 8 -39 9 -38 9 -38 444 | 8 -38 9 -36 9 -36 8 -35 9 -35 9 -33 8 -33 9 -31 445 | 8 -31 9 -30 9 -29 8 -28 9 -27 9 -26 8 -24 9 -24 446 | 9 -22 8 -21 9 -21 9 -18 8 -18 9 -17 8 -15 9 -14 447 | 9 -12 8 -12 9 -10 9 -8 8 -8 9 -6 9 -4 8 -4 448 | 9 -2 8 -1 9 1 9 2 8 4 9 4 9 6 8 8 449 | 9 8 9 10 8 12 9 12 9 14 8 15 9 17 8 18 450 | 9 18 9 21 8 21 9 22 9 24 8 24 9 26 9 27 451 | 8 28 9 29 8 30 9 31 9 31 8 33 9 33 9 35 452 | 8 35 9 36 9 36 8 38 9 38 9 38 8 39 9 40 453 | 8 40 9 41 9 41 8 41 9 42 9 42 8 42 9 43 454 | 9 42 8 43 9 43 8 43 9 43 9 43 8 43 9 42 455 | 9 43 8 42 9 42 9 42 8 41 9 41 9 41 8 40 456 | 9 40 8 39 9 38 9 38 8 38 9 36 9 36 8 35 457 | 9 35 9 33 8 33 9 31 8 31 9 30 9 29 8 28 458 | 9 27 9 26 8 24 9 24 9 22 8 21 9 21 9 18 459 | 8 18 9 17 8 15 9 14 9 12 8 12 9 10 9 8 460 | 8 8 9 6 9 4 8 4 9 2 8 0 9 0 9 -2 461 | 8 -4 9 -4 9 -6 8 -8 9 -8 9 -10 8 -12 9 -12 462 | 9 -14 8 -15 9 -17 8 -18 9 -18 9 -21 8 -21 9 -22 463 | 9 -24 8 -24 9 -26 9 -27 8 -28 9 -29 8 -30 9 -31 464 | 9 -31 8 -33 9 -33 9 -35 8 -35 9 -36 9 -36 8 -38 465 | 9 -38 9 -38 8 -39 9 -40 8 -40 9 -41 9 -41 8 -41 466 | 9 -42 9 -42 8 -42 9 -43 9 -42 8 -43 9 -43 8 -43 467 | 9 -43 9 -43 8 -43 9 -42 9 -43 8 -42 9 -42 9 -42 468 | 8 -41 9 -41 9 -41 8 -40 9 -40 8 -39 9 -38 9 -38 469 | 8 -38 9 -36 9 -36 8 -35 9 -35 9 -33 8 -33 9 -31 470 | 8 -31 9 -30 9 -29 8 -28 9 -27 9 -26 8 -24 9 -24 471 | 9 -22 8 -21 9 -21 9 -18 8 -18 9 -17 8 -15 9 -14 472 | 9 -12 8 -12 9 -10 9 -8 8 -8 9 -6 9 -4 8 -4 473 | 9 -2 9 -1 8 1 9 2 8 4 9 4 9 6 8 8 474 | 9 8 9 10 8 12 9 12 9 14 8 15 9 17 8 18 475 | 9 18 9 21 8 21 9 22 9 24 8 24 9 26 9 27 476 | 8 28 9 29 8 30 9 31 9 31 8 33 9 33 9 35 477 | 8 35 9 36 9 36 8 38 9 38 9 38 8 39 9 40 478 | 8 40 9 41 9 41 8 41 9 42 9 42 8 42 9 43 479 | 9 42 8 43 9 43 3472 1789 300 MP stroke 480 | 8 43 9 43 9 43 8 43 9 42 9 43 8 42 9 42 481 | 9 42 8 41 9 41 9 41 8 40 9 40 8 39 9 38 482 | 9 38 8 38 9 36 9 36 8 35 9 35 9 33 8 33 483 | 9 31 8 31 9 30 9 29 8 28 9 27 9 26 8 24 484 | 9 24 9 22 8 21 9 21 9 18 8 18 9 17 8 15 485 | 9 14 9 12 8 12 9 10 9 8 8 8 9 6 9 4 486 | 8 4 9 2 8 0 9 0 9 -2 8 -4 9 -4 9 -6 487 | 8 -8 9 -8 9 -10 8 -12 9 -12 9 -14 8 -15 9 -17 488 | 8 -18 9 -18 9 -21 8 -21 9 -22 9 -24 8 -24 9 -26 489 | 9 -27 8 -28 9 -29 8 -30 9 -31 9 -31 8 -33 9 -33 490 | 9 -35 8 -35 9 -36 9 -36 8 -38 9 -38 9 -38 8 -39 491 | 9 -40 8 -40 9 -41 9 -41 8 -41 9 -42 9 -42 8 -42 492 | 9 -43 9 -42 8 -43 9 -43 8 -43 9 -43 9 -43 8 -43 493 | 9 -42 9 -43 8 -42 9 -42 9 -42 8 -41 9 -41 9 -41 494 | 8 -40 9 -40 8 -39 9 -38 9 -38 8 -38 9 -36 9 -36 495 | 8 -35 9 -35 9 -33 8 -33 9 -31 8 -31 9 -30 9 -29 496 | 8 -28 9 -27 9 -26 8 -24 9 -24 9 -22 8 -21 9 -21 497 | 9 -18 8 -18 9 -17 8 -15 9 -14 9 -12 8 -12 9 -10 498 | 9 -8 8 -8 9 -6 9 -4 8 -4 9 -2 8 -1 9 1 499 | 9 2 8 4 9 4 9 6 8 8 9 8 9 10 8 12 500 | 9 12 9 14 8 15 9 17 8 18 9 18 9 21 8 21 501 | 9 22 9 24 8 24 9 26 9 27 8 28 9 29 8 30 502 | 9 31 9 31 8 33 9 33 9 35 8 35 9 36 9 36 503 | 8 38 9 38 9 38 8 39 9 40 8 40 9 41 9 41 504 | 8 41 9 42 9 42 8 42 9 43 9 42 8 43 9 43 505 | 8 43 9 43 9 43 8 43 9 42 9 43 8 42 9 42 506 | 9 42 8 41 9 41 9 41 8 40 9 40 8 39 9 38 507 | 9 38 8 38 9 36 9 36 8 35 9 35 9 33 8 33 508 | 9 31 8 31 9 30 9 29 8 28 9 27 9 26 8 24 509 | 9 24 9 22 8 21 9 21 9 18 8 18 9 17 8 15 510 | 9 14 9 12 8 12 9 10 9 8 8 8 9 6 9 4 511 | 8 4 9 2 8 0 9 0 9 -2 8 -4 9 -4 9 -6 512 | 8 -8 9 -8 9 -10 8 -12 9 -12 9 -14 8 -15 9 -17 513 | 8 -18 9 -18 9 -21 8 -21 9 -22 9 -24 8 -24 9 -26 514 | 9 -27 8 -28 9 -29 8 -30 9 -31 9 -31 8 -33 9 -33 515 | 9 -35 8 -35 9 -36 9 -36 8 -38 9 -38 9 -38 8 -39 516 | 9 -40 8 -40 9 -41 9 -41 8 -41 9 -42 9 -42 8 -42 517 | 9 -43 9 -42 8 -43 889 1660 300 MP stroke 518 | 9 -43 8 -43 872 1746 3 MP stroke 519 | gr 520 | 521 | 30 w 522 | c8 523 | 0 sg 524 | 2825 3601 mt 525 | (Time, t \(ms\)) s 526 | 321 2477 mt -90 rotate 527 | (Voltage, V \(V\)) s 528 | 90 rotate 529 | 18 w 530 | 531 | end %%Color Dict 532 | 533 | eplot 534 | %%EndObject 535 | 536 | epage 537 | end 538 | 539 | showpage 540 | 541 | %%Trailer 542 | %%EOF 543 | -------------------------------------------------------------------------------- /examples_class/plotSimple.m: -------------------------------------------------------------------------------- 1 | % Load, modify and export a fig file as an eps file. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | %% lets plot 3 cycles of 50Hz AC voltage 7 | f = 50; % frequency 8 | Vm = 10; % peak 9 | phi = 0; % phase 10 | 11 | % generate the signal 12 | t = [0:0.0001:3/f]; 13 | th = 2*pi*f*t; 14 | v = Vm*sin(th+phi); 15 | 16 | % plot it 17 | plt = Plot(t*1E3, v); 18 | 19 | plt.Title = 'Voltage as a function of time'; % plot title 20 | plt.XLabel = 'Time, t (ms)'; % xlabel 21 | plt.YLabel = 'Voltage, V (V)'; %ylabel 22 | 23 | plt.export('plotSimple1.png'); 24 | 25 | -------------------------------------------------------------------------------- /examples_class/plotSimple.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples_class/plotSimple.png -------------------------------------------------------------------------------- /examples_class/plotSimple1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples_class/plotSimple1.png -------------------------------------------------------------------------------- /examples_class/plotSimpleLog.m: -------------------------------------------------------------------------------- 1 | % Log scale. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | 7 | %% lets plot 3 cycles of 50Hz AC voltage 8 | f = 50; 9 | Vm = 10; 10 | phi = 0; 11 | 12 | % generate the signal 13 | t = [0:0.00001:3/f]; 14 | th = 2*pi*f*t; 15 | v = Vm*sin(th+phi); 16 | vsqr = v.^2 + 1E-5; 17 | 18 | figure; 19 | plot(t*1E3, vsqr); 20 | 21 | %% set properties 22 | plt = Plot(); 23 | plt.XLabel = 'Time, t (ms)'; % xlabel 24 | plt.YLabel = 'Voltage, V (V)'; %ylabel 25 | plt.YScale = 'log'; 26 | 27 | % Save? comment the following line if you do not want to save 28 | plt.export('plotSimpleLog.eps'); 29 | -------------------------------------------------------------------------------- /examples_class/plotSimpleLog2.m: -------------------------------------------------------------------------------- 1 | % Log scale with custom tick. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | %% lets plot 3 cycles of 50Hz AC voltage 7 | f = 50; 8 | Vm = 10; 9 | phi = 0; 10 | 11 | % generate the signal 12 | t = [0:0.00001:3/f]; 13 | th = 2*pi*f*t; 14 | v = Vm*sin(th+phi); 15 | vsqr = v.^2 + 1E-3; 16 | 17 | %% plot now 18 | figure; 19 | plot(t*1E3, vsqr); 20 | 21 | plt = Plot(); 22 | plt.XLabel = 'Time, t (ms)'; % xlabel 23 | plt.YLabel = 'Voltage, V (V)'; %ylabel 24 | plt.YScale = 'log'; % 'linear' or 'log' 25 | plt.YLim = [1E-3, 1E3]; % [min, max] 26 | plt.YTick = [1E-3, 1E-1, 1E1, 1E3]; %[tick1, tick2, .. ] 27 | plt.YGrid = 'on'; % 'on' or 'off' 28 | 29 | % Save? comment the following line if you do not want to save 30 | plt.export('plotSimpleLog2.png'); 31 | -------------------------------------------------------------------------------- /examples_class/plotSimpleLog2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples_class/plotSimpleLog2.png -------------------------------------------------------------------------------- /examples_class/plotSimpleLogLog.m: -------------------------------------------------------------------------------- 1 | % Log-log scale. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | %% lets plot 3 cycles of 50Hz AC voltage 7 | f = 50; 8 | Vm = 10; 9 | phi = 0; 10 | 11 | % generate the signal 12 | t = [0:0.00001:3/f]; 13 | th = 2*pi*f*t; 14 | v = Vm*sin(th+phi); 15 | vsqr = v.^2; 16 | 17 | %% plot and settings 18 | plt = Plot(t*1E3, vsqr); 19 | 20 | plt.XLabel = 'Time, t (ms)'; % xlabel 21 | plt.YLabel = 'Voltage, V (V)'; %ylabel 22 | plt.YScale = 'log'; % 'linear' or 'log' 23 | plt.XScale = 'log'; % 'linear' or 'log' 24 | plt.YLim = [1E-3, 1E3]; % [min, max] 25 | plt.YTick = [1E-3, 1E-1, 1E1, 1E3]; %[tick1, tick2, .. ] 26 | plt.YGrid = 'on'; % 'on' or 'off' 27 | plt.XGrid = 'on'; % 'on' or 'off' 28 | 29 | % Save? comment the following line if you do not want to save 30 | plt.export('plotSimpleLogLog.png'); 31 | -------------------------------------------------------------------------------- /examples_class/plotSimpleLogLog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples_class/plotSimpleLogLog.png -------------------------------------------------------------------------------- /examples_class/plotSize.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-3.0 EPSF-3.0 2 | %%Creator: MATLAB, The MathWorks, Inc. Version 8.2.0.701 (R2013b). Operating System: Darwin 13.4.0 Darwin Kernel Version 13.4.0: Wed Dec 17 19:05:52 PST 2014; root:xnu-2422.115.10~1/RELEASE_X86_64 x86_64. 3 | %%Title: ./plotSize.eps 4 | %%CreationDate: 03/18/2015 22:49:33 5 | %%DocumentNeededFonts: Helvetica 6 | %%DocumentProcessColors: Cyan Magenta Yellow Black 7 | %%LanguageLevel: 2 8 | %%Pages: 1 9 | %%BoundingBox: -1 170 584 603 10 | %%EndComments 11 | 12 | %%BeginProlog 13 | % MathWorks dictionary 14 | /MathWorks 160 dict begin 15 | % definition operators 16 | /bdef {bind def} bind def 17 | /ldef {load def} bind def 18 | /xdef {exch def} bdef 19 | /xstore {exch store} bdef 20 | % operator abbreviations 21 | /c /clip ldef 22 | /cc /concat ldef 23 | /cp /closepath ldef 24 | /gr /grestore ldef 25 | /gs /gsave ldef 26 | /mt /moveto ldef 27 | /np /newpath ldef 28 | /cm /currentmatrix ldef 29 | /sm /setmatrix ldef 30 | /rm /rmoveto ldef 31 | /rl /rlineto ldef 32 | /s {show newpath} bdef 33 | /sc {setcmykcolor} bdef 34 | /sr /setrgbcolor ldef 35 | /sg /setgray ldef 36 | /w /setlinewidth ldef 37 | /j /setlinejoin ldef 38 | /cap /setlinecap ldef 39 | /rc {rectclip} bdef 40 | /rf {rectfill} bdef 41 | % page state control 42 | /pgsv () def 43 | /bpage {/pgsv save def} bdef 44 | /epage {pgsv restore} bdef 45 | /bplot /gsave ldef 46 | /eplot {stroke grestore} bdef 47 | % orientation switch 48 | /portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def 49 | % coordinate system mappings 50 | /dpi2point 0 def 51 | % font control 52 | /FontSize 0 def 53 | /FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0] 54 | makefont setfont} bdef 55 | /reencode {exch dup where {pop load} {pop StandardEncoding} ifelse 56 | exch dup 3 1 roll findfont dup length dict begin 57 | { 1 index /FID ne {def}{pop pop} ifelse } forall 58 | /Encoding exch def currentdict end definefont pop} bdef 59 | /isroman {findfont /CharStrings get /Agrave known} bdef 60 | /FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse 61 | exch FMS} bdef 62 | /csm {1 dpi2point div -1 dpi2point div scale neg translate 63 | dup landscapeMode eq {pop -90 rotate} 64 | {rotateMode eq {90 rotate} if} ifelse} bdef 65 | % line types: solid, dotted, dashed, dotdash 66 | /SO { [] 0 setdash } bdef 67 | /DO { [3 dpi2point mul 3 dpi2point mul] 0 setdash } bdef 68 | /DA { [6 dpi2point mul] 0 setdash } bdef 69 | /DD { [2 dpi2point mul 2 dpi2point mul 6 dpi2point mul 2 dpi2point mul] 0 setdash } bdef 70 | % macros for lines and objects 71 | /L {lineto stroke} bdef 72 | /MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef 73 | /AP {{rlineto} repeat} bdef 74 | /PDlw -1 def 75 | /W {/PDlw currentlinewidth def setlinewidth} def 76 | /PP {closepath eofill} bdef 77 | /DP {closepath stroke} bdef 78 | /MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto 79 | neg 0 exch rlineto closepath} bdef 80 | /FR {MR stroke} bdef 81 | /PR {MR fill} bdef 82 | /L1i {{currentfile picstr readhexstring pop} image} bdef 83 | /tMatrix matrix def 84 | /MakeOval {newpath tMatrix currentmatrix pop translate scale 85 | 0 0 1 0 360 arc tMatrix setmatrix} bdef 86 | /FO {MakeOval stroke} bdef 87 | /PO {MakeOval fill} bdef 88 | /PD {currentlinewidth 2 div 0 360 arc fill 89 | PDlw -1 eq not {PDlw w /PDlw -1 def} if} def 90 | /FA {newpath tMatrix currentmatrix pop translate scale 91 | 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef 92 | /PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 93 | 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef 94 | /FAn {newpath tMatrix currentmatrix pop translate scale 95 | 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef 96 | /PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale 97 | 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef 98 | /vradius 0 def /hradius 0 def /lry 0 def 99 | /lrx 0 def /uly 0 def /ulx 0 def /rad 0 def 100 | /MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef 101 | /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly 102 | vradius add translate hradius vradius scale 0 0 1 180 270 arc 103 | tMatrix setmatrix lrx hradius sub uly vradius add translate 104 | hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix 105 | lrx hradius sub lry vradius sub translate hradius vradius scale 106 | 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub 107 | translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix 108 | closepath} bdef 109 | /FRR {MRR stroke } bdef 110 | /PRR {MRR fill } bdef 111 | /MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def 112 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 113 | rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad 114 | sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix 115 | closepath} bdef 116 | /FlrRR {MlrRR stroke } bdef 117 | /PlrRR {MlrRR fill } bdef 118 | /MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def 119 | newpath tMatrix currentmatrix pop ulx rad add uly rad add translate 120 | rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad 121 | sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix 122 | closepath} bdef 123 | /FtbRR {MtbRR stroke } bdef 124 | /PtbRR {MtbRR fill } bdef 125 | /stri 6 array def /dtri 6 array def 126 | /smat 6 array def /dmat 6 array def 127 | /tmat1 6 array def /tmat2 6 array def /dif 3 array def 128 | /asub {/ind2 exch def /ind1 exch def dup dup 129 | ind1 get exch ind2 get sub exch } bdef 130 | /tri_to_matrix { 131 | 2 0 asub 3 1 asub 4 0 asub 5 1 asub 132 | dup 0 get exch 1 get 7 -1 roll astore } bdef 133 | /compute_transform { 134 | dmat dtri tri_to_matrix tmat1 invertmatrix 135 | smat stri tri_to_matrix tmat2 concatmatrix } bdef 136 | /ds {stri astore pop} bdef 137 | /dt {dtri astore pop} bdef 138 | /db {2 copy /cols xdef /rows xdef mul dup 3 mul string 139 | currentfile 140 | 3 index 0 eq {/ASCIIHexDecode filter} 141 | {/ASCII85Decode filter 3 index 2 eq {/RunLengthDecode filter} if } 142 | ifelse exch readstring pop 143 | dup 0 3 index getinterval /rbmap xdef 144 | dup 2 index dup getinterval /gbmap xdef 145 | 1 index dup 2 mul exch getinterval /bbmap xdef pop pop}bdef 146 | /it {gs np dtri aload pop moveto lineto lineto cp c 147 | cols rows 8 compute_transform 148 | rbmap gbmap bbmap true 3 colorimage gr}bdef 149 | /il {newpath moveto lineto stroke}bdef 150 | currentdict end def 151 | %%EndProlog 152 | 153 | %%BeginSetup 154 | MathWorks begin 155 | 156 | 0 cap 157 | 158 | end 159 | %%EndSetup 160 | 161 | %%Page: 1 1 162 | %%BeginPageSetup 163 | %%PageBoundingBox: -1 170 584 603 164 | MathWorks begin 165 | bpage 166 | %%EndPageSetup 167 | 168 | %%BeginObject: obj1 169 | bplot 170 | 171 | /dpi2point 12 def 172 | portraitMode -0096 7452 csm 173 | 174 | 73 206 7031 5199 rc 175 | 86 dict begin %Colortable dictionary 176 | /c0 { 0.000000 0.000000 0.000000 sr} bdef 177 | /c1 { 1.000000 1.000000 1.000000 sr} bdef 178 | /c2 { 0.900000 0.000000 0.000000 sr} bdef 179 | /c3 { 0.000000 0.820000 0.000000 sr} bdef 180 | /c4 { 0.000000 0.000000 0.800000 sr} bdef 181 | /c5 { 0.910000 0.820000 0.320000 sr} bdef 182 | /c6 { 1.000000 0.260000 0.820000 sr} bdef 183 | /c7 { 0.000000 0.820000 0.820000 sr} bdef 184 | c0 185 | 1 j 186 | 1 sg 187 | 0 0 7560 5406 rf 188 | 18 w 189 | 0 4461 6048 0 0 -4461 872 4851 4 MP 190 | PP 191 | -6048 0 0 4461 6048 0 0 -4461 872 4851 5 MP stroke 192 | 12 w 193 | DO 194 | SO 195 | 18 w 196 | 0 sg 197 | 872 4851 mt 6920 4851 L 198 | 872 390 mt 6920 390 L 199 | 872 4851 mt 872 390 L 200 | 6920 4851 mt 6920 390 L 201 | 872 4851 mt 6920 4851 L 202 | 872 4851 mt 872 390 L 203 | 872 4851 mt 872 4730 L 204 | 872 390 mt 872 510 L 205 | %%IncludeResource: font Helvetica 206 | /Helvetica /ISOLatin1Encoding 240 FMSR 207 | 208 | 806 5108 mt 209 | (0) s 210 | 1073 4851 mt 1073 4790 L 211 | 1073 390 mt 1073 450 L 212 | 1275 4851 mt 1275 4790 L 213 | 1275 390 mt 1275 450 L 214 | 1476 4851 mt 1476 4790 L 215 | 1476 390 mt 1476 450 L 216 | 1678 4851 mt 1678 4790 L 217 | 1678 390 mt 1678 450 L 218 | 1880 4851 mt 1880 4790 L 219 | 1880 390 mt 1880 450 L 220 | 1880 4851 mt 1880 4790 L 221 | 1880 390 mt 1880 450 L 222 | 1880 4851 mt 1880 4790 L 223 | 1880 390 mt 1880 450 L 224 | 1880 4851 mt 1880 4790 L 225 | 1880 390 mt 1880 450 L 226 | 1880 4851 mt 1880 4790 L 227 | 1880 390 mt 1880 450 L 228 | 1880 4851 mt 1880 4730 L 229 | 1880 390 mt 1880 510 L 230 | 1747 5108 mt 231 | (10) s 232 | 2081 4851 mt 2081 4790 L 233 | 2081 390 mt 2081 450 L 234 | 2283 4851 mt 2283 4790 L 235 | 2283 390 mt 2283 450 L 236 | 2484 4851 mt 2484 4790 L 237 | 2484 390 mt 2484 450 L 238 | 2686 4851 mt 2686 4790 L 239 | 2686 390 mt 2686 450 L 240 | 2888 4851 mt 2888 4790 L 241 | 2888 390 mt 2888 450 L 242 | 2888 4851 mt 2888 4790 L 243 | 2888 390 mt 2888 450 L 244 | 2888 4851 mt 2888 4790 L 245 | 2888 390 mt 2888 450 L 246 | 2888 4851 mt 2888 4790 L 247 | 2888 390 mt 2888 450 L 248 | 2888 4851 mt 2888 4790 L 249 | 2888 390 mt 2888 450 L 250 | 2888 4851 mt 2888 4730 L 251 | 2888 390 mt 2888 510 L 252 | 2755 5108 mt 253 | (20) s 254 | 3089 4851 mt 3089 4790 L 255 | 3089 390 mt 3089 450 L 256 | 3291 4851 mt 3291 4790 L 257 | 3291 390 mt 3291 450 L 258 | 3492 4851 mt 3492 4790 L 259 | 3492 390 mt 3492 450 L 260 | 3694 4851 mt 3694 4790 L 261 | 3694 390 mt 3694 450 L 262 | 3896 4851 mt 3896 4790 L 263 | 3896 390 mt 3896 450 L 264 | 3896 4851 mt 3896 4790 L 265 | 3896 390 mt 3896 450 L 266 | 3896 4851 mt 3896 4790 L 267 | 3896 390 mt 3896 450 L 268 | 3896 4851 mt 3896 4790 L 269 | 3896 390 mt 3896 450 L 270 | 3896 4851 mt 3896 4790 L 271 | 3896 390 mt 3896 450 L 272 | 3896 4851 mt 3896 4730 L 273 | 3896 390 mt 3896 510 L 274 | 3763 5108 mt 275 | (30) s 276 | 4097 4851 mt 4097 4790 L 277 | 4097 390 mt 4097 450 L 278 | 4299 4851 mt 4299 4790 L 279 | 4299 390 mt 4299 450 L 280 | 4500 4851 mt 4500 4790 L 281 | 4500 390 mt 4500 450 L 282 | 4702 4851 mt 4702 4790 L 283 | 4702 390 mt 4702 450 L 284 | 4904 4851 mt 4904 4790 L 285 | 4904 390 mt 4904 450 L 286 | 4904 4851 mt 4904 4790 L 287 | 4904 390 mt 4904 450 L 288 | 4904 4851 mt 4904 4790 L 289 | 4904 390 mt 4904 450 L 290 | 4904 4851 mt 4904 4790 L 291 | 4904 390 mt 4904 450 L 292 | 4904 4851 mt 4904 4790 L 293 | 4904 390 mt 4904 450 L 294 | 4904 4851 mt 4904 4730 L 295 | 4904 390 mt 4904 510 L 296 | 4771 5108 mt 297 | (40) s 298 | 5105 4851 mt 5105 4790 L 299 | 5105 390 mt 5105 450 L 300 | 5307 4851 mt 5307 4790 L 301 | 5307 390 mt 5307 450 L 302 | 5508 4851 mt 5508 4790 L 303 | 5508 390 mt 5508 450 L 304 | 5710 4851 mt 5710 4790 L 305 | 5710 390 mt 5710 450 L 306 | 5912 4851 mt 5912 4790 L 307 | 5912 390 mt 5912 450 L 308 | 5912 4851 mt 5912 4790 L 309 | 5912 390 mt 5912 450 L 310 | 5912 4851 mt 5912 4790 L 311 | 5912 390 mt 5912 450 L 312 | 5912 4851 mt 5912 4790 L 313 | 5912 390 mt 5912 450 L 314 | 5912 4851 mt 5912 4790 L 315 | 5912 390 mt 5912 450 L 316 | 5912 4851 mt 5912 4730 L 317 | 5912 390 mt 5912 510 L 318 | 5779 5108 mt 319 | (50) s 320 | 6113 4851 mt 6113 4790 L 321 | 6113 390 mt 6113 450 L 322 | 6315 4851 mt 6315 4790 L 323 | 6315 390 mt 6315 450 L 324 | 6516 4851 mt 6516 4790 L 325 | 6516 390 mt 6516 450 L 326 | 6718 4851 mt 6718 4790 L 327 | 6718 390 mt 6718 450 L 328 | 6920 4851 mt 6920 4790 L 329 | 6920 390 mt 6920 450 L 330 | 6920 4851 mt 6920 4790 L 331 | 6920 390 mt 6920 450 L 332 | 6920 4851 mt 6920 4790 L 333 | 6920 390 mt 6920 450 L 334 | 6920 4851 mt 6920 4790 L 335 | 6920 390 mt 6920 450 L 336 | 6920 4851 mt 6920 4790 L 337 | 6920 390 mt 6920 450 L 338 | 6920 4851 mt 6920 4730 L 339 | 6920 390 mt 6920 510 L 340 | 6787 5108 mt 341 | (60) s 342 | 872 4851 mt 992 4851 L 343 | 6920 4851 mt 6799 4851 L 344 | 430 4940 mt 345 | (-10) s 346 | 872 4627 mt 932 4627 L 347 | 6920 4627 mt 6859 4627 L 348 | 872 4404 mt 932 4404 L 349 | 6920 4404 mt 6859 4404 L 350 | 872 4181 mt 932 4181 L 351 | 6920 4181 mt 6859 4181 L 352 | 872 3958 mt 932 3958 L 353 | 6920 3958 mt 6859 3958 L 354 | 872 3735 mt 932 3735 L 355 | 6920 3735 mt 6859 3735 L 356 | 872 3735 mt 932 3735 L 357 | 6920 3735 mt 6859 3735 L 358 | 872 3735 mt 932 3735 L 359 | 6920 3735 mt 6859 3735 L 360 | 872 3735 mt 932 3735 L 361 | 6920 3735 mt 6859 3735 L 362 | 872 3735 mt 932 3735 L 363 | 6920 3735 mt 6859 3735 L 364 | 872 3735 mt 992 3735 L 365 | 6920 3735 mt 6799 3735 L 366 | 564 3824 mt 367 | (-5) s 368 | 872 3512 mt 932 3512 L 369 | 6920 3512 mt 6859 3512 L 370 | 872 3289 mt 932 3289 L 371 | 6920 3289 mt 6859 3289 L 372 | 872 3066 mt 932 3066 L 373 | 6920 3066 mt 6859 3066 L 374 | 872 2843 mt 932 2843 L 375 | 6920 2843 mt 6859 2843 L 376 | 872 2620 mt 932 2620 L 377 | 6920 2620 mt 6859 2620 L 378 | 872 2620 mt 932 2620 L 379 | 6920 2620 mt 6859 2620 L 380 | 872 2620 mt 932 2620 L 381 | 6920 2620 mt 6859 2620 L 382 | 872 2620 mt 932 2620 L 383 | 6920 2620 mt 6859 2620 L 384 | 872 2620 mt 932 2620 L 385 | 6920 2620 mt 6859 2620 L 386 | 872 2620 mt 992 2620 L 387 | 6920 2620 mt 6799 2620 L 388 | 704 2709 mt 389 | (0) s 390 | 872 2397 mt 932 2397 L 391 | 6920 2397 mt 6859 2397 L 392 | 872 2174 mt 932 2174 L 393 | 6920 2174 mt 6859 2174 L 394 | 872 1951 mt 932 1951 L 395 | 6920 1951 mt 6859 1951 L 396 | 872 1728 mt 932 1728 L 397 | 6920 1728 mt 6859 1728 L 398 | 872 1505 mt 932 1505 L 399 | 6920 1505 mt 6859 1505 L 400 | 872 1505 mt 932 1505 L 401 | 6920 1505 mt 6859 1505 L 402 | 872 1505 mt 932 1505 L 403 | 6920 1505 mt 6859 1505 L 404 | 872 1505 mt 932 1505 L 405 | 6920 1505 mt 6859 1505 L 406 | 872 1505 mt 932 1505 L 407 | 6920 1505 mt 6859 1505 L 408 | 872 1505 mt 992 1505 L 409 | 6920 1505 mt 6799 1505 L 410 | 704 1594 mt 411 | (5) s 412 | 872 1282 mt 932 1282 L 413 | 6920 1282 mt 6859 1282 L 414 | 872 1059 mt 932 1059 L 415 | 6920 1059 mt 6859 1059 L 416 | 872 836 mt 932 836 L 417 | 6920 836 mt 6859 836 L 418 | 872 613 mt 932 613 L 419 | 6920 613 mt 6859 613 L 420 | 872 390 mt 932 390 L 421 | 6920 390 mt 6859 390 L 422 | 872 390 mt 932 390 L 423 | 6920 390 mt 6859 390 L 424 | 872 390 mt 932 390 L 425 | 6920 390 mt 6859 390 L 426 | 872 390 mt 932 390 L 427 | 6920 390 mt 6859 390 L 428 | 872 390 mt 932 390 L 429 | 6920 390 mt 6859 390 L 430 | 872 390 mt 992 390 L 431 | 6920 390 mt 6799 390 L 432 | 571 479 mt 433 | (10) s 434 | 872 4851 mt 6920 4851 L 435 | 872 390 mt 6920 390 L 436 | 872 4851 mt 872 390 L 437 | 6920 4851 mt 6920 390 L 438 | gs 872 390 6049 4462 rc 439 | 30 w 440 | /c8 { 0.160000 0.440000 1.000000 sr} bdef 441 | c8 442 | 11 -70 10 -70 10 -70 10 -70 10 -69 10 -69 10 -69 10 -68 443 | 10 -67 10 -67 10 -67 10 -65 11 -65 10 -64 10 -63 10 -62 444 | 10 -60 10 -60 10 -59 10 -57 10 -56 10 -55 10 -53 10 -52 445 | 11 -50 10 -49 10 -47 10 -46 10 -43 10 -43 10 -40 10 -38 446 | 10 -37 10 -35 10 -32 10 -31 10 -29 11 -27 10 -25 10 -22 447 | 10 -21 10 -18 10 -17 10 -14 10 -12 10 -10 10 -8 10 -5 448 | 10 -3 10 -2 11 2 10 3 10 5 10 8 10 10 10 12 449 | 10 14 10 17 10 18 10 21 10 22 10 25 11 27 10 29 450 | 10 31 10 32 10 35 10 37 10 38 10 40 10 43 10 43 451 | 10 46 10 47 10 49 11 50 10 52 10 53 10 55 10 56 452 | 10 57 10 59 10 60 10 60 10 62 10 63 10 64 11 65 453 | 10 65 10 67 10 67 10 67 10 68 10 69 10 69 10 69 454 | 10 70 10 70 10 70 11 70 10 70 10 70 10 70 10 70 455 | 10 69 10 69 10 69 10 68 10 67 10 67 10 67 10 65 456 | 11 65 10 64 10 63 10 62 10 60 10 60 10 59 10 57 457 | 10 56 10 55 10 53 10 52 10 50 11 49 10 47 10 46 458 | 10 43 10 43 10 40 10 38 10 37 10 35 10 32 10 31 459 | 10 29 11 27 10 25 10 22 10 21 10 18 10 17 10 14 460 | 10 12 10 10 10 8 10 5 10 3 10 1 11 -1 10 -3 461 | 10 -5 10 -8 10 -10 10 -12 10 -14 10 -17 10 -18 10 -21 462 | 10 -22 10 -25 11 -27 10 -29 10 -31 10 -32 10 -35 10 -37 463 | 10 -38 10 -40 10 -43 10 -43 10 -46 10 -47 11 -49 10 -50 464 | 10 -52 10 -53 10 -55 10 -56 10 -57 10 -59 10 -60 10 -60 465 | 10 -62 10 -63 10 -64 11 -65 10 -65 10 -67 10 -67 10 -67 466 | 10 -68 10 -69 10 -69 10 -69 10 -70 10 -70 10 -70 11 -70 467 | 10 -70 10 -70 10 -70 10 -70 10 -69 10 -69 10 -69 10 -68 468 | 10 -67 10 -67 10 -67 10 -65 11 -65 10 -64 10 -63 10 -62 469 | 10 -60 10 -60 10 -59 10 -57 10 -56 10 -55 10 -53 10 -52 470 | 11 -50 10 -49 10 -47 10 -46 10 -43 10 -43 10 -40 10 -38 471 | 10 -37 10 -35 10 -32 10 -31 10 -29 11 -27 10 -25 10 -22 472 | 10 -21 10 -18 10 -17 10 -14 10 -12 10 -10 10 -8 10 -5 473 | 10 -3 11 -2 10 2 10 3 10 5 10 8 10 10 10 12 474 | 10 14 10 17 10 18 10 21 10 22 10 25 11 27 10 29 475 | 10 31 10 32 10 35 10 37 10 38 10 40 10 43 10 43 476 | 10 46 10 47 10 49 11 50 10 52 10 53 10 55 10 56 477 | 10 57 10 59 10 60 10 60 10 62 10 63 10 64 11 65 478 | 10 65 10 67 10 67 10 67 10 68 10 69 10 69 10 69 479 | 10 70 10 70 10 70 3906 2690 300 MP stroke 480 | 10 70 11 70 10 70 10 70 10 70 10 69 10 69 10 69 481 | 10 68 10 67 10 67 10 67 10 65 11 65 10 64 10 63 482 | 10 62 10 60 10 60 10 59 10 57 10 56 10 55 10 53 483 | 10 52 10 50 11 49 10 47 10 46 10 43 10 43 10 40 484 | 10 38 10 37 10 35 10 32 10 31 10 29 11 27 10 25 485 | 10 22 10 21 10 18 10 17 10 14 10 12 10 10 10 8 486 | 10 5 10 3 10 1 11 -1 10 -3 10 -5 10 -8 10 -10 487 | 10 -12 10 -14 10 -17 10 -18 10 -21 10 -22 10 -25 11 -27 488 | 10 -29 10 -31 10 -32 10 -35 10 -37 10 -38 10 -40 10 -43 489 | 10 -43 10 -46 10 -47 10 -49 11 -50 10 -52 10 -53 10 -55 490 | 10 -56 10 -57 10 -59 10 -60 10 -60 10 -62 10 -63 10 -64 491 | 11 -65 10 -65 10 -67 10 -67 10 -67 10 -68 10 -69 10 -69 492 | 10 -69 10 -70 10 -70 10 -70 10 -70 11 -70 10 -70 10 -70 493 | 10 -70 10 -69 10 -69 10 -69 10 -68 10 -67 10 -67 10 -67 494 | 10 -65 11 -65 10 -64 10 -63 10 -62 10 -60 10 -60 10 -59 495 | 10 -57 10 -56 10 -55 10 -53 10 -52 10 -50 11 -49 10 -47 496 | 10 -46 10 -43 10 -43 10 -40 10 -38 10 -37 10 -35 10 -32 497 | 10 -31 10 -29 11 -27 10 -25 10 -22 10 -21 10 -18 10 -17 498 | 10 -14 10 -12 10 -10 10 -8 10 -5 10 -3 10 -2 11 2 499 | 10 3 10 5 10 8 10 10 10 12 10 14 10 17 10 18 500 | 10 21 10 22 10 25 11 27 10 29 10 31 10 32 10 35 501 | 10 37 10 38 10 40 10 43 10 43 10 46 10 47 10 49 502 | 11 50 10 52 10 53 10 55 10 56 10 57 10 59 10 60 503 | 10 60 10 62 10 63 10 64 11 65 10 65 10 67 10 67 504 | 10 67 10 68 10 69 10 69 10 69 10 70 10 70 10 70 505 | 10 70 11 70 10 70 10 70 10 70 10 69 10 69 10 69 506 | 10 68 10 67 10 67 10 67 10 65 11 65 10 64 10 63 507 | 10 62 10 60 10 60 10 59 10 57 10 56 10 55 10 53 508 | 10 52 10 50 11 49 10 47 10 46 10 43 10 43 10 40 509 | 10 38 10 37 10 35 10 32 10 31 10 29 11 27 10 25 510 | 10 22 10 21 10 18 10 17 10 14 10 12 10 10 10 8 511 | 10 5 10 3 10 1 11 -1 10 -3 10 -5 10 -8 10 -10 512 | 10 -12 10 -14 10 -17 10 -18 10 -21 10 -22 10 -25 11 -27 513 | 10 -29 10 -31 10 -32 10 -35 10 -37 10 -38 10 -40 10 -43 514 | 10 -43 10 -46 10 -47 10 -49 11 -50 10 -52 10 -53 10 -55 515 | 10 -56 10 -57 10 -59 10 -60 10 -60 10 -62 10 -63 10 -64 516 | 11 -65 10 -65 10 -67 10 -67 10 -67 10 -68 10 -69 10 -69 517 | 10 -69 10 -70 10 -70 892 2480 300 MP stroke 518 | 10 -70 10 -70 872 2620 3 MP stroke 519 | gr 520 | 521 | 30 w 522 | c8 523 | 0 sg 524 | 3257 5339 mt 525 | (Time, t \(ms\)) s 526 | 321 3351 mt -90 rotate 527 | (Voltage, V \(V\)) s 528 | 90 rotate 529 | 18 w 530 | 531 | end %%Color Dict 532 | 533 | eplot 534 | %%EndObject 535 | 536 | epage 537 | end 538 | 539 | showpage 540 | 541 | %%Trailer 542 | %%EOF 543 | -------------------------------------------------------------------------------- /examples_class/plotSize.m: -------------------------------------------------------------------------------- 1 | % Set box size. 2 | 3 | clear all; 4 | addpath('../lib'); 5 | 6 | 7 | %% load previously generated fig file 8 | plt = Plot('single.fig'); 9 | 10 | %% change settings 11 | plt.XLabel = 'Time, t (ms)'; % xlabel 12 | plt.YLabel = 'Voltage, V (V)'; %ylabel 13 | plt.BoxDim = [7, 5]; %[width, height] 14 | 15 | % Save? comment the following line if you do not want to save 16 | plt.export('plotSize.png'); 17 | 18 | -------------------------------------------------------------------------------- /examples_class/plotSize.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples_class/plotSize.png -------------------------------------------------------------------------------- /examples_class/plotSomeOther.m: -------------------------------------------------------------------------------- 1 | clear all; 2 | addpath('../lib'); 3 | 4 | %% lets plot 3 cycles of 50Hz AC voltage 5 | f = 50; 6 | Vm = 10; 7 | phi = 0; 8 | 9 | % generate the signal 10 | t = [0:0.0001:3/f]; 11 | th = 2*pi*f*t; 12 | v = Vm*sin(th+phi); 13 | 14 | %% plot now 15 | plt = Plot(t*1E3, v); 16 | 17 | plt.XLabel = 'Time, t (ms)'; % xlabel 18 | plt.YLabel = 'Voltage, V (V)'; %ylabel 19 | plt.YTick = [-10, 0, 10]; %[tick1, tick2, .. ] 20 | plt.YLim = [-11, 11]; % [min, max] 21 | plt.XMinorTick = 'off'; % 'on' or 'off' 22 | plt.Colors = {[1, 0, 0], [0, 0, 1]}; %[red, green, blue] 23 | 24 | plt.FontName = 'Times'; 25 | 26 | % Save? comment the following line if you do not want to save 27 | plt.export('plotVoltSomeOther.tiff'); 28 | 29 | -------------------------------------------------------------------------------- /examples_class/plotVoltSomeOther.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples_class/plotVoltSomeOther.tiff -------------------------------------------------------------------------------- /examples_class/single.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/masumhabib/PlotPub/2359dea0ca741a9541d569ea42e7ba1b1445e5f2/examples_class/single.fig -------------------------------------------------------------------------------- /lib/fixPSlinestyle.m: -------------------------------------------------------------------------------- 1 | function fixPSlinestyle(varargin) 2 | 3 | %FIXPSLINESTYLE Fix line styles in exported post script files 4 | % 5 | % FIXPSLINESTYLE(FILENAME) fixes the line styles in the postscript file 6 | % FILENAME. The file will be over-written. This takes a .PS or .EPS file 7 | % and fixes the dotted and dashed line styles to be a little bit more 8 | % esthetically pleasing. It fixes the four default line styles (line, 9 | % dotted, dashed, dashdot). 10 | % 11 | % FIXPSLINESTYLE(FILENAME, NEWFILENAME) creates a new file NEWFILENAME. 12 | % 13 | % This is meant to be used with postscript files created by MATLAB 14 | % (print, export). 15 | % 16 | % Example: 17 | % x = 1:.1:10; 18 | % y1 = sin(x); 19 | % y2 = cos(x); 20 | % h = plot(x, y1, '--', x, y2, '-.'); 21 | % set(h, 'LineWidth', 2); 22 | % grid on; 23 | % legend('line 1', 'line2'); 24 | % 25 | % print -depsc test.eps 26 | % fixPSlinestyle('test.eps', 'fixed_test.eps'); 27 | % 28 | % See also PRINT. 29 | 30 | % Copyright 2005-2010 The MathWorks, Inc. 31 | 32 | % Error checking 33 | error(nargchk(1, 2, nargin)); 34 | if ~ischar(varargin{1}) || (nargin == 2 && ~ischar(varargin{2})) 35 | error('Input arguments must be file names (char).'); 36 | end 37 | 38 | % Make sure the files specified are postscript files 39 | [p1, n1, e1] = fileparts(varargin{1}); 40 | if isempty(e1) || ~ismember(lower(e1), {'.ps', '.eps'}) 41 | error('The extension has to be .ps or .eps'); 42 | end 43 | 44 | % Open file and read it in 45 | fid = fopen(varargin{1}, 'r'); 46 | str = fread(fid); 47 | str = char(str'); 48 | fclose(fid); 49 | 50 | % Find where the line types are defined 51 | id = findstr(str, '% line types:'); 52 | str1 = str(1:id-1); 53 | [line1 , remline ] = strtok(str(id:end), '/'); 54 | [replacestr, remline2] = strtok(remline , '%'); 55 | 56 | % Define the new line styles 57 | solidLine = sprintf('/SO { [] 0 setdash } bdef\n'); 58 | dotLine = sprintf('/DO { [3 dpi2point mul 3 dpi2point mul] 0 setdash } bdef\n'); 59 | dashedLine = sprintf('/DA { [6 dpi2point mul] 0 setdash } bdef\n'); 60 | dashdotLine = sprintf('/DD { [2 dpi2point mul 2 dpi2point mul 6 dpi2point mul 2 dpi2point mul] 0 setdash } bdef\n'); 61 | 62 | % Construct the new file with the new line style definitions 63 | newText = [str1, line1, solidLine, dotLine, dashedLine, dashdotLine, remline2]; 64 | 65 | % Check for output file name 66 | if nargin == 2 67 | [p2, n2, e2] = fileparts(varargin{2}); 68 | if isempty(e2) 69 | fname = fullfile(p2, [n2, e1]); 70 | else 71 | if strcmpi(e1, e2) 72 | fname = varargin{2}; 73 | else 74 | error('Output file must have same file extension.'); 75 | end 76 | end 77 | else % if not defined, over-write 78 | fname = varargin{1}; 79 | end 80 | 81 | % Write out to file 82 | fid = fopen(fname, 'w'); 83 | fprintf(fid, '%s', newText); 84 | fclose(fid); -------------------------------------------------------------------------------- /lib/plotPub.m: -------------------------------------------------------------------------------- 1 | function h = plotPub(X, Y, N, opt) 2 | % function h = plotPub(X, Y, N, opt) 3 | % This function plots X{i} vs Y{i}, changes the properties of the generated 4 | % figure and exports it as a publication quality image file. The resolution 5 | % of the image can be chosen by the user. Supported image formats are EPS, 6 | % PDF, PNG, JPEG and TIFF. The figure properties are specified by the 7 | % options structure 'opt'. 8 | % 9 | % Parameters: 10 | % X: cell array of x coordinates 11 | % Y: cell array of y coordinates 12 | % N: number of plots to be created. N <= length(X) 13 | % opt: options structure: 14 | % BoxDim: vector [width, height]: size of the axes box in inches; default: [6, 2.5] 15 | % ShowBox: 'on' = show or 'off' = hide bounding box; default: 'on' 16 | % FontName: string: font name; default: 'Arial' 17 | % FontSize: integer; default: 26 18 | % LineWidth: vector [width1, width2, ..]: element i changes the property of i-th dataset; default: 2 19 | % LineStyle: cell array {'style1', 'style2', ..}: element i changes the property of i-th dataset; default: '-' 20 | % Markers: cell array {'marker1', 'marker2', ..}: element i changes the property of i-th dataset; default: 'None' 21 | % MarkerSpacing:vector [space1, space2, ..]: element i changes the property of i-th dataset; default: 0 22 | % Colors: 3xN matrix, [red, green, blue] where N is the number of datasets. 23 | % AxisColor: [red, green, blue]; color of the axis lines; default: black 24 | % AxisLineWidth:Witdth of the axis lines; default: 2 25 | % XLabel: X axis label 26 | % YLabel: Y axis label 27 | % ZLabel: Z axis label 28 | % Title: Plot title 29 | % XTick: [tick1, tick2, ..]: major ticks for X axis. 30 | % YTick: [tick1, tick2, ..]: major ticks for Y axis. 31 | % ZTick: [tick1, tick2, ..]: major ticks for Z axis. 32 | % XMinorTick: 'on' or 'off': show X minor tick? 33 | % YMinorTick: 'on' or 'off': show Y minor tick? 34 | % ZMinorTick: 'on' or 'off': show Z minor tick? 35 | % TickDir: tick direction: 'in' or 'out'; default: 'in' 36 | % TickLength: tick length; default: [0.02, 0.02] 37 | % XLim: [min, max]: X axis limit. 38 | % YLim: [min, max]: Y axis limit. 39 | % ZLim: [min, max]: Z axis limit. 40 | % XScale: 'linear' or 'log': X axis scale. 41 | % YScale: 'linear' or 'log': Y axis scale. 42 | % ZScale: 'linear' or 'log': Z axis scale. 43 | % XGrid: 'on' or 'off': show grid in X axis? 44 | % YGrid: 'on' or 'off': show grid in Y axis? 45 | % ZGrid: 'on' or 'off': show grid in Z axis? 46 | % XDir: 'in' or 'out': X axis tick direction 47 | % YDir: 'in' or 'out': Y axis tick direction 48 | % ZDir: 'in' or 'out': Z axis tick direction 49 | % Legend: {'legend1','legend2',...} 50 | % LegendBox: bounding box of legend: 'on'/'off'; default: 'off' 51 | % LegendBoxColor: color of the bounding box of legend; default: 'none' 52 | % LegendTextColor: color of the legend text; default: [0,0,0] 53 | % LegendEdgeColor: color of the legend edges; default: [0,0,0] 54 | % LegendLoc: 'NorthEast', ..., 'SouthWest': legend location 55 | % Resolution: Resolution (dpi) for bitmapped file. Default:600. 56 | % HoldLines: true/false. true == only modify axes settings, do not touch plot lines/surfaces. Default false. 57 | % FileName: Save? Give a file name. 58 | % 59 | % hfig: Figure handle (optional). Default: current figure. 60 | % 61 | % 62 | % Written by: K M Masum Habib (http://masumhabib.com) 63 | % Copyright (c) K M Masum Habib 2012-2015. 64 | % 65 | % Distributed under the BSD License. 66 | % 67 | % Version: 2.2 68 | % 69 | 70 | if nargin ~= 4 71 | fprintf('Usage: function h = plotPub(X, Y, N, opt)'); 72 | end 73 | 74 | 75 | % create figure window 76 | hfig = figure; 77 | 78 | % plot the functions and set style 79 | for ii=1:N 80 | 81 | hold on; 82 | hp{ii} = plot(X{ii},Y{ii}); 83 | end 84 | hold off; 85 | 86 | % Set plot properties 87 | setPlotProp(opt, hfig); 88 | 89 | h = hfig; 90 | -------------------------------------------------------------------------------- /lib/plotPubYY.m: -------------------------------------------------------------------------------- 1 | function h = plotPubYY(X1, Y1, N1, X2, Y2, N2, opt) 2 | % function h = plotPubYY(X1, Y1, N1, X2, Y2, N2, opt) 3 | 4 | if nargin < 7 5 | fprintf('Usage: function h = plotPubYY(X1, Y1, N1, X2, Y2, N2, opt)'); 6 | end 7 | 8 | % initialize settings 9 | % plot dimensions 10 | BoxDim = [6, 2.5]; 11 | if isfield(opt, 'BoxDim') 12 | BoxDim = opt.BoxDim; 13 | end 14 | BoxPos = [1, 1, BoxDim(1), BoxDim(2)]; 15 | 16 | %font 17 | FontName = 'Helvetica'; 18 | if isfield(opt, 'FontName') 19 | FontName = opt.FontName; 20 | end 21 | FontSize = 20; 22 | if isfield(opt, 'FontSize') 23 | FontSize = opt.FontSize; 24 | end 25 | 26 | %plot properties 27 | % for plot 1 28 | LineWidth1 = 2*ones(1,N1); 29 | if isfield(opt, 'LineWidth1') 30 | LineWidth1 = opt.LineWidth1; 31 | end 32 | for ii = 1:N1 33 | LineStyle1{ii} = '-'; 34 | end 35 | if isfield(opt, 'LineStyle1') 36 | LineStyle1 = opt.LineStyle1; 37 | end 38 | Colors1 = [ 39 | 0.16, 0.44, 1.00; 40 | 0.00, 0.57, 0.00; 41 | 0.44, 0.00, 0.99; 42 | 0.75, 0.00, 0.75; 43 | 0.50, 0.50, 0.50; 44 | ]; 45 | if isfield(opt, 'Colors1') 46 | Colors1 = opt.Colors1; 47 | end 48 | XColor1 = [0, 0, 0]; 49 | if isfield(opt, 'XColor1') 50 | XColor1 = opt.XColor1; 51 | end 52 | YColor1 = Colors1(1,:); 53 | if isfield(opt, 'YColor1') 54 | YColor1 = opt.YColor1; 55 | end 56 | % for plot 2 57 | LineWidth2 = 2*ones(1,N2); 58 | if isfield(opt, 'LineWidth2') 59 | LineWidth2 = opt.LineWidth2; 60 | end 61 | for ii = 1:N2 62 | LineStyle2{ii} = '--'; 63 | end 64 | if isfield(opt, 'LineStyle2') 65 | LineStyle2 = opt.LineStyle2; 66 | end 67 | Colors2 = [ 68 | 0.93, 0.00, 0.00; 69 | 0.17, 0.17, 0.17; 70 | 1.00, 0.50, 0.10; 71 | 0.25, 0.25, 0.25; 72 | 0.00, 0.00, 0.00; 73 | ]; 74 | if isfield(opt, 'Colors2') 75 | Colors2 = opt.Colors2; 76 | end 77 | XColor2 = [0, 0, 0]; 78 | if isfield(opt, 'XColor2') 79 | XColor2 = opt.XColor2; 80 | end 81 | YColor2 = Colors2(1,:); 82 | if isfield(opt, 'YColor2') 83 | YColor2 = opt.YColor2; 84 | end 85 | 86 | % create figure window 87 | hfig = figure('Units', 'inches', ... 88 | 'Color', [1,1,1]);%, ... 89 | % 'Position', [PlotX PlotY PlotWidth PlotHeight]); 90 | 91 | hax1 = axes(... 92 | 'Units' , 'inches',... 93 | 'Color' , 'none',... 94 | 'Position' , BoxPos); 95 | 96 | hax2 = axes(... 97 | 'Units' , 'inches',... 98 | 'Color' , 'none',... 99 | 'Position' , BoxPos); 100 | 101 | % plot the functions and set style 102 | for ii=1:N1 103 | hold(hax1, 'on'); 104 | hp1{ii} = plot(X1{ii},Y1{ii}, 'Parent', hax1); 105 | set(hp1{ii} , ... 106 | 'LineStyle' , LineStyle1{ii}, ... 107 | 'Color' , Colors1(ii,:), ... 108 | 'LineWidth', LineWidth1(ii)); 109 | end 110 | hold(hax1, 'off'); 111 | 112 | for ii=1:N2 113 | hold(hax2, 'on'); 114 | hp2{ii} = plot(X2{ii},Y2{ii}, 'Parent', hax2); 115 | set(hp2{ii} , ... 116 | 'LineStyle' , LineStyle2{ii}, ... 117 | 'Color' , Colors2(ii,:), ... 118 | 'LineWidth', LineWidth2(ii)); 119 | end 120 | hold(hax2, 'off'); 121 | 122 | % axis settings 123 | % set axis properties for plot 1 124 | if isfield(opt, 'XTick1') 125 | set( hax1 , ... 126 | 'XTick' , opt.XTick1); 127 | end 128 | if isfield(opt, 'YTick1') 129 | set( hax1 , ... 130 | 'YTick' , opt.YTick1); 131 | end 132 | if isfield(opt, 'XLim1') 133 | set( hax1 , ... 134 | 'XLim' , opt.XLim1); 135 | end 136 | if isfield(opt, 'YLim1') 137 | set( hax1 , ... 138 | 'YLim' , opt.YLim1); 139 | end 140 | if isfield(opt, 'XScale1') 141 | set( hax1 , ... 142 | 'XScale' , opt.XScale1); 143 | end 144 | if isfield(opt, 'YScale1') 145 | set( hax1 , ... 146 | 'YScale' , opt.YScale1); 147 | end 148 | if isfield(opt, 'XGrid1') 149 | set( hax1 , ... 150 | 'XGrid' , opt.XGrid1); 151 | end 152 | if isfield(opt, 'YGrid1') 153 | set( hax1 , ... 154 | 'YGrid' , opt.YGrid1); 155 | end 156 | 157 | % set axis properties for plot 2 158 | if isfield(opt, 'XTick2') 159 | set( hax2 , ... 160 | 'XTick' , opt.XTick2); 161 | end 162 | if isfield(opt, 'YTick2') 163 | set( hax2 , ... 164 | 'YTick' , opt.YTick2); 165 | end 166 | if isfield(opt, 'XLim2') 167 | set( hax2 , ... 168 | 'XLim' , opt.XLim2); 169 | end 170 | if isfield(opt, 'YLim2') 171 | set( hax2 , ... 172 | 'YLim' , opt.YLim2); 173 | end 174 | if isfield(opt, 'XScale2') 175 | set( hax2 , ... 176 | 'XScale' , opt.XScale2); 177 | end 178 | if isfield(opt, 'YScale2') 179 | set( hax2 , ... 180 | 'YScale' , opt.YScale2); 181 | end 182 | if isfield(opt, 'XGrid2') 183 | set( hax2 , ... 184 | 'XGrid' , opt.XGrid2); 185 | end 186 | if isfield(opt, 'YGrid2') 187 | set( hax2 , ... 188 | 'YGrid' , opt.YGrid2); 189 | end 190 | % presets 191 | set([hax1, hax2], ... 192 | 'FontName' , FontName, ... 193 | 'FontSize' , FontSize - 2,... 194 | 'Box' , 'off', ... 195 | 'TickDir' , 'in' , ... 196 | 'TickLength' , [.02 .02] , ... 197 | 'XMinorTick' , 'on' , ... 198 | 'YMinorTick' , 'on' , ... 199 | 'LineWidth' , 1); 200 | set(hax1, ... 201 | 'XColor' , XColor1, ... 202 | 'YColor' , YColor1, ... 203 | 'XAxisLocation','bottom',... 204 | 'YAxisLocation','left'); 205 | 206 | set(hax2,... 207 | 'XColor' , XColor2, ... 208 | 'YColor' , YColor2, ... 209 | 'XAxisLocation','top',... 210 | 'YAxisLocation','right',... 211 | 'XTickLabel' ,''); 212 | 213 | % legend for plot 1 214 | if isfield(opt, 'Legend1') 215 | hLegend1 = legend(hax1, ... 216 | opt.Legend1); 217 | set(hLegend1, ... 218 | 'Box' , 'off',... 219 | 'Color' , 'none',... 220 | 'TextColor' , [0 0 0]); 221 | if isfield(opt, 'LegendLoc1') 222 | set(hLegend1,... 223 | 'location' , opt.LegendLoc1); 224 | end 225 | if isfield(opt, 'FontSize') 226 | set(hLegend1,... 227 | 'FontSize' , opt.FontSize - 4); 228 | end 229 | end 230 | 231 | % legend for plot 2 232 | if isfield(opt, 'Legend2') 233 | hLegend2 = legend(hax2, ... 234 | opt.Legend2); 235 | set(hLegend2, ... 236 | 'Box' , 'off',... 237 | 'Color' , 'none',... 238 | 'TextColor' , [0 0 0]); 239 | if isfield(opt, 'LegendLoc2') 240 | set(hLegend2,... 241 | 'location' , opt.LegendLoc2); 242 | end 243 | if isfield(opt, 'FontSize') 244 | set(hLegend2,... 245 | 'FontSize' , opt.FontSize - 4); 246 | end 247 | end 248 | 249 | % labels for plot 1 250 | if isfield(opt, 'XLabel1') 251 | hxl1 = xlabel(hax1, opt.XLabel1); 252 | set(hxl1 , ... 253 | 'FontName' , FontName,... 254 | 'FontSize' , FontSize); 255 | end 256 | if isfield(opt, 'YLabel1') 257 | hyl1 = ylabel(hax1, opt.YLabel1); 258 | set(hyl1 , ... 259 | 'FontName' , FontName,... 260 | 'FontSize' , FontSize); 261 | end 262 | 263 | % labels for plot 2 264 | if isfield(opt, 'XLabel2') 265 | hxl2 = xlabel(hax2, opt.XLabel2); 266 | set(hxl2 , ... 267 | 'FontName' , FontName,... 268 | 'FontSize' , FontSize); 269 | end 270 | if isfield(opt, 'YLabel2') 271 | hyl2 = ylabel(hax2, opt.YLabel2); 272 | set(hyl2 , ... 273 | 'FontName' , FontName,... 274 | 'FontSize' , FontSize); 275 | end 276 | 277 | % positioning 278 | % set the box size 279 | % set(hax1, ... 280 | % 'Units' , 'inches',... 281 | % 'Position' , BoxPos); 282 | boxpos = get(hax1, 'TightInset'); 283 | BoxPos = [boxpos(1), boxpos(2), boxpos(3)+BoxPos(3), boxpos(4)+BoxPos(4)]; 284 | set(hax1, ... 285 | 'Position' , BoxPos); 286 | set(hax2, ... 287 | 'Position' , BoxPos); 288 | % set the figure size and position 289 | pos = get(hfig, 'Position'); 290 | outerpos = get(hax1, 'OuterPosition'); 291 | set(hfig, 'Position', [pos(1), pos(2), outerpos(3), outerpos(4)]); 292 | set(hfig, 'PaperPositionMode', 'auto'); 293 | 294 | % save to disk 295 | if isfield(opt, 'FileName') 296 | print( '-depsc2', opt.FileName); 297 | fixPSlinestyle(opt.FileName); 298 | end -------------------------------------------------------------------------------- /lib/setPlotProp.m: -------------------------------------------------------------------------------- 1 | function h = setPlotProp(opt, hfig) 2 | % function h = setPlotProp(opt, hfig) 3 | % This function changes the properties of the figure represented by 'hfig' 4 | % and exports it as a publication quality image file. The resolution of 5 | % the image can be chosen by the user. Supported image formats are EPS, 6 | % PDF, PNG, JPEG and TIFF. The figure properties are specified by the 7 | % options structure 'opt'. 8 | % 9 | % Parameters: 10 | % opt: options structure: 11 | % BoxDim: vector [width, height]: size of the axes box in inches; default: [6, 2.5] 12 | % ShowBox: 'on' = show or 'off' = hide bounding box; default: 'on' 13 | % FontName: string: font name; default: 'Arial' 14 | % FontSize: integer; default: 26 15 | % LineWidth: vector [width1, width2, ..]: element i changes the property of i-th dataset; default: 2 16 | % LineStyle: cell array {'style1', 'style2', ..}: element i changes the property of i-th dataset; default: '-' 17 | % Markers: cell array {'marker1', 'marker2', ..}: element i changes the property of i-th dataset; default: 'None' 18 | % MarkerSpacing:vector [space1, space2, ..]: element i changes the property of i-th dataset; default: 0 19 | % Colors: 3xN matrix, [red, green, blue] where N is the number of datasets. 20 | % AxisColor: [red, green, blue]; color of the axis lines; default: black 21 | % AxisLineWidth:Witdth of the axis lines; default: 2 22 | % XLabel: X axis label 23 | % YLabel: Y axis label 24 | % ZLabel: Z axis label 25 | % Title: Plot title 26 | % XTick: [tick1, tick2, ..]: major ticks for X axis. 27 | % YTick: [tick1, tick2, ..]: major ticks for Y axis. 28 | % ZTick: [tick1, tick2, ..]: major ticks for Z axis. 29 | % XMinorTick: 'on' or 'off': show X minor tick? 30 | % YMinorTick: 'on' or 'off': show Y minor tick? 31 | % ZMinorTick: 'on' or 'off': show Z minor tick? 32 | % TickDir: tick direction: 'in' or 'out'; default: 'in' 33 | % TickLength: tick length; default: [0.02, 0.02] 34 | % XLim: [min, max]: X axis limit. 35 | % YLim: [min, max]: Y axis limit. 36 | % ZLim: [min, max]: Z axis limit. 37 | % XScale: 'linear' or 'log': X axis scale. 38 | % YScale: 'linear' or 'log': Y axis scale. 39 | % ZScale: 'linear' or 'log': Z axis scale. 40 | % XGrid: 'on' or 'off': show grid in X axis? 41 | % YGrid: 'on' or 'off': show grid in Y axis? 42 | % ZGrid: 'on' or 'off': show grid in Z axis? 43 | % XDir: 'in' or 'out': X axis tick direction 44 | % YDir: 'in' or 'out': Y axis tick direction 45 | % ZDir: 'in' or 'out': Z axis tick direction 46 | % Legend: {'legend1','legend2',...} 47 | % LegendBox: bounding box of legend: 'on'/'off'; default: 'off' 48 | % LegendBoxColor: color of the bounding box of legend; default: 'none' 49 | % LegendTextColor: color of the legend text; default: [0,0,0] 50 | % LegendEdgeColor: color of the legend edges; default: [0,0,0] 51 | % LegendLoc: 'NorthEast', ..., 'SouthWest': legend location 52 | % Resolution: Resolution (dpi) for bitmapped file. Default:600. 53 | % HoldLines: true/false. true == only modify axes settings, do not touch plot lines/surfaces. Default false. 54 | % FileName: Save? Give a file name. 55 | % 56 | % hfig: Figure handle (optional). Default: current figure. 57 | % 58 | % 59 | % Written by: K M Masum Habib (http://masumhabib.com) 60 | % Copyright (c) K M Masum Habib 2012-2015. 61 | % 62 | % Distributed under the BSD License. 63 | % 64 | % Version: 2.2 65 | % 66 | 67 | if nargin < 1 || nargin > 2 68 | fprintf('Usage: function h = setPlotProp(opt, hfig)'); 69 | elseif nargin == 1 70 | hfig = gcf; 71 | end 72 | 73 | % get the object handles. 74 | haxis = get(hfig,'CurrentAxes'); 75 | hp = get(haxis, 'Children'); 76 | N = length(hp); 77 | for ihp = 1:N 78 | tmp(ihp) = hp(end-ihp+1); 79 | end 80 | hp = tmp; 81 | hxl = get(haxis, 'XLabel'); 82 | hyl = get(haxis, 'YLabel'); 83 | hzl = get(haxis, 'ZLabel'); 84 | 85 | % initialize settings 86 | BoxDim = [6, 3]; 87 | ShowBox = 'on'; 88 | FontName = 'Arial'; 89 | FontSize = 20; 90 | LineWidth = 2.5*ones(1, N); 91 | % LineStyle = {}; 92 | % for ii = 1:N 93 | % LineStyle{ii} = '-'; 94 | % end 95 | LineStyle = {hp.LineStyle}; 96 | % Markers = {}; 97 | % for ii = 1:N 98 | % Markers{ii} = 'None'; 99 | % end 100 | Markers = {hp.Marker}; 101 | MarkerSpacing = zeros(size(hp)); 102 | % Colors = [ 103 | % 0.16, 0.44, 1.00; 104 | % 0.93, 0.00, 0.00; 105 | % 0.00, 0.57, 0.00; 106 | % 0.17, 0.17, 0.17; 107 | % 0.44, 0.00, 0.99; 108 | % 1.00, 0.50, 0.10; 109 | % 0.75, 0.00, 0.75; 110 | % 0.50, 0.50, 0.50; 111 | % 0.50, 0.57, 0.00; 112 | % 0.00, 0.00, 0.00; 113 | % ]; 114 | Colors = reshape([hp.Color], 3, [])'; 115 | XMinorTick = 'on'; 116 | YMinorTick = 'on'; 117 | ZMinorTick = 'on'; 118 | TickDir = 'in'; 119 | TickLength = [0.02, 0.02]; 120 | 121 | Resolution = 600; % figure resolution for bitmapped file. 122 | HoldLines = false; 123 | AxisColor = [0.0 0.0 0.0]; % axis color 124 | AxisLineWidth = 1.5; % axis color 125 | 126 | % Figure properties 127 | % create figure window 128 | set(hfig, 'Units', 'inches', ... 129 | 'Color', [1,1,1]); 130 | 131 | % plot dimensions 132 | if isfield(opt, 'BoxDim') 133 | BoxDim = opt.BoxDim; 134 | end 135 | BoxPos = [1, 1, BoxDim(1), BoxDim(2)]; 136 | 137 | % Show Box? 138 | if isfield(opt, 'ShowBox') 139 | ShowBox = opt.ShowBox; 140 | end 141 | 142 | %font 143 | if isfield(opt, 'FontName') 144 | FontName = opt.FontName; 145 | end 146 | 147 | if isfield(opt, 'FontSize') 148 | FontSize = opt.FontSize; 149 | end 150 | 151 | %plot properties 152 | if isfield(opt, 'LineWidth') 153 | LineWidth = opt.LineWidth; 154 | if N > length(LineWidth) 155 | LineWidth = [LineWidth, 2*ones(1, N-length(LineWidth))]; 156 | end 157 | end 158 | 159 | if isfield(opt, 'LineStyle') 160 | LineStyle = opt.LineStyle; 161 | 162 | for ii = 1:N 163 | if ii > length(LineStyle) 164 | LineStyle{ii} = '-'; 165 | end 166 | if strcmp(LineStyle{ii}, '') 167 | LineStyle{ii} = '-'; 168 | end 169 | end 170 | end 171 | 172 | if isfield(opt, 'Markers') 173 | Markers = opt.Markers; 174 | 175 | for ii = 1:N 176 | if ii > length(Markers) 177 | Markers{ii} = 'None'; 178 | end 179 | if strcmp(Markers{ii}, '') 180 | Markers{ii} = 'None'; 181 | end 182 | end 183 | end 184 | 185 | if isfield(opt, 'MarkerSpacing') 186 | MarkerSpacing = opt.MarkerSpacing; 187 | if N > length(MarkerSpacing) 188 | MarkerSpacing = [MarkerSpacing, 2*zeros(1, N-length(MarkerSpacing))]; 189 | end 190 | 191 | end 192 | 193 | if isfield(opt, 'Colors') 194 | Colors = opt.Colors; 195 | for ii = 1:N 196 | if ii > length(Colors) 197 | Colors(ii,:) = [0.16, 0.44, 1.00]; 198 | end 199 | end 200 | 201 | end 202 | 203 | if isfield(opt, 'Resolution') 204 | Resolution = opt.Resolution; 205 | end 206 | 207 | if isfield(opt, 'HoldLines') 208 | HoldLines = opt.HoldLines; 209 | end 210 | 211 | if isfield(opt, 'AxisColor') 212 | AxisColor = opt.AxisColor; 213 | end 214 | 215 | if isfield(opt, 'AxisLineWidth') 216 | AxisLineWidth = opt.AxisLineWidth; 217 | end 218 | 219 | if HoldLines == false 220 | for ii=1:N 221 | if MarkerSpacing(ii) ~= 0 222 | Marker = 'None'; 223 | else 224 | Marker = Markers{ii}; 225 | end 226 | set(hp(ii) , ... 227 | 'LineStyle' , LineStyle{ii}, ... 228 | 'Marker' , Marker,... 229 | 'Color' , Colors(ii,:), ... 230 | 'LineWidth' , LineWidth(ii)); 231 | end 232 | 233 | for ii = 1:N 234 | if MarkerSpacing(ii) ~= 0 235 | xdata = get(hp(ii),'XData'); 236 | ydata = get(hp(ii),'YData'); 237 | hold on; 238 | 239 | % duplicate each plots twice: 240 | % for marker 241 | hmarker = plot (xdata(1:MarkerSpacing(ii):end), ydata(1:MarkerSpacing(ii):end)); 242 | % for legend 243 | hfake = plot (xdata, ydata); 244 | 245 | % remove any original markers 246 | set(hp(ii), 'Marker', 'none'); 247 | 248 | set(hmarker, ... 249 | 'LineStyle' , 'None', ... 250 | 'Marker' , Markers{ii},... 251 | 'Color' , Colors(ii,:), ... 252 | 'MarkerEdgeColor' , 'none',... %Colors(ii,:), ... 253 | 'MarkerFaceColor' , Colors(ii,:), ... 254 | 'MarkerSize' , 3*LineWidth(ii), ... 255 | 'LineWidth' , LineWidth(ii)); 256 | 257 | set(hfake, ... 258 | 'LineStyle' , LineStyle{ii}, ... 259 | 'Marker' , Markers{ii},... 260 | 'Color' , Colors(ii,:), ... 261 | 'MarkerEdgeColor' , 'none',... %Colors(ii,:), ... 262 | 'MarkerFaceColor' , Colors(ii,:), ... 263 | 'MarkerSize' , 3*LineWidth(ii), ... 264 | 'LineWidth' , LineWidth(ii),... 265 | 'Visible' , 'off'); 266 | 267 | hp(ii) = hfake; 268 | end 269 | end 270 | end 271 | 272 | if isfield(opt, 'XTick') 273 | set( haxis , ... 274 | 'XTick' , opt.XTick); 275 | end 276 | if isfield(opt, 'YTick') 277 | set( haxis , ... 278 | 'YTick' , opt.YTick); 279 | end 280 | if isfield(opt, 'ZTick') 281 | set( haxis , ... 282 | 'ZTick' , opt.ZTick); 283 | end 284 | 285 | if isfield(opt, 'XMinorTick') 286 | XMinorTick = opt.XMinorTick; 287 | end 288 | if isfield(opt, 'YMinorTick') 289 | YMinorTick = opt.YMinorTick; 290 | end 291 | if isfield(opt, 'ZMinorTick') 292 | ZMinorTick = opt.ZMinorTick; 293 | end 294 | 295 | if isfield(opt, 'TickDir') 296 | TickDir = opt.TickDir; 297 | end 298 | 299 | if isfield(opt, 'TickLength') 300 | TickLength = opt.TickLength; 301 | end 302 | 303 | if isfield(opt, 'XLim') 304 | set( haxis , ... 305 | 'XLim' , opt.XLim); 306 | end 307 | if isfield(opt, 'YLim') 308 | set( haxis , ... 309 | 'YLim' , opt.YLim); 310 | end 311 | if isfield(opt, 'ZLim') 312 | set( haxis , ... 313 | 'ZLim' , opt.ZLim); 314 | end 315 | 316 | if isfield(opt, 'XScale') 317 | set( haxis , ... 318 | 'XScale' , opt.XScale); 319 | end 320 | if isfield(opt, 'YScale') 321 | set( haxis , ... 322 | 'YScale' , opt.YScale); 323 | end 324 | if isfield(opt, 'ZScale') 325 | set( haxis , ... 326 | 'ZScale' , opt.ZScale); 327 | end 328 | 329 | if isfield(opt, 'XGrid') 330 | set( haxis , ... 331 | 'XGrid' , opt.XGrid); 332 | end 333 | if isfield(opt, 'YGrid') 334 | set( haxis , ... 335 | 'YGrid' , opt.YGrid); 336 | end 337 | if isfield(opt, 'ZGrid') 338 | set( haxis , ... 339 | 'ZGrid' , opt.ZGrid); 340 | end 341 | 342 | if isfield(opt, 'XDir') 343 | set( haxis , ... 344 | 'XDir' , opt.XDir); 345 | end 346 | if isfield(opt, 'YDir') 347 | set( haxis , ... 348 | 'YDir' , opt.YDir); 349 | end 350 | if isfield(opt, 'ZDir') 351 | set( haxis , ... 352 | 'ZDir' , opt.ZDir); 353 | end 354 | 355 | if isfield(opt, 'XMinorTick') 356 | XMinorTick = opt.XMinorTick; 357 | end 358 | if isfield(opt, 'YMinorTick') 359 | YMinorTick = opt.YMinorTick; 360 | end 361 | if isfield(opt, 'ZMinorTick') 362 | ZMinorTick = opt.ZMinorTick; 363 | end 364 | 365 | set( haxis , ... 366 | 'Units' , 'inches',... 367 | 'FontName' , FontName, ... 368 | 'FontSize' , FontSize,... 369 | 'Box' , ShowBox , ... 370 | 'Color' , 'none',... 371 | 'TickDir' , TickDir , ... 372 | 'TickLength' , TickLength , ... 373 | 'XMinorTick' , XMinorTick, ... 374 | 'YMinorTick' , YMinorTick, ... 375 | 'ZMinorTick' , ZMinorTick, ... 376 | 'XMinorGrid' , 'off', ... 377 | 'YMinorGrid' , 'off', ... 378 | 'ZMinorGrid' , 'off', ... 379 | 'XColor' , AxisColor, ... 380 | 'YColor' , AxisColor, ... 381 | 'ZColor' , AxisColor, ... 382 | 'LineWidth' , AxisLineWidth); 383 | 384 | % legend 385 | if isfield(opt, 'Legend') 386 | hLegend = legend(hp, ... 387 | opt.Legend); 388 | else 389 | hLegend = legend(); 390 | end 391 | 392 | if isfield(opt, 'LegendBox') 393 | set(hLegend, 'Box' , opt.LegendBox); 394 | else 395 | set(hLegend, 'Box' , 'off'); 396 | end 397 | 398 | if isfield(opt, 'LegendBoxColor') 399 | set(hLegend, 'Color' , opt.LegendBoxColor); 400 | else 401 | set(hLegend, 'Color' , 'none'); 402 | end 403 | 404 | if isfield(opt, 'LegendTextColor') 405 | set(hLegend, 'TextColor' , opt.LegendTextColor); 406 | else 407 | set(hLegend, 'TextColor' , [0 0 0]); 408 | end 409 | 410 | if isfield(opt, 'LegendEdgeColor') 411 | set(hLegend, 'EdgeColor' , opt.LegendEdgeColor); 412 | else 413 | set(hLegend, 'EdgeColor' , [0 0 0]); 414 | end 415 | 416 | if isfield(opt, 'LegendLoc') 417 | set(hLegend,... 418 | 'location' , opt.LegendLoc); 419 | end 420 | 421 | if isfield(opt, 'FontSize') 422 | set(hLegend,... 423 | 'FontSize' , opt.FontSize); 424 | end 425 | 426 | 427 | % labels 428 | if isfield(opt, 'XLabel') 429 | set(hxl , ... 430 | 'String' , opt.XLabel); 431 | end 432 | set(hxl , ... 433 | 'FontName' , FontName,... 434 | 'FontSize' , FontSize); 435 | 436 | if isfield(opt, 'YLabel') 437 | set(hyl , ... 438 | 'String' , opt.YLabel); 439 | end 440 | set(hyl , ... 441 | 'FontName' , FontName,... 442 | 'FontSize' , FontSize); 443 | 444 | if isfield(opt, 'ZLabel') 445 | set(hyl , ... 446 | 'String' , opt.YLabel); 447 | end 448 | set(hzl , ... 449 | 'FontName' , FontName,... 450 | 'FontSize' , FontSize); 451 | 452 | if isfield(opt, 'Title') 453 | htitle = title(haxis, opt.Title,... 454 | 'FontName', FontName, ... 455 | 'FontSize', FontSize); 456 | end 457 | 458 | % positioning 459 | % set the box size 460 | set(haxis, ... 461 | 'Units' , 'inches',... 462 | 'Position' , BoxPos); 463 | % set the figure size and position 464 | pos = get(hfig, 'Position'); 465 | outerpos = get(haxis, 'OuterPosition'); 466 | set(haxis, 'OuterPosition',[0, 0, outerpos(3), outerpos(4)]); 467 | set(hfig, 'Position', [pos(1), pos(2), outerpos(3), outerpos(4)]); 468 | % for paper position in the eps 469 | set(hfig, 'PaperPositionMode', 'auto'); 470 | 471 | % save to disk 472 | if isfield(opt, 'FileName') 473 | fileType = strread(opt.FileName, '%s', 'delimiter', '.'); 474 | 475 | fileType = fileType(end); 476 | 477 | if strcmpi(fileType, 'eps') 478 | print(hfig, '-depsc2', opt.FileName); 479 | vers = version(); 480 | if ~strcmp(vers(1:3), '8.4') 481 | fixPSlinestyle(opt.FileName); 482 | end 483 | elseif strcmpi(fileType, 'pdf') 484 | print(hfig, '-dpdf', opt.FileName); 485 | elseif strcmpi(fileType, 'jpg') || strcmpi(fileType, 'jpeg') 486 | print(hfig, '-djpeg', '-opengl', sprintf('-r%d',Resolution), opt.FileName); 487 | elseif strcmpi(fileType, 'png') 488 | print(hfig, '-dpng', '-opengl', sprintf('-r%d',Resolution), opt.FileName); 489 | elseif strcmpi(fileType, 'tiff') 490 | print(hfig, '-dtiff', '-opengl', sprintf('-r%d',Resolution), opt.FileName); 491 | elseif strcmpi(fileType, 'emf') 492 | print(hfig, '-dmeta', sprintf('-r%d',Resolution), opt.FileName); 493 | else 494 | err = MException('', ... 495 | '=====> ERROR: File type %s is not supported. ', fileType); 496 | throw(err); 497 | end 498 | end 499 | 500 | h = hfig; 501 | -------------------------------------------------------------------------------- /lib/setPlotProp2.m: -------------------------------------------------------------------------------- 1 | function h = setPlotProp2(hfig, opt) 2 | % function h = setPlotProp2(hfig, opt) 3 | % This function is a compatibility layer on top of setPlotProp, which 4 | % provides compatibility to MATLAB line/patch functions. 5 | % Like setPlotProp, this function changes the properties of the figure 6 | % represented by 'hfig' and exports it as a publication quality image file. 7 | % The resolution of the image can be chosen by the user. Supported image 8 | % formats are EPS, PDF, PNG, JPEG and TIFF. The figure properties are 9 | % specified by the options structure 'opt'. 10 | % 11 | % Parameters: 12 | % 13 | % hfig: Figure handle. 14 | % 15 | % opt: options structure: 16 | % BoxDim: vector [width, height]: size of the axes box in inches; default: [6, 2.5] 17 | % ShowBox: 'on' = show or 'off' = hide bounding box; default: 'on' 18 | % FontName: string: font name; default: 'Arial' 19 | % FontSize: integer; default: 26 20 | % LineWidth: vector [width1, width2, ..]: element i changes the property of i-th dataset; default: 2 21 | % LineStyle: cell array {'style1', 'style2', ..}: element i changes the property of i-th dataset; default: '-' 22 | % Markers: cell array {'marker1', 'marker2', ..}: element i changes the property of i-th dataset; default: 'None' 23 | % MarkerSpacing:vector [space1, space2, ..]: element i changes the property of i-th dataset; default: 0 24 | % Colors: 3xN matrix, [red, green, blue] where N is the number of datasets. 25 | % AxisColor: [red, green, blue]; color of the axis lines; default: black 26 | % AxisLineWidth:Witdth of the axis lines; default: 2 27 | % XLabel: X axis label 28 | % YLabel: Y axis label 29 | % ZLabel: Z axis label 30 | % Title: Plot title 31 | % XTick: [tick1, tick2, ..]: major ticks for X axis. 32 | % YTick: [tick1, tick2, ..]: major ticks for Y axis. 33 | % ZTick: [tick1, tick2, ..]: major ticks for Z axis. 34 | % XMinorTick: 'on' or 'off': show X minor tick? 35 | % YMinorTick: 'on' or 'off': show Y minor tick? 36 | % ZMinorTick: 'on' or 'off': show Z minor tick? 37 | % TickDir: tick direction: 'in' or 'out'; default: 'in' 38 | % TickLength: tick length; default: [0.02, 0.02] 39 | % XLim: [min, max]: X axis limit. 40 | % YLim: [min, max]: Y axis limit. 41 | % ZLim: [min, max]: Z axis limit. 42 | % XScale: 'linear' or 'log': X axis scale. 43 | % YScale: 'linear' or 'log': Y axis scale. 44 | % ZScale: 'linear' or 'log': Z axis scale. 45 | % XGrid: 'on' or 'off': show grid in X axis? 46 | % YGrid: 'on' or 'off': show grid in Y axis? 47 | % ZGrid: 'on' or 'off': show grid in Z axis? 48 | % XDir: 'in' or 'out': X axis tick direction 49 | % YDir: 'in' or 'out': Y axis tick direction 50 | % ZDir: 'in' or 'out': Z axis tick direction 51 | % Legend: {'legend1','legend2',...} 52 | % LegendBox: bounding box of legend: 'on'/'off'; default: 'off' 53 | % LegendBoxColor: color of the bounding box of legend; default: 'none' 54 | % LegendTextColor: color of the legend text; default: [0,0,0] 55 | % LegendEdgeColor: color of the legend edges; default: [0,0,0] 56 | % LegendLoc: 'NorthEast', ..., 'SouthWest': legend location 57 | % Resolution: Resolution (dpi) for bitmapped file. Default:600. 58 | % HoldLines: true/false. true == only modify axes settings, do not touch plot lines/surfaces. Default false. 59 | % FileName: Save? Give a file name. 60 | % 61 | % 62 | % 63 | % Written by: K M Masum Habib (http://masumhabib.com) 64 | % Copyright (c) K M Masum Habib 2012-2015. 65 | % 66 | % Distributed under the BSD License. 67 | % 68 | % Version: 2.2 69 | % 70 | 71 | h = setPlotProp(opt, hfig); 72 | 73 | -------------------------------------------------------------------------------- /license.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2012-2015, K M Masum Habib 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are met: 6 | 7 | 1. Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 2. Redistributions in binary form must reproduce the above copyright notice, 10 | this list of conditions and the following disclaimer in the documentation 11 | and/or other materials provided with the distribution. 12 | 13 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 14 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 15 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 16 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 17 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 18 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 19 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 20 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 21 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 22 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 23 | 24 | --------------------------------------------------------------------------------