Matplotlib plots are blurry

Hi,

I have the problem that I have blurry graphs when I use matplotlib plots with different format than standard.

df.plot(figsize=(25, 5), antialiased=True)
st.pyplot(dpi=100)

results in 51

I also asked this on SO: https://stackoverflow.com/questions/59104921/matplotlib-plot-has-bad-resolution-in-streamlit

Does somebody have an idea how to solve this problem?

Hey @mjspier - thanks for checking out Streamlit!

The figsize param values are in inches, so in this case you’re generating an image that’s intended to be 25 inches wide. Streamlit is then shrinking that image down to Streamlit’s maximum displayable width, which is about 1500 pixels, hence the blurriness.

An easy fix is to pass a small figsize. (Each inch in figsize is ~1000 pixels, so a figsize of (15, 3) will look less blurry.)

I’ve also opened a bug about this, so that we at least do something less unexpected than showing an ugly image when figsize is very large.