Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Q&A

Welcome to Software Development on Codidact!

Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.

Post History

66%
+2 −0
Q&A How to plot table from pandas dataframe

MWE import pandas as pd import numpy as np import matplotlib.pyplot as plt df = pd.DataFrame(np.random.rand(9, 4), columns=['a', 'b', 'c', 'd']) df.plot.bar(table=True) # don't want plot, ...

1 answer  ·  posted 2y ago by mcp‭  ·  last activity 2y ago by __blackjack__‭

#5: Nominated for promotion by user avatar Alexei‭ · 2022-08-07T05:35:06Z (about 2 years ago)
#4: Post edited by user avatar mcp‭ · 2022-07-22T19:30:15Z (over 2 years ago)
Add notes header
  • # MWE
  • ```py
  • import pandas as pd
  • import numpy as np
  • import matplotlib.pyplot as plt
  • df = pd.DataFrame(np.random.rand(9, 4), columns=['a', 'b', 'c', 'd'])
  • df.plot.bar(table=True) # don't want plot, just want table
  • # df.plot.table() # what I would hope
  • plt.show()
  • ```
  • ![Busy Bar with Table](https://software.codidact.com/uploads/QnnMdP6oCqMrPzGcrYmm6Kac)
  • # Question
  • How do I generate a table in its own figure from a pandas dataframe?
  • Notice the table appended to the graph above is hardly legible and gets
  • cut off. I am not looking to fix legibility as is though, I need a
  • separate figure for use in a paper.
  • I do not want to have to mess with generating matplotlib axes objects
  • like for
  • [pandas.plotting.table()](https://pandas.pydata.org/docs/reference/api/pandas.plotting.table.html)
  • or in [this example](https://www.statology.org/matplotlib-table/).
  • I want to be able to create the table just using and providing the df,
  • as opposed to manually formatting the data into a latex table.
  • # MWE
  • ```py
  • import pandas as pd
  • import numpy as np
  • import matplotlib.pyplot as plt
  • df = pd.DataFrame(np.random.rand(9, 4), columns=['a', 'b', 'c', 'd'])
  • df.plot.bar(table=True) # don't want plot, just want table
  • # df.plot.table() # what I would hope
  • plt.show()
  • ```
  • ![Busy Bar with Table](https://software.codidact.com/uploads/QnnMdP6oCqMrPzGcrYmm6Kac)
  • # Question
  • How do I generate a table in its own figure from a pandas dataframe?
  • # Notes
  • Notice the table appended to the graph above is hardly legible and gets
  • cut off. I am not looking to fix legibility as is though, I need a
  • separate figure for use in a paper.
  • I do not want to have to mess with generating matplotlib axes objects
  • like for
  • [pandas.plotting.table()](https://pandas.pydata.org/docs/reference/api/pandas.plotting.table.html)
  • or in [this example](https://www.statology.org/matplotlib-table/).
  • I want to be able to create the table just using and providing the df,
  • as opposed to manually formatting the data into a latex table.
#3: Post edited by user avatar mcp‭ · 2022-07-22T19:18:28Z (over 2 years ago)
Add note about legibility
  • # MWE
  • ```py
  • import pandas as pd
  • import numpy as np
  • import matplotlib.pyplot as plt
  • df = pd.DataFrame(np.random.rand(9, 4), columns=['a', 'b', 'c', 'd'])
  • df.plot.bar(table=True) # don't want plot, just want table
  • # df.plot.table() # what I would hope
  • plt.show()
  • ```
  • ![Busy Bar with Table](https://software.codidact.com/uploads/QnnMdP6oCqMrPzGcrYmm6Kac)
  • # Question
  • How do I generate a table in its own figure from a pandas dataframe?
  • I do not want to have to mess with generating matplotlib axes objects
  • like for
  • [pandas.plotting.table()](https://pandas.pydata.org/docs/reference/api/pandas.plotting.table.html).
  • I want to be able to create the table just using and providing the df,
  • as opposed to manually formatting the data into a latex table.[]()
  • # MWE
  • ```py
  • import pandas as pd
  • import numpy as np
  • import matplotlib.pyplot as plt
  • df = pd.DataFrame(np.random.rand(9, 4), columns=['a', 'b', 'c', 'd'])
  • df.plot.bar(table=True) # don't want plot, just want table
  • # df.plot.table() # what I would hope
  • plt.show()
  • ```
  • ![Busy Bar with Table](https://software.codidact.com/uploads/QnnMdP6oCqMrPzGcrYmm6Kac)
  • # Question
  • How do I generate a table in its own figure from a pandas dataframe?
  • Notice the table appended to the graph above is hardly legible and gets
  • cut off. I am not looking to fix legibility as is though, I need a
  • separate figure for use in a paper.
  • I do not want to have to mess with generating matplotlib axes objects
  • like for
  • [pandas.plotting.table()](https://pandas.pydata.org/docs/reference/api/pandas.plotting.table.html)
  • or in [this example](https://www.statology.org/matplotlib-table/).
  • I want to be able to create the table just using and providing the df,
  • as opposed to manually formatting the data into a latex table.
#2: Post edited by user avatar mcp‭ · 2022-07-22T19:14:36Z (over 2 years ago)
Add output image
  • # MWE
  • ```py
  • import pandas as pd
  • import numpy as np
  • import matplotlib.pyplot as plt
  • df = pd.DataFrame(np.random.rand(9, 4), columns=['a', 'b', 'c', 'd'])
  • df.plot.bar(table=True) # don't want plot, just want table
  • # df.plot.table() # what I would hope
  • plt.show()
  • ```
  • # Question
  • How do I generate a table in its own figure from a pandas dataframe?
  • I do not want to have to mess with generating matplotlib axes objects
  • like for
  • [pandas.plotting.table()](https://pandas.pydata.org/docs/reference/api/pandas.plotting.table.html).
  • I want to be able to create the table just using and providing the df,
  • as opposed to manually formatting the data into a latex table.[]()
  • # MWE
  • ```py
  • import pandas as pd
  • import numpy as np
  • import matplotlib.pyplot as plt
  • df = pd.DataFrame(np.random.rand(9, 4), columns=['a', 'b', 'c', 'd'])
  • df.plot.bar(table=True) # don't want plot, just want table
  • # df.plot.table() # what I would hope
  • plt.show()
  • ```
  • ![Busy Bar with Table](https://software.codidact.com/uploads/QnnMdP6oCqMrPzGcrYmm6Kac)
  • # Question
  • How do I generate a table in its own figure from a pandas dataframe?
  • I do not want to have to mess with generating matplotlib axes objects
  • like for
  • [pandas.plotting.table()](https://pandas.pydata.org/docs/reference/api/pandas.plotting.table.html).
  • I want to be able to create the table just using and providing the df,
  • as opposed to manually formatting the data into a latex table.[]()
#1: Initial revision by user avatar mcp‭ · 2022-07-22T19:12:18Z (over 2 years ago)
How to plot table from pandas dataframe
# MWE
```py
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt


df = pd.DataFrame(np.random.rand(9, 4), columns=['a', 'b', 'c', 'd'])
df.plot.bar(table=True) # don't want plot, just want table
# df.plot.table() # what I would hope
plt.show()
```

# Question
How do I generate a table in its own figure from a pandas dataframe? 

I do not want to have to mess with generating matplotlib axes objects
like for
[pandas.plotting.table()](https://pandas.pydata.org/docs/reference/api/pandas.plotting.table.html).

I want to be able to create the table just using and providing the df,
as opposed to manually formatting the data into a latex table.[]()