Stránka 9 z 10

Re: Věkové složení Pirátské strany

Napsal: 15 kvě 2012, 18:01
od jzvc
Lehce modla verze, mela by spravne scalovat (dle nastaveneho meritka) + pocita s moznosti rustu (= na ose Y se meritko prizpusobi maximalnimu poctu lidi v dany vekovy skupine)

Kód: Vybrat vše

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:output method="xml" indent="yes" media-type="image/svg" />

<xsl:template match="/">
  <svg version="1.1"
     baseProfile="full"
     xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink"
     xmlns:ev="http://www.w3.org/2001/xml-events"
     >
  <desc>Rozložení věku pirátů</desc>
  
  <xsl:variable name="max">
    <xsl:for-each select="data/group">
      <xsl:sort select="clenu" data-type="number" order="descending"/>
      <xsl:if test="position()=1">
        <xsl:value-of select="ceiling(clenu div 10) * 10"/>
      </xsl:if>
    </xsl:for-each>
  </xsl:variable>
  
  <g transform="translate(50,50) scale(0.2)">
    <!-- osy X a Y  -->
    <g style="stroke-width:5; stroke:black">
      <!-- X  -->
      <path d="M 50 1000 L 5000 1000 Z"/>
      <!-- Y  -->
      <path d="M 50 0 L 50 1000 Z"/>
    </g>
    
    <g style="fill:none; stroke:#B0B0B0; stroke-width:1; stroke-dasharray:2 4;text-anchor:end; font-size:30">
  <path d="M 50 0 L 5000 0 Z"/>
  <path d="M 50 500 L 5000 500 Z"/>
  <text style="fill:black; stroke:none" x="10" y="0" font-size="50"><xsl:value-of select="$max" /></text>
  <text style="fill:black; stroke:none" x="10" y="500" font-size="50"><xsl:value-of select="$max div 2" /></text>
  </g>

        <xsl:for-each select="data/group">
            <rect width ="100" style="fill:rgb(152,207,113);" >
              <xsl:attribute name="x"><xsl:value-of select="110 * position()" /></xsl:attribute> 
              <xsl:attribute name="y"><xsl:value-of select="1000 - ((1000 div $max) * clenu)" /></xsl:attribute> 
              <xsl:attribute name="height"><xsl:value-of select="(1000 div $max) * clenu" /></xsl:attribute>
            </rect>
            <text style="fill:black; stroke:none" y="1100" font-size="50">
              <xsl:attribute name="x"><xsl:value-of select="110 * position() + 30" /></xsl:attribute>
              <xsl:value-of select="vek" />
            </text>
        </xsl:for-each>
      <text style="fill:black; stroke:none" x="2000" y="150" font-size="80">Rozložení věku pirátů</text>
      <!-- ceiling($max / 10)* 10 -->
  
  </g>
  </svg>
</xsl:template>

</xsl:stylesheet> 

Re: Věkové složení Pirátské strany

Napsal: 16 kvě 2012, 02:28
od Petr.Vileta
Jo, tohle uz vypada mnohem lip.

Do taju XML sablon jsem zatim nepronikl. Slo by tam jeste neco dodelat, aby to vypadalo podobne jako to moje (zprasene) HTML? https://v.pirati.cz/ao/vekpiratu.cgi Cil je, aby ten graf sel vkladat do jinych stranek, napr jako <iframe> nebo podobnym zpusobem.

Re: Věkové složení Pirátské strany

Napsal: 16 kvě 2012, 12:58
od Lukas.Findeis
Proč ty sloupce nenaházíte na sebe? Tím se šířka grafu podstatně zredukuje ;)

Re: Věkové složení Pirátské strany

Napsal: 16 kvě 2012, 15:10
od Ondrej.Profant
Lukas Findeis píše:Proč ty sloupce nenaházíte na sebe? Tím se šířka grafu podstatně zredukuje ;)
Zbytečné. Nechceme to sázet, ale chceme co nejlépe informovat. V digitálním věku některé redukce nejsou potřeba. Já to tedy mám asi jen přes půl monitoru (na šířku).

Navíc nevím, co používáte za prohlížeč, ale já to mohu normálně přibližovat a oddalovat. Je to super :).

Akorát bych pod to doplnil ještě legendu - celkový vzorek (počet členů) a vysvětlení 0. Ať ukážeme, že dnes jde informovat krásně, čistě, jednoduše a nenáročně.

Re: Věkové složení Pirátské strany

Napsal: 16 kvě 2012, 18:14
od jzvc
Zoomovat by to melo jit vpohode, je to svg

modifikace - je tam celkovej pocet + lehce popsany osy + vek 0 nahrazen ??

Kód: Vybrat vše

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:output method="xml" indent="yes" media-type="image/svg" />

<xsl:template match="/">
  <svg version="1.1"
     baseProfile="full"
     xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink"
     xmlns:ev="http://www.w3.org/2001/xml-events"
     >
  <desc>Rozložení věku pirátů</desc>
  
  <xsl:variable name="max">
    <xsl:for-each select="data/group">
      <xsl:sort select="clenu" data-type="number" order="descending"/>
      <xsl:if test="position()=1">
        <xsl:value-of select="ceiling(clenu div 10) * 10"/>
      </xsl:if>
    </xsl:for-each>
  </xsl:variable>

  <xsl:variable name="suma">
    <xsl:value-of select="sum(data/group/clenu)"/>
  </xsl:variable>

  
  <g transform="translate(50,50) scale(0.2)">
    <!-- osy X a Y  -->
    <g style="stroke-width:5; stroke:black">
      <!-- X  -->
      <path d="M 50 1000 L 5000 1000 Z"/>
      <!-- Y  -->
      <path d="M 50 0 L 50 1000 Z"/>
    </g>
    
    <g style="fill:none; stroke:#B0B0B0; stroke-width:1; stroke-dasharray:2 4;text-anchor:end; font-size:30">
  <path d="M 50 0 L 5000 0 Z"/>
  <path d="M 50 500 L 5000 500 Z"/>
  <text style="fill:black; stroke:none" x="10" y="0" font-size="50"><xsl:value-of select="$max" /></text>
  <text style="fill:black; stroke:none" x="10" y="500" font-size="50"><xsl:value-of select="$max div 2" /></text>
  </g>

        <xsl:for-each select="data/group">
            <rect width ="100" style="fill:rgb(152,207,113);" >
              <xsl:attribute name="x"><xsl:value-of select="110 * position()" /></xsl:attribute> 
              <xsl:attribute name="y"><xsl:value-of select="1000 - ((1000 div $max) * clenu)" /></xsl:attribute> 
              <xsl:attribute name="height"><xsl:value-of select="(1000 div $max) * clenu" /></xsl:attribute>
            </rect>
            <text style="fill:black; stroke:none" y="1100" font-size="50">
              <xsl:attribute name="x"><xsl:value-of select="110 * position() + 30" /></xsl:attribute>
              <xsl:if test="vek=0">??</xsl:if>
              <xsl:if test="vek>0">
                <xsl:value-of select="vek" />
              </xsl:if>
            </text>
        </xsl:for-each>
      <text style="fill:black; stroke:none" x="2000" y="150" font-size="80">Rozložení věku pirátů</text>
      <text style="fill:black; stroke:none" x="4000" y="150" font-size="80">Celkem pirátů: <xsl:value-of select="$suma"/></text>
      <text style="fill:black; stroke:none" x="4900" y="900" font-size="60">Věk</text>
      <text style="fill:black; stroke:none" x="100" y="100" font-size="60">Pirátů</text>
      <!-- ceiling($max / 10)* 10 -->
  
  </g>
  </svg>
</xsl:template>

</xsl:stylesheet> 

Re: Věkové složení Pirátské strany

Napsal: 17 kvě 2012, 00:31
od Petr.Vileta
@jzvc: muzes tamprosim te, misto "Rozložení věku pirátů" vlozit "Věkové složení Pirátské strany" ? Ja to ted opravim, ale at to nemusim delat pokazde.

Re: Věkové složení Pirátské strany

Napsal: 17 kvě 2012, 17:02
od TiborGanzer
Petr Vileta píše:Protože už jsem nevěděl co roupama a děsně jsem se nudil :mrgreen: napsal jsem takovou blbinku, snad to k něčemu bude. A kdyby se to někomu fakt líbilo, tak klikněte na palec ;)
https://www.pirati.cz/ao/vekpiratu.cgi

Připomínky pište sem. Jo a prosím vás, kdo nemáte v profilu vyplněný datum narození OFFTOPICje vás momentálně 57, vyplňte si alespoň rok narození, ať nepadáte do toho posledního sloupce.
Bohužel po kliknuti to bylo jen "Stránka s tímto názvem ještě neexistuje" :twisted:

Re: Věkové složení Pirátské strany

Napsal: 17 kvě 2012, 18:36
od Lukas.Novy
TiborGanzer píše:
Petr Vileta píše:Protože už jsem nevěděl co roupama a děsně jsem se nudil :mrgreen: napsal jsem takovou blbinku, snad to k něčemu bude. A kdyby se to někomu fakt líbilo, tak klikněte na palec ;)
https://www.pirati.cz/ao/vekpiratu.cgi

Připomínky pište sem. Jo a prosím vás, kdo nemáte v profilu vyplněný datum narození OFFTOPICje vás momentálně 57, vyplňte si alespoň rok narození, ať nepadáte do toho posledního sloupce.
Bohužel po kliknuti to bylo jen "Stránka s tímto názvem ještě neexistuje" :twisted:
https://v.pirati.cz/ao/vekpiratu.cgi

Re: Věkové složení Pirátské strany

Napsal: 18 kvě 2012, 20:25
od TiborGanzer
Petr Vileta píše:Jo, tohle uz vypada mnohem lip.

Do taju XML sablon jsem zatim nepronikl. Slo by tam jeste neco dodelat, aby to vypadalo podobne jako to moje (zprasene) HTML? https://v.pirati.cz/ao/vekpiratu.cgi Cil je, aby ten graf sel vkladat do jinych stranek, napr jako <iframe> nebo podobnym zpusobem.
Nešlo by podobným způsobem graficky znázornit i věkové složení příznivců ?

Re: Věkové složení Pirátské strany

Napsal: 18 kvě 2012, 20:39
od Martin.Kucera
Predpokladam ze zalezi na tom, zda u priznivcu vubec zname vek.