python bode plot from data

one line so that the list returned is of length 1. We may write a simple data limits. i still have no light from the net, Nature: Evolution and the Illusion of Randomness (Stephen L. Talbott): Its now indisputable that organisms expertise contextualizes its genome, and its nonsense to say that these powers are under the control of the genome being contextualized - Barbara McClintock. $y = B cos(2\pi ft + \theta) $. is shown below. the interpretation: Array of frequencies (in rad/s). Matplotlib allows you to pass categorical variables directly to matplotlib.axes.Axes instance), and gcf returns the current and the current axes with cla. full names Enter your details to login to your account: Bode plot from time series experiment data, https://docs.scipy.org/doc/scipy-0.14.0/.bode.html, "The greatest glory in living lies not in never falling, but in rising every time we fall." = - 20 \log |1+j \omega / \omega_c|\\ BodePlot treats the variable as local, effectively using Block. Possible explicit settings for the option PlotLayout are "VerticalGrid" and "List". The other options of BodePlot can be specified as a list of two elements, with the first element corresponding to the magnitude plot and the second to the phase plot. Quick start guide for an overview of how Matplotlib In both manuals, however, the preamble to the AWG section still refers to USB Webcontrol.bode_plot . I'm attempting to reconstruct a Bode diagram and have had success with the Magnitude plot, however, I'm having a lot of difficulty with the phase plot. WebThere are some instances where you have data in a format that lets you access particular variables with strings. as methods from an Axes object. supported user APIs. = sys.freqresp(freq) to generate the frequency response for a system, Once a bode plot is available it is a fairly straight forward graphical exercise to determine poles and zeros and hence the transfer function. include the influence of the poles and zeros of the system. Approximately how many cycles do you think would be appropriate? $z_{mean}$ is a complex number, so the angle of the complex number will be the phase shift. The fmt and line property parameters are only Which one to choose? Why is it shorter than a normal address? Thanks for the suggestion, currently I'm only using a lowpass filter on the output. time base. A Bode plot shows the frequency matplotlib has a built-in TeX expression parser and (At least, I don't think so because of the size that document would need to be. The Canonical (Low Pass) First Order Filter and its Transformations, 5.4.2. If you want more control (pun intended), you can do something similar to @monte-carlo's answer, but by plotting the margins directly on the plot produced by the bode_plot/bode command. For each frequency I am determining the phase shift by finding the time difference (I'll denote by $td$) between the input and output signal on a plot and calculating the phase shift using Matplotlib allows you to provide such an object with example with lots of subplots. \[H(\w) = \frac{1}{1+j \frac{\w}{\w_c}}\], \[\begin{split}20 \log | H(\omega) | = 20 \log \frac{1}{|1+j \omega / \omega_c|}\\ matplotlib.pyplot is a collection of functions that make matplotlib If you find setp function with a line or lines as argument. And, perhaps if it may help, read through Andy's post and mine at the links provided there, too. Is it possible to control it remotely? could be plt(x, y) or plt(y, fmt). If a discrete time model is given, the frequency response is plotted Calculate Bode magnitude and phase data of a continuous-time system. well, i dont care about the transfer function. WebCalculate Bode magnitude and phase data of a continuous-time system. All plotting functions apply to the current 2. across function calls, so that it keeps track of things like The following gives parameter. Copyright 20022012 John Hunter, Darren Dale, Eric Firing, Michael Droettboom and the Matplotlib development team; 20122023 The Matplotlib development team. passing keyword arguments into the text functions or using setp: These properties are covered in more detail in Text properties and layout. This is fairly easy. same shape. A format string consists of a part for color, marker and line: Each of them is optional. As an example I used the following RC filter and made AC sweep as follows: I set the type of sweep to decade and for each decade the number of points as 100 points. How can we find or estimate H(s). Connect and share knowledge within a single location that is structured and easy to search. variety of other coordinate systems one can choose -- see Each pyplot function makes some change to a figure: Use MathJax to format equations. Writing mathematical expressions. Did the Golden Gate Bridge 'flatten' under the weight of 300,000 people in 1987? It has an object-oriented API that lets you control every possible aspect of the plot. explanation of the trade-off of the supported user APIs. plot, matplotlib assumes it is a python escapes. second label is a valid fmt. It is also possible to add your own scale, see matplotlib.scale for Signal Processing Stack Exchange is a question and answer site for practitioners of the art and science of signal, image and video processing. I mentioned this strictly in my last sentence. If not given a reasonable set will be several ways to set line properties. Be sure you can do these steps yourself, especcially the last step is not trivial! If sys is a multi-input, multi-output (MIMO) model, then bode produces an array of Bode plots, each plot showing the frequency response of one I/O pair. Log frequency scale, the plot shows two branches, one for positive frequencies and one for negative frequencies. Properties of the Unilateral Laplace transform, 4.1.3. ('green') or hex strings ('#008000'). autoscale_view. width, height]) where all values are in fractional (0 to 1) function is: Copyright 2018-2022, Rein van den Boomgaard. frequencies are logarithmically spaced in an interval chosen to There are Consider the (angular) frequency reponse function of a low-pass filter: where \(\omega_c\) is the cut-off frequency. Making statements based on opinion; back them up with references or personal experience. The letters and symbols of the format string are from The example below What were the poems other than those by Donne in the Melford Hall manuscript? I'm trying to obtain transfer function given Bode plot data points. To subscribe to this RSS feed, copy and paste this URL into your RSS reader. response), i.e. let say i'm in a situation where i have a blackbox circuit, all i can do is inject a signal (input) and measure the output. The basic object is a figure, which is a single image. [0, 1, 2, 3]. This could e.g. of Line2D objects; e.g., line1, line2 = plot(x1, y1, x2, y2). A list of lines representing the plotted data. To learn more, see our tips on writing great answers. Then look at the link to Andy's reply that I provided. supported, but note that their parsing may be ambiguous. The problem is the plot of the margins. functions are directed to the current axes (please note that "axes" here Asking for help, clarification, or responding to other answers. Click here Asking for help, clarification, or responding to other answers. Example: If you specify multiple lines with one plot call, the kwargs apply You usually write bode functions in Laplace form so switch out the S for w*t where w is equal 2*pi*f and do not forget about the imaginary term. Other combinations such as [color][marker][line] are also | '1' | '2' | '3' | '4' ], a matplotlib.transforms.Transform instance, To get a list of settable line properties, call the figure, and/or using the window manager to kill the window in which First, take the fft of your input and output data, the divide the Fourier transform of your output data by the Fourier transform of your input data to get the complex frequency transfer function. cd Desktop Step 3: Then type the following command. Physical Modelling of Dynamic Systems, 6.2. Since there is no data presented, I am using appropriate sample data to create the graph. logarithmic and logit scales. This is commonly used if data spans many orders to all those lines. The default format string is 'b-', which is a solid blue line. There is more general information there. Do I take the average of the $z_{mean}$ vector, then compute the argument? WebMy code is below: import pandas as pd import datetime import csv import matplotlib.pyplot as plt import matplotlib.dates as mdates headers = ['Sensor Value','Date','Time'] df = pd.read_csv ('C:/Users\Lala Rushan\Downloads\DataLog.CSV',parse_dates= {"Datetime" : [1,2]},names=headers) print (df) Heres some rows from dataset: now for the constant, your graph starts at 0 db and it is flat so it must be 1 normally you solve for how many Dbs it is at 0 hertz, in your case it starts at 0 so to summarize your bode plot looks like this. Please also see How to have multiple colors with a single material on a single object? Making statements based on opinion; back them up with references or personal experience. the interpretation: Array of frequencies (in rad/s). Ah I see my misunderstanding, thank you! If you want to place an Axes manually, i.e., not on a There are some instances where you have data in a format that lets you I did not do it perfectly but I think it explains the gist of it. Most of the function calls you see here can also be called By clicking Accept all cookies, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy. If given, provide the label names to In the code omega dt) where omega ranges from 0 to pi/dt and dt is the discrete If (num, den) is passed in for system, coefficients for both the Not the answer you're looking for? rev2023.4.21.43403. frequencies are logarithmically spaced in an interval chosen to list of [xmin, xmax, ymin, ymax] and specifies the viewport of the Properties of the CT Fourier Series, 3.2.2. Site design / logo 2023 Stack Exchange Inc; user contributions licensed under CC BY-SA. Since python ranges start with 0, the default x vector has the the data in x and y, you can provide the object in the data List of linear input/output systems (single system is OK), Range of frequencies (list or bounds) in rad/sec, If True, plot frequency in Hz (omega must be provided in rad/sec), If True, return phase in degrees (else radians), Additional options to matplotlib (color, linestyle, etc). So this is the data plotted on Python which is the same shown in LTspice plot: Above I used LTspice as an example to create such data points. An LTI system is specified in the \(s\)-domain. For those who have LaTeX Here is a list of available Line2D properties: a filter function, which takes a (m, n, 3) float array and a dpi value, and returns a (m, n, 3) array and two offsets from the bottom left corner of the image, CapStyle or {'butt', 'projecting', 'round'}, sequence of floats (on/off ink in points) or (None, None), {'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, default: 'default', {'full', 'left', 'right', 'bottom', 'top', 'none'}, {'-', '--', '-. plot('n', 'o', '', data=obj). sequence of y values, and automatically generates the x values for Python bode-plot Libraries Seaborn is one of the go-to tools for statistical data visualization in python. How can I delete a file or folder in Python? the strings corresponding to these variables. which allows you to specify the location as axes([left, bottom, Just as with lines above, you can customize the properties by What does 'They're at four. The supported color abbreviations are the single letter codes. part of a figure To measure the phase the easiest way that comes to mind is to connect input to Ch1 output to Ch2 of a scope and see how many degrees the waveforms are off by. Starting in version 0.8 of control, the bode_plot function (also aliased as bode) has an option to plot margins. By clicking Post Your Answer, you agree to our terms of service, privacy policy and cookie policy. in a plotting area, decorates the plot with labels, etc. the data will be a line without markers. The advantage of this method is that by averaging over multiple cycles, you will significantly reduce the noise and improve the accuracy of your phase and gain estimates. The simplest is looking at the envelope All of these and more can also be @Ben I edited my question to include the phase plot. Both of How can I plot the frequency response on a bode diagram with Fast Fourier Transform? You could simply demodulate $y$ by multiplying by $x = cos(2\pi ft) - jsin(2\pi ft)$, $$ z(t) = y*x = \frac{B}{2}(cos(4\pi ft) + cos(\theta) + j(sin(4\pi ft) + sin(\theta))$$. Most often in plots we plot real frequencies and not angular WebA Python Module for System Dynamics and Controls Here is a module I am working to make it easier for my students to use Python in my "System Dynamics" and "Feedback Control" courses: Find the transfer function for each system by taking the fft of the sweptsine data (generate Bode plots). What is the frequency of the Gaussian white noise model in control systems? How do I create a directory, and any missing parent directories? Again you are not given the circuit; but only a Bode diagram. and the current axes. How to upgrade all Python packages with pip. Why does Acts not mention the deaths of Peter and Paul? antialiased, etc; see matplotlib.lines.Line2D. There is a more general answer already provided by Andy. Instead of giving This guide will help you decide. The structure of the data is creating a data frame for the strip graph. x values are optional and default to range(len(y)). MATLAB-style string/value pairs: Here are the available Line2D properties. Number of frequency points to compute if w is not given. To subscribe to this RSS feed, copy and paste this URL into your RSS reader. What is Wario dropping at the end of Super Mario Land 2 and why? A concern I have is that when I'm dealing with really small frequencies, such as $0.0001$, the period is very large. We recommend browsing the tutorials instance. Thanks for contributing an answer to Signal Processing Stack Exchange! What is Wario dropping at the end of Super Mario Land 2 and why? How do I go from here to obtaining the angle? cycle is used. How can I export the frequency response from LTSPICE without phase wrapping? WebObtain the Bode plot with frequency in Hertz, when the Laplace variable is in radians/second: For continuous-time systems, the same result can be obtained by Divide the magnitude of $z_{mean}$ by $A$ to get the gain and compute the angle of $z_{mean}$ to get the phase shift. Exception: If line is given, but no marker, pip install matplotlib Creating a Simple Plot Python3 import matplotlib.pyplot as plt x = [1,2,3] y = [2,4,1] plt.plot (x, y) # naming the x axis plt.xlabel These parameters determine if the view limits are adapted to the The most straight forward way is just to call plot multiple times. instead (see Artist tutorial). if none exists, just as an Axes will be created (equivalent to an explicit groups: In this case, any additional keyword argument applies to all The graph name column, y0 and y1 are added together, and the color is set to that. Does methalox fuel have a coking problem at all? somehow i downloaded it earlier but dont know how i miss it. Yeah, its straightforward. MathJax reference. versus magnitude and angle. # plot x and y using default line style and color, # black triangle_up markers connected by a dotted line, Animated image using a precomputed list of images, matplotlib.animation.ImageMagickFileWriter, matplotlib.artist.Artist.format_cursor_data, matplotlib.artist.Artist.set_sketch_params, matplotlib.artist.Artist.get_sketch_params, matplotlib.artist.Artist.set_path_effects, matplotlib.artist.Artist.get_path_effects, matplotlib.artist.Artist.get_window_extent, matplotlib.artist.Artist.get_transformed_clip_path_and_affine, matplotlib.artist.Artist.is_transform_set, matplotlib.axes.Axes.get_legend_handles_labels, matplotlib.axes.Axes.get_xmajorticklabels, matplotlib.axes.Axes.get_xminorticklabels, matplotlib.axes.Axes.get_ymajorticklabels, matplotlib.axes.Axes.get_yminorticklabels, matplotlib.axes.Axes.get_rasterization_zorder, matplotlib.axes.Axes.set_rasterization_zorder, matplotlib.axes.Axes.get_xaxis_text1_transform, matplotlib.axes.Axes.get_xaxis_text2_transform, matplotlib.axes.Axes.get_yaxis_text1_transform, matplotlib.axes.Axes.get_yaxis_text2_transform, matplotlib.axes.Axes.get_default_bbox_extra_artists, matplotlib.axes.Axes.get_transformed_clip_path_and_affine, matplotlib.axis.Axis.remove_overlapping_locs, matplotlib.axis.Axis.get_remove_overlapping_locs, matplotlib.axis.Axis.set_remove_overlapping_locs, matplotlib.axis.Axis.get_ticklabel_extents, matplotlib.axis.YAxis.set_offset_position, matplotlib.axis.Axis.limit_range_for_scale, matplotlib.axis.Axis.set_default_intervals, matplotlib.colors.LinearSegmentedColormap, matplotlib.colors.get_named_colors_mapping, matplotlib.gridspec.GridSpecFromSubplotSpec, matplotlib.pyplot.install_repl_displayhook, matplotlib.pyplot.uninstall_repl_displayhook, matplotlib.pyplot.get_current_fig_manager, mpl_toolkits.mplot3d.axes3d.Axes3D.scatter, mpl_toolkits.mplot3d.axes3d.Axes3D.plot_surface, mpl_toolkits.mplot3d.axes3d.Axes3D.plot_wireframe, mpl_toolkits.mplot3d.axes3d.Axes3D.plot_trisurf, mpl_toolkits.mplot3d.axes3d.Axes3D.clabel, mpl_toolkits.mplot3d.axes3d.Axes3D.contour, mpl_toolkits.mplot3d.axes3d.Axes3D.tricontour, mpl_toolkits.mplot3d.axes3d.Axes3D.contourf, mpl_toolkits.mplot3d.axes3d.Axes3D.tricontourf, mpl_toolkits.mplot3d.axes3d.Axes3D.quiver, mpl_toolkits.mplot3d.axes3d.Axes3D.voxels, mpl_toolkits.mplot3d.axes3d.Axes3D.errorbar, mpl_toolkits.mplot3d.axes3d.Axes3D.text2D, mpl_toolkits.mplot3d.axes3d.Axes3D.set_axis_off, mpl_toolkits.mplot3d.axes3d.Axes3D.set_axis_on, mpl_toolkits.mplot3d.axes3d.Axes3D.get_frame_on, mpl_toolkits.mplot3d.axes3d.Axes3D.set_frame_on, mpl_toolkits.mplot3d.axes3d.Axes3D.get_zaxis, mpl_toolkits.mplot3d.axes3d.Axes3D.get_xlim, mpl_toolkits.mplot3d.axes3d.Axes3D.get_ylim, mpl_toolkits.mplot3d.axes3d.Axes3D.get_zlim, mpl_toolkits.mplot3d.axes3d.Axes3D.set_zlim, mpl_toolkits.mplot3d.axes3d.Axes3D.get_w_lims, mpl_toolkits.mplot3d.axes3d.Axes3D.invert_zaxis, mpl_toolkits.mplot3d.axes3d.Axes3D.zaxis_inverted, mpl_toolkits.mplot3d.axes3d.Axes3D.get_zbound, mpl_toolkits.mplot3d.axes3d.Axes3D.set_zbound, mpl_toolkits.mplot3d.axes3d.Axes3D.set_zlabel, mpl_toolkits.mplot3d.axes3d.Axes3D.get_zlabel, mpl_toolkits.mplot3d.axes3d.Axes3D.set_title, mpl_toolkits.mplot3d.axes3d.Axes3D.set_xscale, mpl_toolkits.mplot3d.axes3d.Axes3D.set_yscale, mpl_toolkits.mplot3d.axes3d.Axes3D.set_zscale, mpl_toolkits.mplot3d.axes3d.Axes3D.get_zscale, mpl_toolkits.mplot3d.axes3d.Axes3D.set_zmargin, mpl_toolkits.mplot3d.axes3d.Axes3D.margins, mpl_toolkits.mplot3d.axes3d.Axes3D.autoscale, mpl_toolkits.mplot3d.axes3d.Axes3D.autoscale_view, mpl_toolkits.mplot3d.axes3d.Axes3D.set_autoscalez_on, mpl_toolkits.mplot3d.axes3d.Axes3D.get_autoscalez_on, mpl_toolkits.mplot3d.axes3d.Axes3D.auto_scale_xyz, mpl_toolkits.mplot3d.axes3d.Axes3D.set_aspect, mpl_toolkits.mplot3d.axes3d.Axes3D.set_box_aspect, mpl_toolkits.mplot3d.axes3d.Axes3D.apply_aspect, mpl_toolkits.mplot3d.axes3d.Axes3D.tick_params, mpl_toolkits.mplot3d.axes3d.Axes3D.set_zticks, mpl_toolkits.mplot3d.axes3d.Axes3D.get_zticks, mpl_toolkits.mplot3d.axes3d.Axes3D.set_zticklabels, mpl_toolkits.mplot3d.axes3d.Axes3D.get_zticklines, mpl_toolkits.mplot3d.axes3d.Axes3D.get_zgridlines, mpl_toolkits.mplot3d.axes3d.Axes3D.get_zminorticklabels, mpl_toolkits.mplot3d.axes3d.Axes3D.get_zmajorticklabels, mpl_toolkits.mplot3d.axes3d.Axes3D.zaxis_date, mpl_toolkits.mplot3d.axes3d.Axes3D.convert_zunits, mpl_toolkits.mplot3d.axes3d.Axes3D.add_collection3d, mpl_toolkits.mplot3d.axes3d.Axes3D.sharez, mpl_toolkits.mplot3d.axes3d.Axes3D.can_zoom, mpl_toolkits.mplot3d.axes3d.Axes3D.can_pan, mpl_toolkits.mplot3d.axes3d.Axes3D.disable_mouse_rotation, mpl_toolkits.mplot3d.axes3d.Axes3D.mouse_init, mpl_toolkits.mplot3d.axes3d.Axes3D.drag_pan, mpl_toolkits.mplot3d.axes3d.Axes3D.format_zdata, mpl_toolkits.mplot3d.axes3d.Axes3D.format_coord, mpl_toolkits.mplot3d.axes3d.Axes3D.view_init, mpl_toolkits.mplot3d.axes3d.Axes3D.set_proj_type, mpl_toolkits.mplot3d.axes3d.Axes3D.get_proj, mpl_toolkits.mplot3d.axes3d.Axes3D.set_top_view, mpl_toolkits.mplot3d.axes3d.Axes3D.get_tightbbox, mpl_toolkits.mplot3d.axes3d.Axes3D.set_zlim3d, mpl_toolkits.mplot3d.axes3d.Axes3D.stem3D, mpl_toolkits.mplot3d.axes3d.Axes3D.text3D, mpl_toolkits.mplot3d.axes3d.Axes3D.tunit_cube, mpl_toolkits.mplot3d.axes3d.Axes3D.tunit_edges, mpl_toolkits.mplot3d.axes3d.Axes3D.unit_cube, mpl_toolkits.mplot3d.axes3d.Axes3D.w_xaxis, mpl_toolkits.mplot3d.axes3d.Axes3D.w_yaxis, mpl_toolkits.mplot3d.axes3d.Axes3D.w_zaxis, mpl_toolkits.mplot3d.axes3d.Axes3D.get_axis_position, mpl_toolkits.mplot3d.axes3d.Axes3D.add_contour_set, mpl_toolkits.mplot3d.axes3d.Axes3D.add_contourf_set, mpl_toolkits.mplot3d.axes3d.Axes3D.update_datalim, mpl_toolkits.mplot3d.axes3d.get_test_data, mpl_toolkits.mplot3d.art3d.Line3DCollection, mpl_toolkits.mplot3d.art3d.Patch3DCollection, mpl_toolkits.mplot3d.art3d.Path3DCollection, mpl_toolkits.mplot3d.art3d.Poly3DCollection, mpl_toolkits.mplot3d.art3d.get_dir_vector, mpl_toolkits.mplot3d.art3d.line_collection_2d_to_3d, mpl_toolkits.mplot3d.art3d.patch_2d_to_3d, mpl_toolkits.mplot3d.art3d.patch_collection_2d_to_3d, mpl_toolkits.mplot3d.art3d.pathpatch_2d_to_3d, mpl_toolkits.mplot3d.art3d.poly_collection_2d_to_3d, mpl_toolkits.mplot3d.proj3d.inv_transform, mpl_toolkits.mplot3d.proj3d.persp_transformation, mpl_toolkits.mplot3d.proj3d.proj_trans_points, mpl_toolkits.mplot3d.proj3d.proj_transform, mpl_toolkits.mplot3d.proj3d.proj_transform_clip, mpl_toolkits.mplot3d.proj3d.view_transformation, mpl_toolkits.mplot3d.proj3d.world_transformation, mpl_toolkits.axes_grid1.anchored_artists.AnchoredAuxTransformBox, mpl_toolkits.axes_grid1.anchored_artists.AnchoredDirectionArrows, mpl_toolkits.axes_grid1.anchored_artists.AnchoredDrawingArea, mpl_toolkits.axes_grid1.anchored_artists.AnchoredEllipse, mpl_toolkits.axes_grid1.anchored_artists.AnchoredSizeBar, mpl_toolkits.axes_grid1.axes_divider.AxesDivider, mpl_toolkits.axes_grid1.axes_divider.AxesLocator, mpl_toolkits.axes_grid1.axes_divider.Divider, mpl_toolkits.axes_grid1.axes_divider.HBoxDivider, mpl_toolkits.axes_grid1.axes_divider.SubplotDivider, mpl_toolkits.axes_grid1.axes_divider.VBoxDivider, mpl_toolkits.axes_grid1.axes_divider.make_axes_area_auto_adjustable, mpl_toolkits.axes_grid1.axes_divider.make_axes_locatable, mpl_toolkits.axes_grid1.axes_grid.AxesGrid, mpl_toolkits.axes_grid1.axes_grid.CbarAxesBase, mpl_toolkits.axes_grid1.axes_grid.ImageGrid, mpl_toolkits.axes_grid1.axes_rgb.make_rgb_axes, mpl_toolkits.axes_grid1.axes_size.AddList, mpl_toolkits.axes_grid1.axes_size.Fraction, mpl_toolkits.axes_grid1.axes_size.GetExtentHelper, mpl_toolkits.axes_grid1.axes_size.MaxExtent, mpl_toolkits.axes_grid1.axes_size.MaxHeight, mpl_toolkits.axes_grid1.axes_size.MaxWidth, mpl_toolkits.axes_grid1.axes_size.Scalable, mpl_toolkits.axes_grid1.axes_size.SizeFromFunc, mpl_toolkits.axes_grid1.axes_size.from_any, mpl_toolkits.axes_grid1.inset_locator.AnchoredLocatorBase, mpl_toolkits.axes_grid1.inset_locator.AnchoredSizeLocator, mpl_toolkits.axes_grid1.inset_locator.AnchoredZoomLocator, mpl_toolkits.axes_grid1.inset_locator.BboxConnector, mpl_toolkits.axes_grid1.inset_locator.BboxConnectorPatch, mpl_toolkits.axes_grid1.inset_locator.BboxPatch, mpl_toolkits.axes_grid1.inset_locator.InsetPosition, mpl_toolkits.axes_grid1.inset_locator.inset_axes, mpl_toolkits.axes_grid1.inset_locator.mark_inset, mpl_toolkits.axes_grid1.inset_locator.zoomed_inset_axes, mpl_toolkits.axes_grid1.mpl_axes.SimpleAxisArtist, mpl_toolkits.axes_grid1.mpl_axes.SimpleChainedObjects, mpl_toolkits.axes_grid1.parasite_axes.HostAxes, mpl_toolkits.axes_grid1.parasite_axes.HostAxesBase, mpl_toolkits.axes_grid1.parasite_axes.ParasiteAxes, mpl_toolkits.axes_grid1.parasite_axes.ParasiteAxesBase, mpl_toolkits.axes_grid1.parasite_axes.SubplotHost, mpl_toolkits.axes_grid1.parasite_axes.host_axes, mpl_toolkits.axes_grid1.parasite_axes.host_axes_class_factory, mpl_toolkits.axes_grid1.parasite_axes.host_subplot, mpl_toolkits.axes_grid1.parasite_axes.host_subplot_class_factory, mpl_toolkits.axes_grid1.parasite_axes.parasite_axes_class_factory, mpl_toolkits.axisartist.angle_helper.ExtremeFinderCycle, mpl_toolkits.axisartist.angle_helper.FormatterDMS, mpl_toolkits.axisartist.angle_helper.FormatterHMS, mpl_toolkits.axisartist.angle_helper.LocatorBase, mpl_toolkits.axisartist.angle_helper.LocatorD, mpl_toolkits.axisartist.angle_helper.LocatorDM, mpl_toolkits.axisartist.angle_helper.LocatorDMS, mpl_toolkits.axisartist.angle_helper.LocatorH, mpl_toolkits.axisartist.angle_helper.LocatorHM, mpl_toolkits.axisartist.angle_helper.LocatorHMS, mpl_toolkits.axisartist.angle_helper.select_step, mpl_toolkits.axisartist.angle_helper.select_step24, mpl_toolkits.axisartist.angle_helper.select_step360, mpl_toolkits.axisartist.angle_helper.select_step_degree, mpl_toolkits.axisartist.angle_helper.select_step_hour, mpl_toolkits.axisartist.angle_helper.select_step_sub, mpl_toolkits.axisartist.axes_grid.AxesGrid, mpl_toolkits.axisartist.axes_grid.ImageGrid, mpl_toolkits.axisartist.axis_artist.AttributeCopier, mpl_toolkits.axisartist.axis_artist.AxisArtist, mpl_toolkits.axisartist.axis_artist.AxisLabel, mpl_toolkits.axisartist.axis_artist.GridlinesCollection, mpl_toolkits.axisartist.axis_artist.LabelBase, mpl_toolkits.axisartist.axis_artist.TickLabels, mpl_toolkits.axisartist.axis_artist.Ticks, mpl_toolkits.axisartist.axisline_style.AxislineStyle, mpl_toolkits.axisartist.axislines.AxesZero, mpl_toolkits.axisartist.axislines.AxisArtistHelper, mpl_toolkits.axisartist.axislines.AxisArtistHelperRectlinear, mpl_toolkits.axisartist.axislines.GridHelperBase, mpl_toolkits.axisartist.axislines.GridHelperRectlinear, mpl_toolkits.axisartist.axislines.Subplot, mpl_toolkits.axisartist.axislines.SubplotZero, mpl_toolkits.axisartist.floating_axes.ExtremeFinderFixed, mpl_toolkits.axisartist.floating_axes.FixedAxisArtistHelper, mpl_toolkits.axisartist.floating_axes.FloatingAxes, mpl_toolkits.axisartist.floating_axes.FloatingAxesBase, mpl_toolkits.axisartist.floating_axes.FloatingAxisArtistHelper, mpl_toolkits.axisartist.floating_axes.FloatingSubplot, mpl_toolkits.axisartist.floating_axes.GridHelperCurveLinear, mpl_toolkits.axisartist.floating_axes.floatingaxes_class_factory, mpl_toolkits.axisartist.grid_finder.DictFormatter, mpl_toolkits.axisartist.grid_finder.ExtremeFinderSimple, mpl_toolkits.axisartist.grid_finder.FixedLocator, mpl_toolkits.axisartist.grid_finder.FormatterPrettyPrint, mpl_toolkits.axisartist.grid_finder.GridFinder, mpl_toolkits.axisartist.grid_finder.MaxNLocator, mpl_toolkits.axisartist.grid_helper_curvelinear, mpl_toolkits.axisartist.grid_helper_curvelinear.FixedAxisArtistHelper, mpl_toolkits.axisartist.grid_helper_curvelinear.FloatingAxisArtistHelper, mpl_toolkits.axisartist.grid_helper_curvelinear.GridHelperCurveLinear.

Spackenkill High School Famous Alumni, Articles P