Graphical tools

From Robin

(Difference between revisions)
Jump to: navigation, search
(How to Export Figures for Latex)
(Tips on Exporting Figures)
(67 intermediate revisions not shown)
Line 1: Line 1:
-
=== Figures / Illustrations ===
+
=== Figures/Illustrations ===
 +
* Vector Graphics Editors
 +
** Inkscape (free and open-source)
 +
** Adobe Illustrator (for students only through [http://www.uio.no/tjenester/it/maskin/programvare/programkiosk/ UiO programkiosk])
 +
** Directly in LaTeX (PGF/Ti''k''Z: https://github.com/pgf-tikz/pgf; some [https://texample.net/tikz/examples/ 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, …
-
* Adobe Illustrator/Photoshop - for students only through [http://www.uio.no/tjenester/it/maskin/programvare/programkiosk/ UiO programkiosk]?
+
* Raster Graphics Editors
-
* Inkscape
+
** Gimp (free and open-source)
-
* Gimp
+
** Adobe Photoshop (for students only through [http://www.uio.no/tjenester/it/maskin/programvare/programkiosk/ UiO programkiosk])
-
* Directly in Latex (Ti''k''Z/PGF: https://github.com/pgf-tikz/pgf)
+
** Photopea (online editor)
-
* Lucid charts
+
-
* Powerpoint, Keynote, …
+
-
* Google draw, in Google disk
+
-
* Photopea (online editor)
+
-
* Figma?
+
-
* Draw.io
+
-
* Linux-program for grafer, finn ut navn
+
-
=== Plotting, Graphs ===
+
*3D Computer Graphics Editors
 +
** Blender (free and open-source)
 +
** Autodesk Maya
 +
** see also [https://robin.wiki.ifi.uio.no/3D-software here]
 +
 
 +
=== Plotting Apps ===
* Python
* Python
-
** Matplotlib (see [https://github.com/jbmouret/matplotlib_for_papers Mouret's tutorial for publication quality plots ])
+
** Matplotlib
-
** Seaborn - easy to create good looking plots ([https://elitedatascience.com/python-seaborn-tutorial tutorial here])
+
*** see [https://github.com/jbmouret/matplotlib_for_papers Mouret's tutorial] for publication quality plots
-
** Export to Latex (Ti''k''Z/PGF; https://github.com/nschloe/tikzplotlib)
+
*** check the [https://github.com/matplotlib/cheatsheets cheat sheets]
 +
** Seaborn (statistical data visualization; uses Matplotlib internally. See for example this [https://elitedatascience.com/python-seaborn-tutorial tutorial])
* R
* R
** ggplot2 (with Rstudio)
** ggplot2 (with Rstudio)
-
** Export to Latex (TikZ/PGF; https://github.com/daqana/tikzDevice)
+
* Matlab (available at UiO)
-
* Matlab (available at uio)
+
-
** Export to Latex (Ti''k''Z/PGF; https://github.com/matlab2tikz/matlab2tikz)
+
* Octave (free alternative to matlab)
* Octave (free alternative to matlab)
-
** Export to Latex (TikZ/PGF; https://github.com/matlab2tikz/matlab2tikz)
+
* Gnuplot
-
* Gnuplot (free)
+
* Desmos.com (web based)
* Desmos.com (web based)
* javaFX
* javaFX
-
* excel (uio)
+
* excel (UiO)
=== Digitalize Figures ===
=== 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
* Python: https://github.com/dilawar/PlotDigitizer
* Matlab: https://blogs.mathworks.com/steve/2013/12/31/automating-data-extraction-1/
* Matlab: https://blogs.mathworks.com/steve/2013/12/31/automating-data-extraction-1/
* External App: [https://automeris.io/WebPlotDigitizer/ WebPlotDigitizer]
* External App: [https://automeris.io/WebPlotDigitizer/ WebPlotDigitizer]
-
=== How to Export Figures for Latex ===
+
=== Tips on Exporting Figures ===
-
* recommended approach: save as pdf, use pdfcrop, includegraphics in latex
+
* Before saving the graphics in the respective programs
-
** avoid bitmap graphics if possible and especially jpg!
+
** Avoid bitmap graphics if possible and especially jpg!
-
* epstopdf - usually installed with latex
+
** Preferably use vector graphics such as svg, pdf or eps (can be edited with vector graphics editors)
-
* pdfcrop - usually installed with latex
+
** 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 and type
+
** Check font size, font type, line width, marker size, proportion, aspect ratio and resolution! Tuning those parameters makes a significant impact on how your figures are perceived!
-
* for direct inclusion to Latex use the scripts linked above to create TikZ/PGF files
+
** Example plots with mostly default (left) and adapted (right) plotting parameters.
-
 
+
** [[Fil:TestT .png|400px|middle]][[Fil:Test.png|250px|middle]]
-
add more info here
+
** Make sure that your figures are still readable when printing them in grayscale
 +
* 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 [https://pngquant.org/ pngquant], [http://www.advancemame.it/comp-readme AdvanceCOMP] or [https://www.smashingmagazine.com/2015/06/efficient-image-resizing-with-imagemagick/ 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 following scripts to create PGF/Ti''k''Z files:
 +
*** Python: https://github.com/nschloe/tikzplotlib
 +
*** R: https://github.com/daqana/tikzDevice
 +
*** Matlab/Octave: https://github.com/matlab2tikz/matlab2tikz
 +
*** 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
 +
* To see how plotting parameters can be tuned given concrete examples, see [https://github.com/juuf/IN5490/blob/5a4a6bb0098402166ceb623bcfd5c3402c5b4f72/IN5490.ipynb here]. Based on an example data set, first distributional plots are shown. Then the default plotting parameters are tuned.

Revision as of 13:14, 3 November 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 Apps

  • Python
    • Matplotlib
    • Seaborn (statistical data visualization; uses Matplotlib internally. See for example this tutorial)
  • R
    • ggplot2 (with Rstudio)
  • Matlab (available at UiO)
  • Octave (free alternative to matlab)
  • Gnuplot
  • 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:

Tips on Exporting Figures

  • Before saving the graphics in the respective programs
  • 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
  • To see how plotting parameters can be tuned given concrete examples, see here. Based on an example data set, first distributional plots are shown. Then the default plotting parameters are tuned.
Personal tools
Front page