[SOLVED] Nietypowy wykres- proszę o poradę.

Ogólne pogawędki i dywagacje
pali112
Posty: 5
Rejestracja: śr cze 27, 2012 11:14 pm

[SOLVED] Nietypowy wykres- proszę o poradę.

Post autor: pali112 »

Witam

Jestem nowy na forum, więc na wstępie chciałbym się przywitać. W najbliższym czasie będę pracował nad ważnym dla mnie projekcie i mam problem. Mam do wykonania wykres z którym nie mogę sobie poradzić, proszę o poradę, jak wykonać taki wykres?
link: http://img339.imageshack.us/img339/8098 ... 270001.jpg

Nie wiem jak zrobić tą kratkę oraz przejścia kolorów. Czy taki wykres można zrobić w Openoffice?
Windows xp, Openoffice 3.3
Jan_J
Posty: 4558
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Nietypowy wykres- proszę o poradę.

Post autor: Jan_J »

Nie robiłbym tego arkuszem kalkulacyjnym.

A czym? to zależy od tego, co wykres przedstawia. Moim zdaniem są to warstwice pewnej funkcji 2 zmiennych z = f(x,y) rzutowane na prostokąt na płaszczyźnie x,y; są one “zrastrowane”: próbkowanie ze stałym krokiem, a wynik próbkowania odpowiada za pojedynczy mały prostokącik. Ale mogę się mylić.

W każdym razie grafika zdecydowanie bardziej wygląda na naukowo-inżynierską niż biznesowo-inżynierską.

Kilka propozycji, wg (subiektywnie) rosnącego stopnia trudności obsługi:
Gnuplot? → http://gnuplot.sourceforge.net/demo_4.6
PyLab? → http://matplotlib.sourceforge.net/gallery.html
Scilab? → np. http://wiki.scilab.org/howto/colormaps
Matlab?
R? → np. http://flowingdata.com/2010/01/21/how-t ... -solution/
???
LaTeX + TikZ !? → http://www.texample.net/tikz/examples/
???
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
pali112
Posty: 5
Rejestracja: śr cze 27, 2012 11:14 pm

Re: Nietypowy wykres- proszę o poradę.

Post autor: pali112 »

Jest to wykres zakresów dostępnych soczewek okularowych. Prowadzę zakład optyczny i chciałbym zrobić taki wykres swojego magazynu towaru na własne potrzeby. Soczewki mają dwa parametry oś x - cylinder oś y - sfera. Wartości na osi x kształtują się od 0 do 2 co 0,25 a wartości na osi y od 0 do 5 co 0,25. Wartość z osi y musi odpowiadać wartości z osi x. Pierwsze co skojarzył mi się arkusz kalkulacyjny - że to chyba tutaj się to robi, znalazłem nawet podobny wykres (warstwowy) tylko nie wiem co z tymi kratkami? Dziękuję Jan_J za odpowiedź, jak myślisz, który program wypróbować do tego wykresu?
Windows xp, Openoffice 3.3
Awatar użytkownika
quest-88
Posty: 1105
Rejestracja: ndz maja 24, 2009 8:12 pm
Lokalizacja: Zabrze
Kontakt:

Re: Nietypowy wykres- proszę o poradę.

Post autor: quest-88 »

Czy tego nie da się zrobić w LibreOffice 3.6, gdzie wprowadzono skale kolorów?
Support for color scales and data bars. Import from xlsx and import/export from ods in ODF1.2 Extended. Warning: Some limitation still apply and will be fixed in 3.7.0 (Markus Mohrhard)
http://wiki.documentfoundation.org/Rele ... s/3.6#Calc
Standardowa diagnostyka rozwiązuje 90% problemów typu "wcześniej działało, ale już nie działa".
Przepis na LibreOffice
Uzyskałeś pomoc? Poinformuj innych o sprawdzonym rozwiązaniu i podziękuj. Dodaj [SOLVED] w tytule.
Jan_J
Posty: 4558
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Nietypowy wykres- proszę o poradę.

Post autor: Jan_J »

@ Pali112
To nie jest wykres warstwowy. Kształtów na Twoich planszach nie da się opisać nierównościami typu y < f(x). Są to raczej obszary postaci z1 < f(x,y)<= z2, albo kolory przypisane wartościom liczbowym z macierzy.

W moim mieście (Wrocław), na nie mojej uczelni (Politechnika), studenci Inżynierii Biomedycznej zapewne użyliby Matlaba.

Dziś lub jutro spróbuję podesłać szablon w Gnuplocie.

@ Quest
Zestawy kolorów to nie wszystko. Nie znam LO 3.6, ale wymagany szablon nie należy do kanonu prezentacji biznesowych. Jeżeli się nawet da osiągnąć podobny efekt, to obawiam się, że trzeba zdrowo pokombinować (np. przysłaniając warstwy). Moim zdaniem bez sensu.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
pali112
Posty: 5
Rejestracja: śr cze 27, 2012 11:14 pm

Re: Nietypowy wykres- proszę o poradę.

Post autor: pali112 »

We Wrocławiu studiowałem na Politechnice Wrocławskiej (optyka okularowa) - tam właśnie używaliśmy Matlaba. To było już ładne parę lat temu, robiliśmy różne projekty z zakresu optyki, ale niestety nigdy czegoś takiego. Dużo zapomniałem z tego programu i nigdy go nie"czułem". Jan_J Jeśli uda się stworzyć taki szablon w Gnuplocie to prześlij proszę, będę bardzo wdzięczny. Niebieskie kwadraciki oznaczają dostępność danej soczewki a cyfry na wykresach 70 i 65 średnice tych soczewek, np soczewka o parametrach sfera -5 cylinder -0,75 średnica 70. Dzięki jeszcze raz za pomoc.
Windows xp, Openoffice 3.3
Jan_J
Posty: 4558
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Nietypowy wykres- proszę o poradę.

Post autor: Jan_J »

Pierwsza zachęta do współpracy pod Gnuplotem. Program: http://gnuplot.info

Spróbujemy zwizualizować macierz danych (w skrypcie odwołuję się do takich danych zapisanych w pliku tekstowym "macierz.txt")

Kod: Zaznacz cały

-10.0   -7.0    -5.2    -4.0    -3.0    -2.2    -1.5    -1.0    -0.5    0.0     0.4     0.8     1.1     1.5     1.8     2.0     2.3     2.5     2.8     3.0     3.2     3.4     3.6     3.8     4.0     4.1     4.3     4.5     4.6     4.8     4.9     5.0
-10.0   -7.0    -5.2    -3.9    -3.0    -2.2    -1.5    -0.9    -0.4    0.0     0.4     0.8     1.2     1.5     1.8     2.0     2.3     2.6     2.8     3.0     3.2     3.4     3.6     3.8     4.0     4.1     4.3     4.5     4.6     4.8     4.9     5.0
-9.9    -6.9    -5.1    -3.9    -2.9    -2.1    -1.5    -0.9    -0.4    0.1     0.5     0.8     1.2     1.5     1.8     2.1     2.3     2.6     2.8     3.0     3.2     3.4     3.6     3.8     4.0     4.2     4.3     4.5     4.6     4.8     4.9     5.0
-9.8    -6.8    -5.1    -3.8    -2.9    -2.1    -1.4    -0.8    -0.3    0.1     0.5     0.9     1.2     1.6     1.9     2.1     2.4     2.6     2.9     3.1     3.3     3.5     3.7     3.9     4.0     4.2     4.4     4.5     4.7     4.8     4.9     5.1
-9.8    -6.7    -5.0    -3.7    -2.8    -2.0    -1.3    -0.8    -0.3    0.2     0.6     1.0     1.3     1.6     1.9     2.2     2.5     2.7     2.9     3.2     3.4     3.6     3.8     3.9     4.1     4.3     4.4     4.6     4.7     4.9     5.0     5.1
-9.6    -6.6    -4.9    -3.6    -2.7    -1.9    -1.2    -0.7    -0.2    0.3     0.7     1.1     1.4     1.7     2.0     2.3     2.6     2.8     3.0     3.3     3.5     3.7     3.8     4.0     4.2     4.4     4.5     4.7     4.8     5.0     5.1     5.2
-9.5    -6.5    -4.8    -3.5    -2.6    -1.8    -1.1    -0.5    0.0     0.4     0.8     1.2     1.5     1.9     2.1     2.4     2.7     2.9     3.1     3.4     3.6     3.8     3.9     4.1     4.3     4.5     4.6     4.8     4.9     5.1     5.2     5.3
-9.4    -6.4    -4.6    -3.4    -2.4    -1.6    -1.0    -0.4    0.1     0.6     1.0     1.3     1.7     2.0     2.3     2.6     2.8     3.0     3.3     3.5     3.7     3.9     4.1     4.3     4.4     4.6     4.7     4.9     5.0     5.2     5.3     5.4
-9.2    -6.2    -4.4    -3.2    -2.2    -1.5    -0.8    -0.2    0.3     0.7     1.1     1.5     1.8     2.1     2.4     2.7     3.0     3.2     3.4     3.6     3.8     4.0     4.2     4.4     4.6     4.7     4.9     5.0     5.2     5.3     5.4     5.6
-9.0    -6.0    -4.3    -3.0    -2.1    -1.3    -0.6    0.0     0.5     0.9     1.3     1.7     2.0     2.3     2.6     2.9     3.1     3.4     3.6     3.8     4.0     4.2     4.4     4.6     4.7     4.9     5.0     5.2     5.3     5.5     5.6     5.7
-8.8    -5.8    -4.1    -2.8    -1.9    -1.1    -0.4    0.2     0.7     1.1     1.5     1.9     2.2     2.5     2.8     3.1     3.3     3.6     3.8     4.0     4.2     4.4     4.6     4.7     4.9     5.1     5.2     5.4     5.5     5.7     5.8     5.9
-8.6    -5.6    -3.8    -2.6    -1.6    -0.9    -0.2    0.4     0.9     1.3     1.7     2.1     2.4     2.7     3.0     3.3     3.5     3.8     4.0     4.2     4.4     4.6     4.8     5.0     5.1     5.3     5.4     5.6     5.7     5.9     6.0     6.1
-8.3    -5.3    -3.6    -2.3    -1.4    -0.6    0.0     0.6     1.1     1.6     2.0     2.3     2.7     3.0     3.3     3.5     3.8     4.0     4.2     4.4     4.6     4.8     5.0     5.2     5.3     5.5     5.7     5.8     5.9     6.1     6.2     6.3
-8.1    -5.1    -3.3    -2.1    -1.1    -0.3    0.3     0.9     1.4     1.8     2.2     2.6     2.9     3.2     3.5     3.8     4.0     4.3     4.5     4.7     4.9     5.1     5.3     5.4     5.6     5.7     5.9     6.0     6.2     6.3     6.4     6.6
-7.8    -4.8    -3.0    -1.8    -0.8    -0.1    0.6     1.2     1.7     2.1     2.5     2.9     3.2     3.5     3.8     4.1     4.3     4.5     4.8     5.0     5.2     5.3     5.5     5.7     5.9     6.0     6.2     6.3     6.4     6.6     6.7     6.8
-7.5    -4.5    -2.7    -1.5    -0.5    0.2     0.9     1.5     2.0     2.4     2.8     3.2     3.5     3.8     4.1     4.3     4.6     4.8     5.0     5.3     5.4     5.6     5.8     6.0     6.1     6.3     6.4     6.6     6.7     6.9     7.0     7.1
-7.1    -4.1    -2.4    -1.2    -0.2    0.6     1.2     1.8     2.3     2.7     3.1     3.5     3.8     4.1     4.4     4.7     4.9     5.1     5.4     5.6     5.8     5.9     6.1     6.3     6.4     6.6     6.7     6.9     7.0     7.2     7.3     7.4
-6.8    -3.8    -2.0    -0.8    0.1     0.9     1.6     2.1     2.6     3.1     3.5     3.8     4.1     4.4     4.7     5.0     5.2     5.5     5.7     5.9     6.1     6.3     6.4     6.6     6.8     6.9     7.1     7.2     7.3     7.5     7.6     7.7
-6.4    -3.4    -1.7    -0.4    0.5     1.3     1.9     2.5     3.0     3.4     3.8     4.2     4.5     4.8     5.1     5.3     5.6     5.8     6.0     6.2     6.4     6.6     6.8     7.0     7.1     7.3     7.4     7.5     7.7     7.8     7.9     8.1
-6.0    -3.0    -1.3    -0.1    0.9     1.7     2.3     2.9     3.4     3.8     4.2     4.6     4.9     5.2     5.5     5.7     6.0     6.2     6.4     6.6     6.8     7.0     7.2     7.3     7.5     7.6     7.8     7.9     8.0     8.2     8.3     8.4
-5.6    -2.6    -0.9    0.3     1.3     2.1     2.7     3.3     3.8     4.2     4.6     4.9     5.3     5.6     5.9     6.1     6.4     6.6     6.8     7.0     7.2     7.4     7.5     7.7     7.9     8.0     8.2     8.3     8.4     8.6     8.7     8.8
-5.2    -2.2    -0.5    0.8     1.7     2.5     3.1     3.7     4.2     4.6     5.0     5.4     5.7     6.0     6.3     6.5     6.8     7.0     7.2     7.4     7.6     7.8     8.0     8.1     8.3     8.4     8.6     8.7     8.8     9.0     9.1     9.2
-4.7    -1.7    0.0     1.2     2.2     2.9     3.6     4.1     4.6     5.1     5.5     5.8     6.1     6.4     6.7     7.0     7.2     7.4     7.6     7.8     8.0     8.2     8.4     8.5     8.7     8.8     9.0     9.1     9.2     9.4     9.5     9.6
-4.3    -1.3    0.5     1.7     2.6     3.4     4.0     4.6     5.1     5.5     5.9     6.3     6.6     6.9     7.2     7.4     7.7     7.9     8.1     8.3     8.5     8.7     8.8     9.0     9.1     9.3     9.4     9.6     9.7     9.8     9.9     10.0
-3.8    -0.8    0.9     2.2     3.1     3.9     4.5     5.1     5.6     6.0     6.4     6.7     7.1     7.4     7.6     7.9     8.1     8.4     8.6     8.8     8.9     9.1     9.3     9.5     9.6     9.7     9.9     10.0    10.1    10.3    10.4    10.5
-3.3    -0.3    1.5     2.7     3.6     4.4     5.0     5.6     6.1     6.5     6.9     7.2     7.6     7.9     8.1     8.4     8.6     8.8     9.1     9.3     9.4     9.6     9.8     9.9     10.1    10.2    10.4    10.5    10.6    10.8    10.9    11.0
-2.7    0.2     2.0     3.2     4.1     4.9     5.6     6.1     6.6     7.0     7.4     7.8     8.1     8.4     8.6     8.9     9.1     9.4     9.6     9.8     9.9     10.1    10.3    10.4    10.6    10.7    10.9    11.0    11.1    11.3    11.4    11.5
-2.2    0.8     2.5     3.7     4.7     5.5     6.1     6.6     7.1     7.6     7.9     8.3     8.6     8.9     9.2     9.4     9.7     9.9     10.1    10.3    10.5    10.6    10.8    11.0    11.1    11.3    11.4    11.5    11.7    11.8    11.9    12.0
-1.6    1.4     3.1     4.3     5.3     6.0     6.7     7.2     7.7     8.1     8.5     8.9     9.2     9.5     9.7     10.0    10.2    10.4    10.6    10.8    11.0    11.2    11.4    11.5    11.7    11.8    11.9    12.1    12.2    12.3    12.4    12.5
-1.0    2.0     3.7     4.9     5.8     6.6     7.2     7.8     8.3     8.7     9.1     9.4     9.7     10.0    10.3    10.6    10.8    11.0    11.2    11.4    11.6    11.8    11.9    12.1    12.2    12.4    12.5    12.6    12.8    12.9    13.0    13.1
-0.4    2.6     4.3     5.5     6.4     7.2     7.8     8.4     8.9     9.3     9.7     10.0    10.3    10.6    10.9    11.2    11.4    11.6    11.8    12.0    12.2    12.4    12.5    12.7    12.8    13.0    13.1    13.2    13.3    13.5    13.6    13.7
0.2     3.2     4.9     6.1     7.1     7.8     8.5     9.0     9.5     9.9     10.3    10.6    11.0    11.3    11.5    11.8    12.0    12.2    12.4    12.6    12.8    13.0    13.1    13.3    13.4    13.6    13.7    13.8    13.9    14.1    14.2    14.3
za pomocą Gunplota. Poniżej szkic kodu, który zrobi rysunek

Kod: Zaznacz cały

set title "Kolorowanka z macierzy"

# bez legendy
unset key
# kreski na osiach prawie niewidoczne -- jak wstawimy 0, to zniknie siatka pomocniczna
set tic scale 0.01

# zakres osi dopasowany (recznie) do danych
set xrange  [0:32]
set yrange  [0:32]

# skala jednakowa na obu osiach
set size ratio -1
# gruba siatka z krokiem co 5
set xtics  5
set ytics  5
# drobna siatka z krokiem co 1 (tj. 5 krokow na jeden krok grubej)
set mxtics 5
set mytics 5
# rysuj linie siatki
set grid xtics ytics mxtics mytics linestyle -1 linewidth 0.8, linestyle -1 linewidth 0.2

# paleta barw: numery funkcji zmieniajacych skladowe r,g,b
set palette rgbformula 21,22,23
# ustalenie zakresu wartosci odwzorowanych barwami palety
set cbrange [-10:15]

# legenda skali barw
# unset cbtics
set cblabel "Skala"

# rysowanie -- magia z dolarami ustawia kratki na siatce
set view map
splot "macierz.txt" matrix using (0.5+$1):(0.5+$2):3 with image

# obejrzymy sobie wynik
pause -1

# zapis do pliku
set terminal pdf
set output "macierz.pdf"
replot
set output
set terminal wx
Jest on jeszcze pod wieloma względami odległy od potrzeb, ale powinien się dać zaadaptować.

W otwartej sesji Gnuplota pod Windows skrypt wykonasz albo za pomocą komendy load "plik", albo przeciągając ikonkę pliku ze skryptem na okno Gnuplota.

Rysunek otrzymany z przykładu:
macierz.pdf
(11.84 KiB) Pobrany 519 razy
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Jan_J
Posty: 4558
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Nietypowy wykres- proszę o poradę.

Post autor: Jan_J »

Trochę bliżej celu:

Kod: Zaznacz cały

#!/usr/bin/env gnuplot

set encoding utf8 
#set multiplot layout 2, 1 
set title "Kolorowanka z macierzy"

# bez legendy, kreski na osiach prawie niewidoczne
unset key
set tic scale 0.01

# formatowanie osi
set decimalsign ","
set format x "%.2f"
set xtics font "DejaVu Sans, 4" rotate by 90
set ytics font "DejaVu Sans, 4"

# zakres dopasowany do danych

# skala jednakowa na obu osiach
set size ratio -1
# gruba siatka co 5, drobna co 1
set xtics  1
set ytics  1
set mxtics 4
set mytics 4
# rysuj linie siatki
set grid xtics ytics mxtics mytics linestyle -1 linewidth 0.8, linestyle -1 linewidth 0.2

# mapa barw
#set palette rgbformula 21,22,23
set palette defined (0 0 0 1, .2 .2 .2 1, .4 .4 .4 1, .6 .6 .6 1, .8 .8 .8 1, 1 1 1 1)
set cbrange [0:10]

# unset cbtics
set cbtics ("wszystkie" 0.5, "niektóre" 1.0,  "jedne" 2.0, "żadne" 4.0) font "DejaVu Sans, 4"
set cblabel "Średnica" font "DejaVu Sans, 5"


# rysowanie 
set view map

set xrange  [-0.5:4]

# górna część rysunku
set yrange  [0:10]
set ylabel "+S" font "DejaVu Sans, 5"
set format y "+%.2f"
set xlabel "+C" font "DejaVu Sans, 5"
splot "macierz1.txt" matrix using (-0.5+0.125+0.25*$1):(0.125+0.25*$2):3 with image

# dolna część rysunku
#set yrange  [-10:0]
#set ylabel "-S" font "DejaVu Sans, 5"
#set format y "%.2f"
#splot "macierz2.txt" matrix using (-0.5+0.125+0.25*$1):(-8.0+0.125+0.25*$2):3 with image

# obejrzymy sobie
pause -1

#unset multiplot

# zapis do pliku
set terminal pdf
set output "macierz.pdf"
replot

# powrót do ustawień ekranowych
set output
set terminal wxt
I efekt:
macierz.pdf
(13.42 KiB) Pobrany 478 razy
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
pali112
Posty: 5
Rejestracja: śr cze 27, 2012 11:14 pm

Re: Nietypowy wykres- proszę o poradę.

Post autor: pali112 »

Próbuję, walczę z tym programem i wykresami, ale coś mi nie wychodzi. Programy tego typu nigdy nie były moją mocną stroną. No nic będę próbował dalej :)
Windows xp, Openoffice 3.3
Jan_J
Posty: 4558
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Nietypowy wykres- proszę o poradę.

Post autor: Jan_J »

Odsłona 3, bliska końcowej
Załączniki
macierz.pdf
efekt
(11.49 KiB) Pobrany 483 razy
rysuj.txt
kod rysunku
(1.57 KiB) Pobrany 417 razy
macierz1.txt
dane do rysunku
(1.13 KiB) Pobrany 436 razy
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
pali112
Posty: 5
Rejestracja: śr cze 27, 2012 11:14 pm

Re: Nietypowy wykres- proszę o poradę.

Post autor: pali112 »

wow.. super wykres gotowy. Jan_J masz głowę do takich rzeczy ! Wczoraj próbując bardziej zrozumieć kod zacząłem szukać informacji o programie GNUplot. Znalazłem taki poradnik: http://www.mblog.boo.pl/poddzial-9-nauk ... ona-4.html Mam wrażenie że pozycja obowiązkowa dla osób które zaczynają pracę z programem GNUplot. Dzisiaj jadę w trasę, ale w wolnej chwili muszę to przeczytać :) Jan_J jeszcze raz dziękuję, bardzo mi pomogłeś.
Windows xp, Openoffice 3.3
Raknor
Posty: 509
Rejestracja: pt lut 19, 2010 3:32 pm
Lokalizacja: Warszawa
Kontakt:

Re: [SOLVED] Nietypowy wykres- proszę o poradę.

Post autor: Raknor »

Trochę na boku, ale trafiłem na program, który realizuje powyższy wykres -> http://www.superoptyk.pl/katalog_soczewek.html , a koszt licencji zatyka.
LibreOffice 5.1.6 (64bit)
Kubuntu 16.04 (64bit)
Wszelkie uwagi lub chęć udziału przy polonizacji LibreOffice proszę kierować na adres: pol_lo at pro.wp.pl
ODPOWIEDZ