在精简的应用程序中,当尝试绘制格式与标准格式不同的图形时,我得到了非常差的分辨率。
示例:
import pandas as pd
import numpy as np
import streamlit as st
index = pd.date_range(start='2019-01-01', periods=31)
data = np.random.randint(0,100,size=(len(index)))
df = pd.DataFrame(index=index, data=data)
df.plot(figsize=(25, 5), antialiased=True)
st.pyplot(dpi=100)
这样的绘图结果:
在具有相同无花果大小的jupyter笔记本中的相同绘图不存在此问题。 为什么会发生这种情况,我该如何解决此问题?
答案 0 :(得分:1)
我要复制并粘贴您收到的以下问题的response from the Streamlit Forum:
“嘿@mjspier-感谢您检查Streamlit!
figsize参数值以英寸为单位,因此,在这种情况下,您生成的图像原应为25英寸宽。然后,Streamlit将图像缩小到Streamlit的最大可显示宽度,该宽度约为1500像素,因此很模糊。
一个简单的解决方法是传递一个小的figsize。 (figsize的每英寸约为1000像素,因此(15,3)的figsize看起来会减少模糊。)
我还打开了一个有关此问题的错误,因此,与我们在figsize很大时显示丑陋的图像相比,我们所做的至少至少是意想不到的事情。”
希望这会有所帮助!