Fájl:Regular divisibility lattice.svg
Innen: testwiki
Ugrás a navigációhoz
Ugrás a kereséshez
Ennek a(z) SVG fájlnak ezen PNG formátumú előnézete: 800 × 475 képpont. További felbontások: 320 × 190 képpont | 640 × 380 képpont | 1 024 × 608 képpont | 1 280 × 760 képpont | 2 560 × 1 519 képpont | 1 363 × 809 képpont.
Eredeti fájl (SVG fájl, névlegesen 1 363 × 809 képpont, fájlméret: 13 KB)
Ez a fájl a Wikimedia Commons megosztott tárhelyről származik, és más projektek is használhatják. A fájl ottani leírólapjának másolata alább látható.
Összefoglaló
| LeírásRegular divisibility lattice.svg | A Hasse diagram of divisibility relationships among regular numbers up to 400. As shown by the horizontal light red lines, the vertical position of each number is proportional to its logarithm. Inspired by similar diagrams in a paper by Kurenniemi [1]. |
| Dátum | 2007. március 14. (eredeti feltöltésének dátuma) |
| Forrás | Áthozva az en.wikipedia projektből a Commonsba. |
| Szerző | David Eppstein a(z) angol Wikipédia projektből |
Licenc
| Public domainPublic domainfalsefalse |
| David Eppstein a(z) angol Wikipédia projektből, a mű szerzője művét közkinccsé nyilvánította. Ez a világ minden részén érvényes. Egyes országokban ez jogilag nem lehetséges. Ha így van, akkor: David Eppstein jogot ad bárkinek, hogy bármilyen célból, feltétel nélkül használhassa ezt a fájlt, kivéve a törvény által kötelezően előírt feltételeket.Public domainPublic domainfalsefalse |
Source code
The Python source code for generating this image:
from math import log
limit = 400
radius = 17
margin = 4
xscale = yscale = 128
skew = 0.285
def A051037():
yield 1
seq = [1]
spiders = [(2,2,0,0),(3,3,0,1),(5,5,0,2)]
while True:
x,p,i,j = min(spiders)
if x != seq[-1]:
yield x
seq.append(x)
spiders[j] = (p*seq[i+1],p,i+1,j)
def nfactors(h,p):
nf = 0
while h % p == 0:
nf += 1
h //= p
return nf
seq = []
for h in A051037():
if h > limit:
break
seq.append((h,nfactors(h,2),nfactors(h,3),nfactors(h,5)))
leftmost = max([k for h,i,j,k in seq])
rightmost = max([j for h,i,j,k in seq])
leftwidth = int(0.5 + log(5) * leftmost * xscale + radius + margin)
rightwidth = int(0.5 + log(3) * rightmost * xscale + radius + margin)
width = leftwidth + rightwidth
height = int(0.5 + log(limit) * yscale + 2*(radius + margin))
def place(h,i,j,k):
# logical coordinates
x = j * log(3) - k * log(5) + i * skew
y = log(h)
# physical coordinates
x = (x*xscale) + leftwidth
y = (-y*yscale) + height - radius - margin
return (x,y)
print '''<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="%d" height="%d">''' % (width,height)
print ' <g style="fill:none;stroke:#ffaaaa;">'
l = 1
base = 1
while l <= limit:
y = -yscale*log(l) + height - radius - margin
print ' <path d="M0,%0.2fL%d,%0.2f"/>' % (y,width,y)
l += base
if l == 10*base:
base = l
print " </g>"
print ' <g style="fill:none;stroke-width:1.5;stroke:#0000cc;">'
def drawSegment(p,q):
x1,y1=p
x2,y2=q
print ' <path d="M%0.2f,%0.2fL%0.2f,%0.2f"/>' % (x1,y1,x2,y2)
for h,i,j,k in seq:
x,y = place(h,i,j,k)
if i > 0:
drawSegment(place(h//2,i-1,j,k),(x,y))
if j > 0:
drawSegment(place(h//3,i,j-1,k),(x,y))
if k > 0:
drawSegment(place(h//5,i,j,k-1),(x,y))
print " </g>"
print ' <g style="fill:#ffffff;stroke:#000000;">'
for h,i,j,k in seq:
x,y = place(h,i,j,k)
print ' <circle cx="%0.2f" cy="%0.2f" r="%d"/>' % (x,y,radius)
# pairs of first value with size: size of that value
fontsizes = {1:33, 5:30, 10:27, 20:24, 100:20, 200:18}
for h,i,j,k in seq:
x,y = place(h,i,j,k)
if h in fontsizes:
print " </g>"
print ' <g style="font-family:Times;font-size:%d;text-anchor:middle;">' % fontsizes[h]
lower = fontsizes[h] / 3.
print ' <text x="%0.2f" y="%0.2f">%d</text>' %(x,y+lower,h)
print " </g>"
print "</svg>"
Eredeti feltöltési napló
Az eredeti leírólap itt volt. Az itt következő felhasználónevek az en.wikipedia projektre hivatkoznak.
- 2007-03-14 05:08 David Eppstein 1363×809×0 (13167 bytes) A [[Hasse diagram]] of [[divisibility]] relationships among [[regular number]]s up to 400. Inspired by similar diagrams in a paper by Kurenniemi [http://www.beige.org/projects/dimi/CSDL2.pdf].
Képaláírások
Adj meg egy egysoros magyarázatot arról, hogy mit mutat be ez a fájl
A fájl által ábrázolt elemek
mű tárgya
Fájltörténet
Kattints egy időpontra, hogy a fájl akkori állapotát láthasd.
| Dátum/idő | Bélyegkép | Felbontás | Feltöltő | Megjegyzés | |
|---|---|---|---|---|---|
| aktuális | 2010. március 13., 03:57 | 1 363 × 809 (13 KB) | wikimediacommons>David Eppstein | Fix fonts |
Fájlhasználat
Az alábbi lapok használják ezt a fájlt:
A lap eredeti címe: „https://hu.wiki.beta.math.wmflabs.org/wiki/Fájl:Regular_divisibility_lattice.svg”