www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Vorhilfe
  Status Geisteswiss.
    Status Erdkunde
    Status Geschichte
    Status Jura
    Status Musik/Kunst
    Status Pädagogik
    Status Philosophie
    Status Politik/Wirtschaft
    Status Psychologie
    Status Religion
    Status Sozialwissenschaften
  Status Informatik
    Status Schule
    Status Hochschule
    Status Info-Training
    Status Wettbewerbe
    Status Praxis
    Status Internes IR
  Status Ingenieurwiss.
    Status Bauingenieurwesen
    Status Elektrotechnik
    Status Maschinenbau
    Status Materialwissenschaft
    Status Regelungstechnik
    Status Signaltheorie
    Status Sonstiges
    Status Technik
  Status Mathe
    Status Schulmathe
    Status Hochschulmathe
    Status Mathe-Vorkurse
    Status Mathe-Software
  Status Naturwiss.
    Status Astronomie
    Status Biologie
    Status Chemie
    Status Geowissenschaften
    Status Medizin
    Status Physik
    Status Sport
  Status Sonstiges / Diverses
  Status Sprachen
    Status Deutsch
    Status Englisch
    Status Französisch
    Status Griechisch
    Status Latein
    Status Russisch
    Status Spanisch
    Status Vorkurse
    Status Sonstiges (Sprachen)
  Status Neuerdings
  Status Internes VH
    Status Café VH
    Status Verbesserungen
    Status Benutzerbetreuung
    Status Plenum
    Status Datenbank-Forum
    Status Test-Forum
    Status Fragwürdige Inhalte
    Status VH e.V.

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Dt. Schulen im Ausland: Mathe-Seiten:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Mathematica" - Mathematica: MatrixPlot, Farbe
Mathematica: MatrixPlot, Farbe < Mathematica < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Mathematica"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Mathematica: MatrixPlot, Farbe: Frage (überfällig)
Status: (Frage) überfällig Status 
Datum: 10:37 Mo 04.07.2011
Autor: danm357

Liebe Forengemeinde,

Ich versuche mit Mathematica 8.0, mir die Werte einer Matrix farbig darstellen zu lassen. Dazu wird den Werten der Matrix eine Farbe (automatisch) zugeordnet und die Werte werden an den Positionen, die den Indices der Matrix entsprichen, geplottet.

Nun habe ich ein Problem mit dem Farbverlauf, den ich für diesen sogenannten MatrixPlot verwende.

Hier ein kleines Beispiel zur Illustration:
Ich generiere die Matrix s mit:

s=Table[i*j,{i,10},{j,10}];

die dann folgendermassen ausschaut:

MatrixForm[s]

erste Zeile: Werte von 1 bis 10
zweite Zeile: Werte von 2 bis 20
dweite Zeile: Werte von 3 bis 30 etc.

Geplottet wird das ganze momentan mit:

Needs["PlotLegends'"]

ShowLegend[MatrixPlot[s,PlotRange->{{0,10},{0,10},All},AspectRatio->1/1,ColorFunction->(ColorData["Rainbow"][#1]&),ColorFunctionScaling->True],{ColorData["Rainbow"][1-#1]&,20,ToString[100],ToString[1],LegendPosition->{1.1,-0.4}}]

Vergleicht man nun den Inhalt der Matrix (und den Farbbalken) mit dem Plot, so stellt man fest, dass der Plot nicht so ganz zum Inhalt passt.
Z.B.: die linke obere Ecke der Matrix hat kleine Werte von 1 bis ca. 10. Diese sollten nach Farbbalken eher im lila/blauen Bereich liegen und nicht im grünen. Grün entspräche wohl eher den Werten um die 50.
Würde also jemand bloss den Plot und nicht die Werte der Matrix anschauen, würde er vermuten, dass in der Matrix bloss Werte grösser als 50 vorkommen.

Wähle ich ColorFunctionScaling->False statt True, sehe ich seltsamerweise nur noch einen durchgehend roten Plot, was ich leider gar nicht mehr nachvollziehen kann.

Kann mir vielleicht hier jemand erklären, ob ich was falsch mache oder falsch sehe? Ich hätte schon ganz gerne eine eindeutige Zuordnung der Farben zu den Werten meiner Matrix, so dass man keine falschen Schlüsse auf den Inhalt der Matrix zieht.

Kann mir bei der Gelegenheit auch jemand mitteilen, ob man eigene Farbverläufe in Mathematica generieren kann? Der Farbverlauf "Rainbow" kommt zwar schon nahe an das gewünschte, aber lieber hätte ich es, dass der Farbverlauf mit weiss statt lila startet...
Aber das ist nur kosmetische Nebensache...

Über jede kleine Hilfe würde ich mich freuen!


        
Bezug
Mathematica: MatrixPlot, Farbe: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 15:16 Mo 04.07.2011
Autor: danm357

Liebe Forengemeinde,

nach mühsamer Arbeit, konnte ich den ersten Teil meines Problems selber lösen. Man erhält eine eindeutige Zuordnung der Farben zu den Werten der Matrix, wenn man im MatrixPlot folgendes schreibt:

Needs["PlotLegends'"]

ShowLegend[MatrixPlot[s,PlotRange->{{0,10},{0,10},All},AspectRatio->1/1,ColorFunction->(ColorData["Rainbow"][Rescale[#1,{0,100}]]&),ColorFunctionScaling->False],{(ColorData["Rainbow"][1-#1]&),20,ToString[100],ToString[0],LegendPosition->{1.1,-0.4}}]

Der Trick ist also einfach eine Reskalierung der Farbskala auf die vorhandenen Werte in der Matrix.

Leider kann ich aber noch nicht mein zweites Problem lösen. Ich würde gerne eine andere Farbskala verwenden, am besten meine eigene, da mir all die, die man in Mathematica in der Hilfe unter ColorSchemes finden kann, nicht zusagen.

Ich hoffe also noch auf ein paar Ideen bezüglich dieses Problems!


Bezug
                
Bezug
Mathematica: MatrixPlot, Farbe: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 19:51 Mi 06.07.2011
Autor: danm357

Liebe Forengemeinde,

nach etwas mühsamer Arbeit, habe ich nun endlich rausgefunden, wie man in Mathematica einen eigenen Farbverlauf erzeugen kann.
Damit anderen vielleicht einmal diese Mühen erspart bleiben, stelle ich meine Lösung nun hier rein:

Erzeugt wird der Farbverlauf mit, z.B:

mycolorfun=Function[Blend[{Green,Yellow,Blue},#]];

Der Plot wird dann erzeugt mit:

ShowLegend[MatrixPlot[s,PlotRange->{{0,10},{0,10},All},AspectRatio->1/1,ColorFunction->(mycolorfun[Rescale[#1,{1,100}]]&),ColorFunctionScaling->False],{mycolorfun[Rescale[(1-#1)*100,{1,100}]]&,20,ToString[100],ToString[1],LegendPosition{1.1,-0.4}}]

Wie kann man nun als Autor die Frage als beantwortet abhaken?  


Bezug
        
Bezug
Mathematica: MatrixPlot, Farbe: Fälligkeit abgelaufen
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 11:20 Do 04.08.2011
Autor: matux

$MATUXTEXT(ueberfaellige_frage)
Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Mathematica"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.vorhilfe.de