Graphical tools
From Robin
(Difference between revisions)
(→Tips on Exporting Figures) |
(→Tips on Exporting Figures) |
||
Line 58: | Line 58: | ||
*** optionally use pdfcrop (usually installed with LaTeX) to cut unecessary white space | *** optionally use pdfcrop (usually installed with LaTeX) to cut unecessary white space | ||
*** in case only eps export is supported, use epstopdf (usually installed with LaTeX) | *** in case only eps export is supported, use epstopdf (usually installed with LaTeX) | ||
- | ** For direct inclusion in LaTeX use the scripts linked above to create PGF/Ti''k''Z files. It is possible to either input the code directly through <code>\input{}</code> or to compile the figure first | + | ** For direct inclusion in LaTeX use the scripts linked above to create PGF/Ti''k''Z files. It is possible to either input the code directly through <code>\input{}</code> or to compile the figure first [https://blog.modelworks.ch/producing-stand-alone-figures-with-tikz-in-latex/ through] the ''standalone'' class |
Add more info here | Add more info here |
Revision as of 07:27, 2 July 2021
Contents |
Figures/Illustrations
- Vector Graphics Editors
- Inkscape (free and open-source)
- Adobe Illustrator (for students only through UiO programkiosk)
- Directly in LaTeX (PGF/TikZ: https://github.com/pgf-tikz/pgf; some examples)
- LibreOffice Draw (free and open-source)
- Through presentation software such as Powerpoint, Keynote, …
- Web-based options: Google draw (in Google disk), Draw.io, Figma, Lucid charts, …
- Raster Graphics Editors
- Gimp (free and open-source)
- Adobe Photoshop (for students only through UiO programkiosk)
- Photopea (online editor)
- 3D Computer Graphics Editors
- Blender (free and open-source)
- Autodesk Maya
- see also here
Plotting in
- Python
- Matplotlib
- see Mouret's tutorial for publication quality plots
- check the cheat sheets 1 & 2
- Seaborn (statistical data visualization; uses Matplotlib internally. See for example this tutorial)
- Export to LaTeX (PGF/TikZ; https://github.com/nschloe/tikzplotlib)
- Matplotlib
- R
- ggplot2 (with Rstudio)
- Export to LaTeX (PGF/TikZ; https://github.com/daqana/tikzDevice)
- Matlab (available at UiO)
- Export to LaTeX (PGF/TikZ; https://github.com/matlab2tikz/matlab2tikz)
- Octave (free alternative to matlab)
- Export to LaTeX (PGF/TikZ; https://github.com/matlab2tikz/matlab2tikz)
- Gnuplot (free)
- Desmos.com (web based)
- javaFX
- excel (UiO)
Digitalize Figures
To qualitatively compare one's own data with other published data, it is sometimes needed to obtain the concrete data of the respective publication. In that case there are multiple ways to do that:
- Python: https://github.com/dilawar/PlotDigitizer
- Matlab: https://blogs.mathworks.com/steve/2013/12/31/automating-data-extraction-1/
- External App: WebPlotDigitizer
Tips on Exporting Figures
- Before saving the graphics in the respective programs
- Check your colour maps! (see https://www.nature.com/articles/s41467-020-19160-7 or https://matplotlib.org/stable/tutorials/colors/colormaps.html)
- Check font size, font type, line widths, marker sizes, proportions and aspect ratios:
- 400px|left 250px|none Example plots
- Preferably use vector graphics such as svg, pdf or eps (can be edited with vector graphics editors)
- Avoid bitmap graphics if possible and especially jpg!
- Sometimes it is neccessary to use png format (e.g. in case of render graphics or plots with an essential transparency effect)
- In that case, one should pick a proper resolution for the export file while accounting for its file size
- Possible ways to compress the png file is to use for example pngquant, AdvanceCOMP or ImageMagick
- Exporting to LaTeX
- Recommended approach:
- export as pdf
- optionally use pdfcrop (usually installed with LaTeX) to cut unecessary white space
- in case only eps export is supported, use epstopdf (usually installed with LaTeX)
- For direct inclusion in LaTeX use the scripts linked above to create PGF/TikZ files. It is possible to either input the code directly through
\input{}
or to compile the figure first through the standalone class
- Recommended approach:
Add more info here