pycharm 用matplotlib画图无法显示在的sciview原因

1. 背景知识

PyCharm 的专业版绘图可以显示在右侧Sciview中逐个看,也可以单独弹出一系列窗口查看和调试。而Community版本的pycharm没有scientific mode,因此不能在sciview查看。

在file-setting--tool--python scientific 中勾选是否显示画图在 sciview  window。

需要注意的是:

(1) 有时候设置改变之后会出现绘图显示不出来的问题,重新启动pycharm就好了。

(2) 在 SciView中显示,需要在绘图语句后加上“ plt.show() ”。

2. back-end 图形显示终端的选择

matplotlib有多个backend,需要选择合适的

from matplotlib.pylab import mpl
mpl.use('TkAgg') # 适用于非SciView画图,需要关掉

from matplotlib.pylab import mpl
mpl.use('Qt5Agg')

import matplotlib
matplotlib.use('module://backend_interagg')

找到合适的back-end代码:

参考:python - How to change matplotlib backends - Stack Overflow

import matplotlib
gui_env = [i for i in matplotlib.rcsetup.interactive_bk]
non_gui_backends = matplotlib.rcsetup.non_interactive_bk
print ("Non Gui backends are:", non_gui_backends)
print ("Gui backends I will test for", gui_env)
for gui in gui_env:
    print ("testing", gui)
    try:
        matplotlib.use(gui, force=True)
        from matplotlib import pyplot as plt
        print ("    ",gui, "Is Available")
        plt.plot([1.5,2.0,2.5])
        fig = plt.gcf()
        fig.suptitle(gui)
        plt.show()
        print ("Using ..... ",matplotlib.get_backend())
    except:
        print ("    ",gui, "Not found")

3. 问题与解决办法 

在所有设置好情况下,不能在sciview画出图。

解决办法:降低matplotlib版本

参考:PyCharm中解决Matplotlib绘图时AttributeError: module ‘backend_interagg‘ has no attribute ‘FigureCanvas‘问题_降低matplotlib版本-CSDN博客

解决之后,验证代码如下:

​​​​​​​import matplotlib.pyplot as plt

plt.close('all')
line = [4, 3, 2, 1]
plt.plot(line)
plt.show()

### 回答1: 在PyCharm中使用Matplotlib进行绘图,需要先安装Matplotlib库。安装完成后,在代码中导入Matplotlib库,使用其提供的绘图函数进行绘图。可以使用PyCharm的图形界面或者命令行运行代码,查看绘制的图形。需要注意的是,Matplotlib绘图需要在交互式环境下进行,否则可能无法正常显示图形。 ### 回答2: 在PyCharm中使用Matplotlib绘图,需要先通过pip安装Matplotlib库。安装后,在Python代码中导入Matplotlib库并使用其中的函数即可轻松绘制各种类型的图表。 Matplotlib主要包含如下模块: 1. pyplot:这是Matplotlib的核心模块,提供了绘制多种类型的图表的函数。例如,绘制折线图、柱状图、散点图、区域图、直方图等。在使用时,需要通过import导入pyplot模块,并给定别名,例如import matplotlib.pyplot as plt。然后再调用plt的相关函数进行图像的绘制。 2. figure:这是Matplotlib的绘制窗口模块,包含图像、坐标轴、文本、标签等元素。Matplotlib中图像的所有元素都是插入到figure对象中的。因此,要对图像进行修改或者设置,需要用到figure对象的相关方法。 3. axes:这是Matplotlib中的坐标轴模块。Matplotlib中的所有绘图都发生在Axes对象上。Axes包含坐标轴、文本、标签、图像等元素。在使用时,需要通过plt.subplots()函数创建一个figure和一组axes,然后调用axes对象的方法绘制图像。 Matplotlib的执行流程大致如下: 1. 导入Matplotlib库 2. 创建Figure对象 3. 创建并激活Axes对象 4. 绘制图像 5. 添加标签、标题等元素 6. 显示图像 Matplotlib提供多种绘图类型供用户选择,例如折线图、散点图、柱状图、直方图等。对于数据可视化分析,Matplotlib是一个十分强大的工具。在使用Matplotlib进行数据可视化时,需要注意图像的风格、色彩、字体等细节,这些因素都会对图像展示的效果造成影响。因此,在编写代码时应该注重细节,使得绘制的图像更加美观、易于理解。 ### 回答3: PyCharm是一种功能丰富的Python集成开发环境,也是众多程序员首选的Python IDE之一。而matplotlib是一个Python 2D绘图库,它能够生成各种非常精美的图形和图片。 在PyCharm中使用matplotlib画图,需要先安装matplotlib模块。在PyCharm中打开“Settings”(快捷键为Ctrl+Alt+S),选择Project -> Project Interpreter,在搜索框中输入“matplotlib”,选择最新版本并点击“Install”即可完成安装。 在代码中使用matplotlib进行画图,需要先导入matplotlib库,并在代码中调用对应的函数。例如,要绘制一个线形图,需要使用如下代码: ``` import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] plt.plot(x, y) plt.show() ``` 调用`plt.plot()`函数绘制线形图,x轴和y轴的值分别为x和y。调用`plt.show()`函数展示图像。 除了绘制线形图,matplotlib还支持许多其他类型的图表,如散点图,柱状图,饼图等等。可以在官方文档中查找更多详细的绘图函数。 需要注意的是,绘图过程中可能需要对图像进行一些美化和修改。例如,可以设置图像的标题、x和y轴标签、线条颜色等等。PyCharm也提供了容易使用的接口来修改这些图像属性。 总之,使用PyCharm绘制matplotlib图表非常容易,只需简单的几行代码,就可以生成非常漂亮和有用的图像。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值