File:Cauchy sequence illustration2.svg
From Wikimedia Commons, the free media repository
Jump to navigation
Jump to search
Size of this PNG preview of this SVG file: 305 × 170 pixels. Other resolutions: 320 × 178 pixels | 640 × 357 pixels | 1,024 × 571 pixels | 1,280 × 713 pixels | 2,560 × 1,427 pixels.
Original file (SVG file, nominally 305 × 170 pixels, file size: 50 KB)
File information
Structured data
Captions
DescriptionCauchy sequence illustration2.svg |
English: Illustration of en:Cauchy sequence |
Date | |
Source | Based on File:Cauchy_sequence_illustration2.png by Oleg Alexandrov |
Author | Own work |
Public domainPublic domainfalsefalse |
I, the copyright holder of this work, release this work into the public domain. This applies worldwide. In some countries this may not be legally possible; if so: I grant anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law. |
This W3C-unspecified diagram was created with MATLAB.
Source Codes
Using MATLAB |
---|
% draw an illustration of a sequence that is not Cauchy
function main()
% prepare the screen and define some parameters
figure(1); clf; hold on; axis equal; axis off;
fontsize=30; thick_line=3; thin_line=2;
black=[0, 0, 0]; red=[1, 0, 0]; blue=[0, 0, 1];
arrowsize=0.5; arrow_type=1; arrow_angle=30; % (angle in degrees)
circrad=0.07; % radius of ball showing up in places
B=9;
X=0:0.06:B;
f=inline('(X+2)./(X+0.8)', 'X');
Y=sin(5*X).*f(X);
for i=1:length(X)
ball(X(i), Y(i), circrad, blue);
end
X=0:0.05:(B+0.3);
Z=f(X);
plot(X, Z, 'r--', 'linewidth', thin_line)
plot(X, -Z, 'r--', 'linewidth', thin_line)
% draw the coordinate axes
shift=-3;
Kx=1.1; Ky=1.3;
L=max(Y);
arrow([-1 shift], [Kx*B, shift], thin_line, arrowsize, arrow_angle, arrow_type, black)
arrow([-1, shift], [-1, Ky*L], thin_line, arrowsize, arrow_angle, arrow_type, black)
text(Kx*B+0.6, shift, '\it{n}', 'fontsize', fontsize, 'HorizontalAlignment', 'c')
text(-1, Ky*L+0.8, '\it{x_n}', 'fontsize', fontsize, 'HorizontalAlignment', 'c')
% save to disk
saveas(gcf, 'Cauchy_sequence_illustration2.eps', 'psc2') % export to eps
function ball(x, y, r, color)
Theta=0:0.1:2*pi;
X=r*cos(Theta)+x;
Y=r*sin(Theta)+y;
H=fill(X, Y, color);
set(H, 'EdgeColor', 'none');
function arrow(start, stop, th, arrow_size, sharpness, arrow_type, color)
% Function arguments:
% start, stop: start and end coordinates of arrow, vectors of size 2
% th: thickness of arrow stick
% arrow_size: the size of the two sides of the angle in this picture ->
% sharpness: angle between the arrow stick and arrow side, in degrees
% arrow_type: 1 for filled arrow, otherwise the arrow will be just two segments
% color: arrow color, a vector of length three with values in [0, 1]
% convert to complex numbers
i=sqrt(-1);
start=start(1)+i*start(2); stop=stop(1)+i*stop(2);
rotate_angle=exp(i*pi*sharpness/180);
% points making up the arrow tip (besides the "stop" point)
point1 = stop - (arrow_size*rotate_angle)*(stop-start)/abs(stop-start);
point2 = stop - (arrow_size/rotate_angle)*(stop-start)/abs(stop-start);
if arrow_type==1 % filled arrow
% plot the stick, but not till the end, looks bad
t=0.5*arrow_size*cos(pi*sharpness/180)/abs(stop-start); stop1=t*start+(1-t)*stop;
plot(real([start, stop1]), imag([start, stop1]), 'LineWidth', th, 'Color', color);
% fill the arrow
H=fill(real([stop, point1, point2]), imag([stop, point1, point2]), color);
set(H, 'EdgeColor', 'none')
else % two-segment arrow
plot(real([start, stop]), imag([start, stop]), 'LineWidth', th, 'Color', color);
plot(real([stop, point1]), imag([stop, point1]), 'LineWidth', th, 'Color', color);
plot(real([stop, point2]), imag([stop, point2]), 'LineWidth', th, 'Color', color);
end
|
Using python |
---|
from matplotlib.pyplot import *
from mpl_toolkits.axes_grid.axislines import SubplotZero
from numpy import arange, sin
x1 = arange(0.,9.1,.05)
x2 = arange(0.,9.6,.1)
z = lambda x: (x+2.) / (x+.8)
y = lambda x: sin(5.*x) * z(x)
fig = figure(figsize=(4,2))
ax = SubplotZero(fig,111)
fig.add_subplot(ax)
ax.axis["top"].set_visible(False)
ax.axis["right"].set_visible(False)
ax.axis["left"].set_axisline_style("->")
ax.axis["bottom"].set_axisline_style("->")
ax.set_yticks([])
ax.set_xticks([])
ax.set_xlim(-1,10)
ax.set_ylim(-3,3)
ax.plot(x1,y(x1),'bo',ms=2.5)
ax.plot(x2, z(x2),'r--',lw=1.5)
ax.plot(x2,-z(x2),'r--',lw=1.5)
ax.text(10,-2.8,u'$n$')
ax.text(-.75,3,u'$X_n$')
fig.savefig("test.svg",bbox_inches="tight",pad_inches=.15)
|
File history
Click on a date/time to view the file as it appeared at that time.
Date/Time | Thumbnail | Dimensions | User | Comment | |
---|---|---|---|---|---|
current | 03:54, 9 September 2011 | 305 × 170 (50 KB) | Krishnavedala (talk | contribs) | With text corrected and much smaller file size | |
09:05, 11 February 2011 | 512 × 317 (186 KB) | Reubot (talk | contribs) | crop viewbox | ||
14:35, 10 February 2011 | 512 × 384 (186 KB) | Reubot (talk | contribs) | {{Information |Description ={{en|1=Illustration of en:Cauchy sequence}} |Source =Based on File:Cauchy_sequence_illustration2.png by Oleg Alexandrov |Author ={{own}} |Date =2011-02-11 |Permiss |
You cannot overwrite this file.
File usage on Commons
The following page uses this file:
File usage on other wikis
The following other wikis use this file:
- Usage on ar.wikipedia.org
- Usage on ast.wikipedia.org
- Usage on bn.wikipedia.org
- Usage on ca.wikipedia.org
- Usage on cs.wikipedia.org
- Usage on de.wikipedia.org
- Usage on de.wikibooks.org
- Usage on de.wikiversity.org
- Usage on el.wikipedia.org
- Usage on en.wikipedia.org
- Usage on es.wikipedia.org
- Usage on fa.wikipedia.org
- Usage on fr.wikipedia.org
- Usage on gl.wikipedia.org
- Usage on he.wikipedia.org
- Usage on hi.wikipedia.org
- Usage on hy.wikipedia.org
- Usage on id.wikipedia.org
- Usage on incubator.wikimedia.org
- Usage on ko.wikipedia.org
- Usage on no.wikipedia.org
- Usage on pl.wikipedia.org
- Usage on simple.wikipedia.org
- Usage on sl.wikipedia.org
- Usage on sw.wikipedia.org
- Usage on th.wikipedia.org
- Usage on tr.wikipedia.org
- Usage on uk.wikipedia.org
- Usage on vi.wikipedia.org