File:Csv-2d-gaussian-multivarate-distributions.svg

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search

Original file(SVG file, nominally 639 × 468 pixels, file size: 1.78 MB)

Captions

Captions

Add a one-line explanation of what this file represents

Summary[edit]

Description
English: Multivariate Gaussian Distributions
Deutsch: Multiariate Gauss-Verteilungen
 
and
 
and
 
Date
Source Own work
Author MartinThoma
 
W3C-validity not checked.

Source is available at github

LaTeX Code[edit]

\documentclass[varwidth=true, border=5pt]{article}
\usepackage[active,tightpage]{preview}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{pgfplots}
\pgfplotsset{compat=1.10}
\usepackage{tikz}
\usetikzlibrary{arrows,positioning} 
\usepackage{helvet}
\usepackage[eulergreek]{sansmath}

\begin{document}
\begin{preview}
\begin{tikzpicture}
    \begin{axis}[
        width=13.4cm,
        height=10.0cm,
        % Grid
        grid = major,
        % size
        xmin= 40,     % start the diagram at this x-coordinate
        xmax= 90,   % end   the diagram at this x-coordinate
        ymin= 0,     % start the diagram at this y-coordinate
        ymax= 60, % end   the diagram at this y-coordinate
        % Legende
        legend style={
            font=\large\sansmath\sffamily,
            at={(0.5,-0.18)},
            anchor=north,
            legend cell align=left,
            legend columns=-1,
            column sep=0.5cm
        },
        % Ticks
        tick align=inside,
        every axis/.append style={font=\large\sansmath\sffamily},
        minor tick style={thick},
        scaled y ticks = false,
        % Axis
        axis line style = {very thick,shorten <=-0.5\pgflinewidth},
        axis lines = middle,
        axis line style = very thick,
        xlabel=Gesamtausgaben,
        x label style={at={(axis description cs:0.5,-0.05)},
                       anchor=north,
                       font=\boldmath\sansmath\sffamily\Large},
        ylabel=Luxusausgaben,
        y label style={at={(axis description cs:-0.05,0.5)},
                       anchor=south,
                       rotate=90,
                       font=\boldmath\sansmath\sffamily\Large},
        ]
\addplot[
scatter,
only marks,
point meta=explicit symbolic,
scatter/classes={
a={mark=x,red!90!black},%
b={mark=x,cyan!50!black}},
]
table[col sep=comma, meta=label] {data.csv};

\addplot[
scatter,
only marks,
point meta=explicit symbolic,
scatter/classes={
b={mark=*,mark size=3pt,red!30!white,draw=black},%
c={mark=*,mark size=3pt,cyan!30!white,draw=black},%
a={mark=*,mark size=3pt,green!70!black,draw=black}},
]
table[meta=label] {
    x   y   label
    65  35  a
    70  40  b
    60  20  c
};
% \addlegendentry{Gruppe 1}
% \addlegendentry{Gruppe 2}
\end{axis}
\end{tikzpicture}
\end{preview}
\end{document}

Data[edit]

The data is available at GitHub. However, you can create similar data with the following Python code:

#!/usr/bin/env python

import matplotlib.pyplot as plt
import numpy
import csv

cov = [[25, 20], [20, 25]]  # diagonal covariance, points lie on x or y-axis

meanI = [70, 40]
datapointsI = 2000

meanII = [60, 20]
datapointsII = 2000

dataI = numpy.random.multivariate_normal(meanI, cov, datapointsI).T
x, y = dataI
plt.plot(x, y, 'x')

dataII = numpy.random.multivariate_normal(meanII, cov, datapointsII).T
x, y = dataII
plt.plot(x, y, 'x')

plt.axis('equal')
plt.show()

data = []
xs, ys = dataI
for x, y in zip(xs, ys):
    data.append([x, y, 'a'])
xs, ys = dataII
for x, y in zip(xs, ys):
    data.append([x, y, 'b'])

# Write data to csv files
with open("data.csv", 'wb') as csvfile:
    csvfile.write("x,y,label\n")
    spamwriter = csv.writer(csvfile, delimiter=',',
                            quotechar='"', quoting=csv.QUOTE_MINIMAL)
    for datapoint in data:
        spamwriter.writerow(datapoint)

Licensing[edit]

I, the copyright holder of this work, hereby publish it under the following license:
Creative Commons CC-Zero This file is made available under the Creative Commons CC0 1.0 Universal Public Domain Dedication.
The person who associated a work with this deed has dedicated the work to the public domain by waiving all of their rights to the work worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law. You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission.

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current23:56, 31 August 2014Thumbnail for version as of 23:56, 31 August 2014639 × 468 (1.78 MB)MartinThoma (talk | contribs)Added line where that divides both probabilities
15:12, 29 August 2014Thumbnail for version as of 15:12, 29 August 2014639 × 468 (2.13 MB)MartinThoma (talk | contribs)Added label to green node; made nodes bigger
16:42, 23 August 2014Thumbnail for version as of 16:42, 23 August 2014639 × 468 (1.43 MB)MartinThoma (talk | contribs)Improved readability: Sans-Serif fonts; thicker markers
16:28, 23 August 2014Thumbnail for version as of 16:28, 23 August 2014640 × 395 (1.45 MB)MartinThoma (talk | contribs){{Information |Description ={{en|1=Multivariate Gaussian Distributions}} {{de|1=Multiariate Gauss-Verteilungen}} |Source ={{own}} |Author =MartinThoma |Date =2014-08-23 |Permission = |other_versions...

File usage on other wikis

The following other wikis use this file:

Metadata