Etykiety danych na jednej osi XY z wieloma wykresami

Użytkowanie arkusza kalkulacyjnego
matmat100
Posty: 3
Rejestracja: sob maja 10, 2014 1:08 pm

Etykiety danych na jednej osi XY z wieloma wykresami

Post autor: matmat100 »

Pracuję na Libre Office Calc (Ubuntu) i Open Office (WIndows7) i na żadnym z tych programów nie da się zmienić etykiety danych tak, by przypisać inne etykiety do każdego wykresu na wspólnej osi XY. Wszystko można zmieniać i wartości X i Y oraz Nazwę dla każdego wykresu, a Etykiety danych z automatu ustawiają się dla wszystkich wykresów.

Jak zmienić na inne etykiety danych na wspólnej osi XY dla drugiego wykresu?
Przykład problemu na obrazku. Dla wykresu z kolumny B potrzebne są etykiety danych z kolumny C, a z automatu ustawione są etykiety dla wykresu z kolumny D.

I na odwrót. Jak ustawimy etykiety z kolumny C dla wykresu z kolumny B to dla wykresu z kolumny D z automatu ustawią sie etykiety też z kolumny C, a nie z E.

Z góry dziękuję za pomoc.
Załączniki
libre office etykiety danych.png
Libre Office Calc 4.1.3.2, Ubuntu 13.10
Open Office 4.1.0, Windows 7
Jan_J
Posty: 4579
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Etykiety danych na jednej osi XY z wieloma wykresami

Post autor: Jan_J »

Niewygodne ...
moim zdaniem jest to pozostałość z macierzowego podejścia do danych wejściowych dla wykresu. Taką reprezentację wprowadzono w OOo 2.x. Potem ewoluowała w kierunku bardziej obiektowym.
Próba rozwiązania problemu: https://forum.openoffice.org/en/forum/v ... =9&t=12476
JJ
LO (24.2|7.6) ∙ Python (3.12|3.11|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
matmat100
Posty: 3
Rejestracja: sob maja 10, 2014 1:08 pm

Re: Etykiety danych na jednej osi XY z wieloma wykresami

Post autor: matmat100 »

Czyli problem jest w programie, a nie w nieznajomości jego opcji?

Myślałem o zgrupowaniu kolumn, ale oś X to nie są byle liczby tylko data z czasem co do minuty. Zgrupowanie zmiesza dane i jeszcze uszłoby to w tym tłumie, gdyby nie kolejny problem, czyli wyłączenie ciągłości linii w pewnych wykresach, a która to opcja wyłącza ciągłość linii we wszystkich wykresach, a nie tylko we wskazanym. Czyli luki pomiędzy danymi z konkretnego wykresu zostałyby pozbawione linii.

Dziękuję za wyjaśnienie problemu. Będę musiał coś kombinować, być może etykiety trzeba będzie wpisać przy pomocy zrzutu ekranu i GIMPA.
Pozdrawiam.
Libre Office Calc 4.1.3.2, Ubuntu 13.10
Open Office 4.1.0, Windows 7
Raknor
Posty: 509
Rejestracja: pt lut 19, 2010 3:32 pm
Lokalizacja: Warszawa
Kontakt:

Re: Etykiety danych na jednej osi XY z wieloma wykresami

Post autor: Raknor »

Skrypty napisane w Scilabie -> http://www.scilab.org/

Opcja1:

Kod: Zaznacz cały

clear
xdel(winsid())

t=datenum(2014,2,1):1:datenum(2014,2,14)
[y,m,d]=datevec(t)
data=[string(y)+'-'+string(m)+'-'+string(d)]
wartosc1=[1:12]
etykieta1=['a' 'b' 'c' 'd' 'e' 'f' 'g' 'h' 'i' 'j' 'k' 'l']
etykieta11=[etykieta1'+' '+string(wartosc1)']
wartosc2=[5:16]
etykieta2=['xxx' 'ccc' 'vvv' 'bbb' 'hhh' 'yyy' 'uuu' 'iii' 'ooo' 'ppp' 'lll' 'kkk']
etykieta22=[etykieta2'+' '+string(wartosc2)']

scf(1); clf(1)
plot2d(wartosc1)
u1=get('current_entity');
u1.children(1).mark_style=5
u1.children(1).line_mode="off"
u1.children(1).mark_background=5
u1.children(1).mark_foreground=1
u1.children(1).mark_size=1
xstring(1:length(wartosc1),wartosc1,etykieta11)

plot2d(wartosc2)
u2=get('current_entity');
u2.children(1).mark_style=7
u2.children(1).line_mode="off"
u2.children(1).mark_background=7
u2.children(1).mark_foreground=1
u2.children(1).mark_size=2
xstring(1:length(wartosc2),wartosc2,etykieta22)
a=get('current_axes')
a.data_bounds=[0,0;14,18];
a.x_ticks = tlist(["ticks" "locations", "labels"],[1:size(data,'c')], data)

legend('wartosc1','wartosc2','out_upper_right',%f)
set(gca(),"grid",[1 1])
Opcja2:

Kod: Zaznacz cały

clear
xdel(winsid())

t=datenum(2014,2,1):1:datenum(2014,2,14)
[y,m,d]=datevec(t)
data=[string(y)+'-'+string(m)+'-'+string(d)]
wartosc1=[1:12]
etykieta1=['a' 'b' 'c' 'd' 'e' 'f' 'g' 'h' 'i' 'j' 'k' 'l']
etykieta11=[etykieta1'+' '+string(wartosc1)']
wartosc2=[5:16]
etykieta2=['xxx' 'ccc' 'vvv' 'bbb' 'hhh' 'yyy' 'uuu' 'iii' 'ooo' 'ppp' 'lll' 'kkk']
etykieta22=[etykieta2'+' '+string(wartosc2)']

scf(1); clf(1)
plot2d(wartosc1)
u1=get('current_entity');
u1.children(1).mark_style=5
u1.children(1).line_mode="off"
u1.children(1).mark_background=5
u1.children(1).mark_foreground=1
u1.children(1).mark_size=1
xstring(1:length(wartosc1),wartosc1,etykieta11)

plot2d(wartosc2)
u2=get('current_entity');
u2.children(1).mark_style=7
u2.children(1).line_mode="off"
u2.children(1).mark_background=7
u2.children(1).mark_foreground=1
u2.children(1).mark_size=2
xstring(1:length(wartosc2),wartosc2,etykieta22)
a=get('current_axes')
a.data_bounds=[0,0;14,18];
a.x_ticks = tlist(["ticks" "locations", "labels"],[1:size(data,'c')], data)

legend('wartosc1','wartosc2','out_upper_right',%f)
set(gca(),"grid",[1 1])


korekta_x=-0.5
korekta_y=-2.7
X=a.x_ticks.locations;
str=a.x_ticks.labels;
xstring(X+korekta_x, korekta_y, str, -45);
e=a.children(1); 
n_ticks=length(e.children); 
for i=1:n_ticks 
     e.children(i).clip_state="off"; 
end
a.x_ticks.labels=[''];
Opcja1: Zastępuje cyfry działek na pożądany tekst, który jest przypisany do działek. Problem w tym, że tekst nakłada się jeden na drugim. Nie znalazłem możliwości ich obrócenia. Ewentualnie jeżeli nie ma zbyt dużej ilości danych to można powiększyć okno na pełny ekran, zrobić zrzut SVG i w programie do grafiki wektorowej obrócić sobie tekst jeden za drugim.

Opcja2: Wartości działek zostają usunięte z widoku, a tekst dla działek zostaje zastąpiony polem tekstowym, lecz jest niezależny od działek i przy próbie przybliżenia jakiegoś punktu pole tekstowe wyjdzie poza pole widzenia. W zależności od tego czy chce się wykres oglądać na pełnym ekranie czy w mniejszym oknie, trzeba sobie dopasować współrzędne pól tekstowych do działek, żeby pola tekstowe odnosiły się do odpowiednich działek.
Załączniki
Opcja2
Opcja2
Opcja1
Opcja1
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
matmat100
Posty: 3
Rejestracja: sob maja 10, 2014 1:08 pm

Re: Etykiety danych na jednej osi XY z wieloma wykresami

Post autor: matmat100 »

Wielkie podziękowanie, ale z tym jest za dużo kombinacji. Nawet nie bardzo wiem, gdzie to wprowadzić.
Jest jeszcze inne rozwiązanie:
Stworzenie osobnej osi XiY i włączenie przeźroczystości. Jedyny problem to zabawa w nałożenie wykresów i jeszcze nie wiem jak to zostanie wydrukowane.
Ale to jest najbardziej sensowne rozwiązanie.
Dziękuję i pozdrawiam.
Libre Office Calc 4.1.3.2, Ubuntu 13.10
Open Office 4.1.0, Windows 7
Jan_J
Posty: 4579
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Etykiety danych na jednej osi XY z wieloma wykresami

Post autor: Jan_J »

Jakbyś ogarnął dokładne (nie na oko) zarządzanie metryką wykresów w Calcu i ich nakładaniem, byłaby to cenna wiedza. Ale obawiam się, że nie będzie ona łatwa do zdobycia, mówiąc oględnie.
Przy zaawansowanej prezentacji danych bywa, że warto doradzić użycie innego narzędzia niż nasze "firmowe".
JJ
LO (24.2|7.6) ∙ Python (3.12|3.11|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
cemik1
Posty: 18
Rejestracja: czw lip 31, 2014 11:08 am

Re: Etykiety danych na jednej osi XY z wieloma wykresami

Post autor: cemik1 »

Czy w ostatnich miesiącach zmienił się stan wiedzy na temat etykietowania wykresów? Mam podobny problem. Chciałbym otrzymać wykres jak poniżej:
ex.jpg
a w Calc mogę uzyskać tylko:
calc.jpg
To są tylko przykłady. W ostatecznym kształcie (gdy będzie możliwość niezależnego nadawania dowolnych etykiet do każdej z wielu serii danych) wykresy mogą wyglądać mniej więcej tak:
bufor.jpg
Gdyby ktoś podpowiedział, jak uzyskać takie formatowanie etykiet, byłbym wdzięczny za pomoc.
LibreOffice 7.2.5.2 (x64)
Windows 10 lub Ubuntu
Raknor
Posty: 509
Rejestracja: pt lut 19, 2010 3:32 pm
Lokalizacja: Warszawa
Kontakt:

Re: Etykiety danych na jednej osi XY z wieloma wykresami

Post autor: Raknor »

Format → Zakresy danych...
Wypełnij pole etykiety danych.

Wstaw → Etykiety danych...
Odznacz Pokaż wartość jako liczbę
Zaznacz Pokaż kategorię
Załączniki
wykres3.png
wykres2.png
wykres.png
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
cemik1
Posty: 18
Rejestracja: czw lip 31, 2014 11:08 am

Re: Etykiety danych na jednej osi XY z wieloma wykresami

Post autor: cemik1 »

No to pierwszy etap (dodawanie etykiet) mam już za sobą. Dziękuję. Pozostał jednak problem wymieniony w pierwszym poście. Jak dodać różne etykiety do serii danych. W calc mam taki wykres:
calc1.jpg
A chciałbym otrzymać poniższy:
ex1.jpg
LibreOffice 7.2.5.2 (x64)
Windows 10 lub Ubuntu
ODPOWIEDZ