<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>IOException.de &#187; allgemein</title>
	<atom:link href="http://www.ioexception.de/category/allgemein/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ioexception.de</link>
	<description>Ausgewählter Nerdkram von Informatikstudenten der Uni Ulm</description>
	<lastBuildDate>Fri, 13 Jan 2012 07:38:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Histogramplot in Sage/Matplotlib</title>
		<link>http://www.ioexception.de/2010/06/23/histogramplot-in-sagematplotlib/</link>
		<comments>http://www.ioexception.de/2010/06/23/histogramplot-in-sagematplotlib/#comments</comments>
		<pubDate>Wed, 23 Jun 2010 15:35:37 +0000</pubDate>
		<dc:creator>Raimar Wagner</dc:creator>
				<category><![CDATA[allgemein]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[sage]]></category>

		<guid isPermaLink="false">http://www.ioexception.de/?p=583</guid>
		<description><![CDATA[Wer Matlab mag wird Sage lieben, insbesondere wenn die Ausgangsdaten sowieso in Python vorliegen. Ein einfaches Histogram für Ganzzahlen lässt sich wie folgt realisieren:


from sage.all import *
import numpy
import matplotlib.pyplot as plt
import matplotlib.mlab as mlab

def plot_hist(subplot,name,x_data,x_var,y_var,b_width):

  #create array
  n_array = numpy.array(x_data)

  #labels
  subplot.set_xlabel('variable '+x_var+' [min = '+str(n_array.min())+', max='+str(n_array.max())+' ]')
  subplot.set_ylabel(y_var)

  [...]]]></description>
			<content:encoded><![CDATA[<p>Wer Matlab mag wird <a href="http://www.google.de/url?sa=t&#038;source=web&#038;cd=6&#038;ved=0CDwQFjAF&#038;url=http%3A%2F%2Fwww.sagemath.org%2F&#038;ei=pCkiTMXtLOCjOMmB5Ww&#038;usg=AFQjCNH2NWozNkiq8T27uN3RaNnZUvWksg&#038;sig2=nOCuPFF0dZhBMyAPyuXZ9Q">Sage</a> lieben, insbesondere wenn die Ausgangsdaten sowieso in Python vorliegen. Ein einfaches Histogram für Ganzzahlen lässt sich wie folgt realisieren:</p>
<pre class="brush: python;">

from sage.all import *
import numpy
import matplotlib.pyplot as plt
import matplotlib.mlab as mlab

def plot_hist(subplot,name,x_data,x_var,y_var,b_width):

  #create array
  n_array = numpy.array(x_data)

  #labels
  subplot.set_xlabel('variable '+x_var+' [min = '+str(n_array.min())+', max='+str(n_array.max())+' ]')
  subplot.set_ylabel(y_var)

  #create bins
  mmin = n_array.min()
  mmax = n_array.max()
  b = numpy.arange(mmin-(1.0/2),mmax+1+(1.0/2))

  #set ticks
  subplot.set_xticks(b)

  #hist
  n, bins, patches = subplot.hist(x_data,bins=b, rwidth=b_width)

  #title
  subplot.set_title(r'Histogram of '+x_var)
</pre>
<p>Benutzt wird das Ganze dann mittels:</p>
<pre class="brush: python;">
f = matplotlib.pyplot.figure()
a = f.add_subplot(111)

plot_utils.plot_hist(a,'Decimals', [1,1,1,2,2,3,3,3,4,4,5,5,6,6,7,7],'decimal','# of decimals',0.8)

matplotlib.pyplot.savefig('plot.png')
</pre>
<p><a href="http://www.ioexception.de/wp-content/uploads/2010/06/plot.png"><img src="http://www.ioexception.de/wp-content/uploads/2010/06/plot-300x225.png" alt="" title="plot" width="300" height="225" class="alignnone size-medium wp-image-585" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ioexception.de/2010/06/23/histogramplot-in-sagematplotlib/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>eBay Suchergebnisse in Yahoo Pipes bündeln</title>
		<link>http://www.ioexception.de/2010/03/26/ebay-suchergebnisse-in-yahoo-pipes-bundeln/</link>
		<comments>http://www.ioexception.de/2010/03/26/ebay-suchergebnisse-in-yahoo-pipes-bundeln/#comments</comments>
		<pubDate>Fri, 26 Mar 2010 17:09:33 +0000</pubDate>
		<dc:creator>Raimar Wagner</dc:creator>
				<category><![CDATA[allgemein]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.ioexception.de/?p=496</guid>
		<description><![CDATA[Bei der Möbelsuche auf eBay stößt man oft auf den Umstand dass nur selten die gesuchten Artikel vorhanden sind und wenn nicht in abholbarer Reichweite. Da eBay inzwischen die Möglichkeit bietet jedes Suchergebnis als RSS Feed abzurufen schreit das förmlich nach einer Verarbeitung mit Yahoo Pipes. 
Der grundsätzliche Aufbau ist trivial:

Einbau von PLZ und Umkreis [...]]]></description>
			<content:encoded><![CDATA[<p>Bei der Möbelsuche auf eBay stößt man oft auf den Umstand dass nur selten die gesuchten Artikel vorhanden sind und wenn nicht in abholbarer Reichweite. Da eBay inzwischen die Möglichkeit bietet jedes Suchergebnis als RSS Feed abzurufen schreit das förmlich nach einer Verarbeitung mit <a href="http://pipes.yahoo.com">Yahoo Pipes</a>. </p>
<p>Der grundsätzliche Aufbau ist trivial:</p>
<ul>
<li>Einbau von PLZ und Umkreis in die Suchergebnis URI</li>
<li>Fetchen der Suchergebnis URI</li>
<li>Ergebnisse zusammenfassen</li>
<li>Ergebnisse sortieren</li>
</ul>
<p>In Yahoo Pipes sieht das dann wie folgt aus:</p>
<p><a href="http://www.ioexception.de/wp-content/uploads/2010/03/pipes.png"><img src="http://www.ioexception.de/wp-content/uploads/2010/03/pipes-300x118.png" alt="Yahoo Pipes" title="Yahoo Pipes" width="300" height="118" class="alignnone size-medium wp-image-497" /></a></p>
<p>Nun hat man alle Suchergebnisse zusammengefasst als praktischen RSS Feed.  <a href="http://pipes.yahoo.com/d33r/78dd0f4d427fc8a964c879ca3e442b19">Meine bisherige Version</a> hat nur die Suche nach &#8220;Ikea&#8221;, die Büromöbel Kategorie und einige andere Suchen eingebunden. Erweiterungen sind gerne gesehen! </p>
]]></content:encoded>
			<wfw:commentRss>http://www.ioexception.de/2010/03/26/ebay-suchergebnisse-in-yahoo-pipes-bundeln/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenStreetMap-Rendering mit Mapnik</title>
		<link>http://www.ioexception.de/2010/02/16/openstreetmap-rendering-mit-mapnik/</link>
		<comments>http://www.ioexception.de/2010/02/16/openstreetmap-rendering-mit-mapnik/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 17:21:01 +0000</pubDate>
		<dc:creator>Timo Mueller</dc:creator>
				<category><![CDATA[allgemein]]></category>
		<category><![CDATA[visualisierungen]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[gis]]></category>
		<category><![CDATA[mapnik]]></category>
		<category><![CDATA[osm]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[visualisierung]]></category>

		<guid isPermaLink="false">http://www.ioexception.de/?p=464</guid>
		<description><![CDATA[Mit Hilfe des Kartenmaterials von www.openstreetmap.org (OSM) wird einem die Möglichkeit gegeben, zum Teil qualitativ sehr hochwertiges und offenes Kartenmaterial für eigene Anwendungen zu verwenden. Die Vielzahl der Verwendungsmöglichkeiten muss hier nicht weiter erläutert werden.
Allerdings ist die Verwendung der Daten selbst nicht unbedingt trivial. Mittlerweile gibt es zwar in der weiten Welt des Netzes auch [...]]]></description>
			<content:encoded><![CDATA[<p>Mit Hilfe des Kartenmaterials von www.openstreetmap.org (OSM) wird einem die Möglichkeit gegeben, zum Teil qualitativ sehr hochwertiges und offenes Kartenmaterial für eigene Anwendungen zu verwenden. Die Vielzahl der Verwendungsmöglichkeiten muss hier nicht weiter erläutert werden.<br />
Allerdings ist die Verwendung der Daten selbst nicht unbedingt trivial. Mittlerweile gibt es zwar in der weiten Welt des Netzes auch ein paar Blogs und Wikis, die einem helfen, dennoch möchte ich an dieser Stelle für eine voraussichtlich mehrteilige Serie den Grundstein legen. Der besteht daraus, aus dem frei verfügbarem Material einen kleinen einzelnen Ausschnitt zu rendern. Zu späteren Zeitpunkten werde ich hoffentlich noch zeigen können, inwiefern das durchaus umfangreiche Material auf die eigenen Bedürfnisse angepasst werden kann. Natürlich ist das ganze kein Hexenwerk und ich möchte auch nicht so tun als ob es eins wäre, weswegen wir am besten mal loslegen.</p>
<p>Da ich selbst in erster Linie Ubuntu benutze und an manchen Stellen der Einsatz von Windows die Angelegenheit nicht unbedingt erleichtert, ist die nachfolgende Anleitung für Ubuntu 9.10 geschrieben. Grundsätzlich sollte sie aber auch für ältere Ubuntu Versionen funktionieren. Unter http://wiki.openstreetmap.org/index.php/Mapnik gibt es weitere Infos, auch für andere Betriebssysteme.</p>
<pre class="brush: perl;"># Subversion-Installation
sudo apt-get install subversion

# der Einfachheit halber arbeitet man am besten direkt im Homeverzeichnis
cd ~

# Mapnik-Installation (Renderer):
sudo apt-get install python-mapnik

# Postgres-Installation (Datenbank)
sudo apt-get install postgresql-8.3-postgis

# Datenbank-Konfiguration
sudo -u postgres -i
createuser username # ja für superuser, username sollte normaler username sein
createdb -E UTF8 -O username gis
createlang plpgsql gis
exit

psql -d gis -f /usr/share/postgresql-8.3-postgis/lwpostgis.sql

echo &quot;ALTER TABLE geometry_columns OWNER TO username; ALTER TABLE spatial_ref_sys OWNER TO username;&quot; | psql -d gis

# Mapnik-Dateien-Checkout für das Rendern:
svn checkout http://svn.openstreetmap.org/applications/rendering/mapnik mapnik/

cd mapnik
mv archive/* ~/mapnik

svn co http://svn.openstreetmap.org/applications/utils/export/osm2pgsql/

cd osm2pgsql
make

psql -f 900913.sql -d gis

cd ..

# Herunterladen und Entpacken des Kartenmaterials
wget http://tile.openstreetmap.org/world_boundaries-spherical.tgz # ca 50MB

cd world_boundaries
wget http://tile.openstreetmap.org/processed_p.tar.bz2 # ca 227MB
tar xvf processed_p.tar.bz2
wget http://tile.openstreetmap.org/shoreline_300.tar.bz2 # ca 46MB
tar xvjf shoreline_300.tar.bz2

# Weitere Datenbankspeisung und Konfiguration:
shp2pgsql -s 900913 -I -g way processed_p shoreline_a | psql -q gis

# Mapnik-Einrichtung
cd ..
vi set-mapnik-env
# Ändern der unteren beiden Werte
export MAPNIK_DBNAME='gis'
export MAPNIK_DBUSER='username' # username von oben und achtet auf die richtigen Anfuehrungszeichen

# osm.xml-Generierung:
source ./set-mapnik-env
./customize-mapnik-map -&gt; $MAPNIK_MAP_FILE

# erstes Rendering
python generate_image.py</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.ioexception.de/2010/02/16/openstreetmap-rendering-mit-mapnik/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>throw new IOException();</title>
		<link>http://www.ioexception.de/2009/06/21/throw-new-ioexception/</link>
		<comments>http://www.ioexception.de/2009/06/21/throw-new-ioexception/#comments</comments>
		<pubDate>Sun, 21 Jun 2009 18:42:24 +0000</pubDate>
		<dc:creator>Benjamin Erb</dc:creator>
				<category><![CDATA[allgemein]]></category>

		<guid isPermaLink="false">http://www.ioexception.de/?p=52</guid>
		<description><![CDATA[
System.out.print(&#34;Hello World&#34;);

]]></description>
			<content:encoded><![CDATA[<pre class="brush: java;">
System.out.print(&quot;Hello World&quot;);
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.ioexception.de/2009/06/21/throw-new-ioexception/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

