Giter VIP home page Giter VIP logo

latexipy's Introduction

LaTeXiPy

PyPI version Test status Documentation Status Updates MIT License

Generate beautiful plots for LaTeX using your existing Matplotlib-based code.

You can also use this package to generate plots without using LaTeX. Just don't run lp.latexify().

Usage

To plot in Python:

import latexipy as lp

lp.latexify()  # Change to a serif font that fits with most LaTeX.

with lp.figure('filename'):  # saves in img/ by default.
    draw_the_plot()

https://github.com/masasin/latexipy/raw/master/examples/img/sincos_defaults.png

To display in LaTeX:

\usepackage{pgf}
\input{filename.pgf}

See the examples directory for some example code, their resulting images, as well as an example LaTeX file and its output PDF.

Features

  • Automatically generate multiple plot types, such as PDF, PNG, and PGF for LaTeX.
  • Works with all Matplotlib-based packages, including Seaborn and Pandas.
  • Allows for easily changing the style temporarily.

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

latexipy's People

Contributors

dependabot[bot] avatar masasin avatar pyup-bot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

latexipy's Issues

Use in Google Colab - RuntimeError: No suitable pdf to png renderer found.

  • LaTeXiPy version:1.0.1
  • Python version: 3.7.10
  • Operating System: Linux (Google Colab)

Description

Trying to use the base function of creating layout that matches Latex

What I Did

import latexipy as lp
lp.latexify()

figure = shap.plots.bar(shap_values=shap_values,max_display=20,show=False) (figure element from the Shap package)
figure.

**Error**: 

RuntimeError: No suitable pdf to png renderer found.

Feature proposition

Dear Jean Nassar,

Your package does the job well enough, but I'd much rather prefer a more "Pythonic" and a more "Coding Standardized" method of implementation of it. After looking over your code I could tell that
lp.latexify()
only changes pyplot's internal settings (like font size, style, etc.), which is to say that you modify global settings of the pyplot, which is not advisable for a user.

Would it not be better for your package to produce extra plots by necessity? For instance:
#my plot; plt.plot(x,y); plt.save("default_pyplot.png"); lp.make_latex_plot( plt.gcf() #(get current pyplot figure), "latex_friendly_plot.pgf" #(name of the output));
This way it would be more intuitive for a user and would not mess up global pyplot configs whilst keeping everything "pythonic"

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.