Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/154.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用matplotlib导出大图形_Python_Numpy_Matplotlib_Scipy_Dendrogram - Fatal编程技术网

Python 使用matplotlib导出大图形

Python 使用matplotlib导出大图形,python,numpy,matplotlib,scipy,dendrogram,Python,Numpy,Matplotlib,Scipy,Dendrogram,我正在尝试输出一个使用scipy制作的图像。当我导出图像时,文本完全无法读取,因为我有3000多个叶节点。你知道怎么处理这件事吗 我现在的代码示例 from scipy.cluster.hierarchy import ward, dendrogram import matplotlib.pyplot as plt lmat = ward(dist) ax = dendrogram(lmat, orientation="right", labels=names) plt.tight_layou

我正在尝试输出一个使用scipy制作的图像。当我导出图像时,文本完全无法读取,因为我有3000多个叶节点。你知道怎么处理这件事吗

我现在的代码示例

from scipy.cluster.hierarchy import ward, dendrogram
import matplotlib.pyplot as plt
lmat = ward(dist)

ax = dendrogram(lmat, orientation="right", labels=names)
plt.tight_layout()
plt.savefig('dendrogram.png')
如果我手动设置一个非常大的图像大小

fig, ax = plt.subplots(figsize=(10, 200))
我会犯这样的错误

X Error of failed request:  BadAlloc (insufficient resources for operation)
Major opcode of failed request:  53 (X_CreatePixmap)
Serial number of failed request:  298
Current serial number in output stream:  300

我想一个解决方案是使用GUI手动放大它的各个部分并保存/加入这些图像,但我真的不希望这样做

你试过矢量图形格式吗?不过,我不确定这是否有效。你可能需要重新考虑一下,巨大树状图是否真的是表示数据的最佳方式。我看不出试图表示所有3000多个叶节点有多大意义——即使你能生成这个数字,任何人都很难解释,更不用说让它在屏幕上或印刷品上看起来好看了。至少截断它可能更有意义(请参阅
truncate_mode
参数)。@cel向量输出似乎确实解决了内存问题,但不是我的可视化issue@ali_m我知道这可能不是最实用的输出,但我计划使用一些javascript,等显示一个连续滚动的叶子,人们说可以创建这样的情节,但如何呢?我们完全同意这不可能是最好的选择,但如果可能,怎么办?