Portál AbcLinuxu, 28. května 2024 13:23

Dotaz: LaTeX CSV tabulky

12.3.2016 23:34 steel rock | skóre: 18
LaTeX CSV tabulky
Přečteno: 2356×
Odpovědět | Admin

Mám naměřená data, která jsou uložena do CSV souborů ve sloupci, chtěl bych tento sloupec v LaTeXové tabulce zobrazit jako řádek, existuje způsob jak to udělat? (poprosil bych stručnou odpověď na 3 řádky a ne odkaz na 300 stránkovou knihu, protože to potřebuju rychle)

...a zkusili jste to vypnout a zapnout?

Řešení dotazu:


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

wamba avatar 13.3.2016 00:33 wamba | skóre: 38 | blog: wamba
Rozbalit Rozbalit vše Re: LaTeX CSV tabulky
Odpovědět | | Sbalit | Link | Blokovat | Admin
jde napsat skript. Záleží jak ty soubory vypadají, možná bude stačit něco jako.
perl -00 -pE 's/,\s*\n/\&/g;$_="$_ \\\\\\\\ \n"' /tmp/pom /tmp/pom2
This would have been so hard to fix when you don't know that there is in fact an easy fix.
13.3.2016 09:18 steel rock | skóre: 18
Rozbalit Rozbalit vše Re: LaTeX CSV tabulky
Bohužel podle návodů na vytvoření tabulky z csv, které jsem našel, je vždy potřeba napsat do parametrů, jaké jsou tam sloupce (a vypisovat každý je taková práce, jako tu tabulku rovnou přepsat do LaTeXu), ale jestli nebude jiná možnost, tak to nejspíš tak udělám.
...a zkusili jste to vypnout a zapnout?
wamba avatar 13.3.2016 11:44 wamba | skóre: 38 | blog: wamba
Rozbalit Rozbalit vše Re: LaTeX CSV tabulky
Těžko ti pomůžeme, když nám neřekneš, jak ty soubory vypadají (vlož testovací soubory) a jak si představuješ výstup.

Např. ten můj Perl one-liner funguje na zadání:

Mám soubory pom
1,
2,
a pom2 (obecně více souborů s více řádky)
4,
5,
a potřebuji dostat
1&2& \\ 
4&5& \\ 
.

Pokud jsou ty csv soubory alespoň trochu rozumné, tak by měl jít ten skript napsat jednoduše.

This would have been so hard to fix when you don't know that there is in fact an easy fix.
13.3.2016 10:43 source
Rozbalit Rozbalit vše Re: LaTeX CSV tabulky
Odpovědět | | Sbalit | Link | Blokovat | Admin
Použij jiný editor (např. LiberOffice), kde tabulku transponuj (možná je na to i příkaz?) a znovu ulož.
16.3.2016 00:50 kk
Rozbalit Rozbalit vše Re: LaTeX CSV tabulky
Odpovědět | | Sbalit | Link | Blokovat | Admin
CSV jsou soubory ve kterých jsou jednotlivé položky odděleny čárkami. Navíc, pravděpodobne, budeš chtít odstranit hlavičku. Tudíž na vypis N-tého sloupce (dosaď si za N v kódu!) by mělo stačit
awk -F ',' '{if(FNR>1) printf "%s ",$N;}' < soubor.csv 
16.3.2016 10:15 mlz
Rozbalit Rozbalit vše Re: LaTeX CSV tabulky
Hezký den,

v CSV mohou strašit uvozovky, Data mohou obsahovat \n (nový řádek). Pro perl existuje modul Text-CSV (gentoo), který tyto složitosti umí řešit. V případě jednoduchých dat, awk je nejjednodušší

PM
Josef Kufner avatar 20.3.2016 14:43 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: LaTeX CSV tabulky
Odpovědět | | Sbalit | Link | Blokovat | Admin
Na podobné úkony je nejlepší vzít rozumný programovací (skriptovací) jazyk a napsat so konvertor. Knihovny na parsování CSV jsou, výstup je triviální. Pokud již ovládáš vhodný jazyk, je to na pět minut. Můžeš pak přidat i výpočty a složitější transformace, nebo i generování grafů. Na mých protokolech z měření na střední se podílelo více jak tucet programů, a ač to zní šíleně, bylo to docela efektivní (z pohledu mého času).
Hello world ! Segmentation fault (core dumped)
Řešení 1× (steel rock (tazatel))
20.3.2016 18:26 steel rock | skóre: 18
Rozbalit Rozbalit vše Re: LaTeX CSV tabulky
Odpovědět | | Sbalit | Link | Blokovat | Admin

Omlouvám se, že jsem už neodepisoval, ale bohužel jsem fakt neměl čas. Nakonec jsem problém musel vyřešit trochu prasácky, ale pro mé potřeby to stačilo.

Přidávám vzorový zdroják (možná někomu pro pobavení :-)):

\documentclass[]{article}
\usepackage{csvsimple}
\usepackage{rotating}

\begin{document}
	\rotatebox{270}{
		\csvreader[tabular=|c|c|,
		table head=\hline,
		late after line=\\\hline]
		{zdrojovy_soubor.csv}{1=\prvni, 2=\druhy}
		{\rotatebox{90}{ \prvni\ } & \rotatebox{90}{ \druhy\ }}
	}
\end{document}

...a zkusili jste to vypnout a zapnout?

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.