大耳朵菜菜 2022-11-23 22:49 采纳率: 66.7%
浏览 486
已结题

Pycharm中Axes3D库调用不显示图片

问题遇到的现象和发生背景

最近在研究一个遗传算法的代码,结果能跑通,但是配套的图片没有出来,原链接有一个3D的二元函数图片。
后来发现,问题应该是出在from mpl_toolkits.mplot3d import Axes3D
可能是这个没有被正确调用,然后测试了一下代码,也没有图片。

用代码块功能插入代码,请勿粘贴截图
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D


x = np.random.uniform(10,40,30)
y = np.random.uniform(100,200,30)
z = np.random.uniform(10,20,30)


fig = plt.figure()
ax3d = Axes3D(fig)
ax3d.scatter(x,y,z,c="b",marker="*")

plt.show()

运行结果及报错内容

没有生成图片,按理来说会生成3D图片

img

我的解答思路和尝试过的方法

我不知道 Axes3D 这个库是包含在matplotlib 这个库里面的还是单独的一个库,matplotlib 和numpy 库都有正确安装,也没有搜索到Axes3D这个库,不知道问题出现在哪里。

我想要达到的结果

刚学python,请问有知道的朋友,这个问题如何解决,感谢!

  • 写回答

1条回答 默认 最新

  • 程序媛一枚~ Python领域新星创作者 2022-11-24 17:24
    关注

    设置
    import matplotlib as mpl
    mpl.use('module://backend_interagg')

    
    import matplotlib.pyplot as plt
    import numpy as np
    from mpl_toolkits.mplot3d import Axes3D
    
    # 保留到磁盘,需要设置 mpl.use('Agg') 同时注释掉plt.show()
    # 设置 mpl.use('module://backend_interagg') plt.show才能显示
    import matplotlib as mpl
    print(mpl.get_backend())
    # mpl.use('Agg') # 保留图片到png pdf等需要设置,并且注释掉plt.show()
    mpl.use('module://backend_interagg') # plt.show()需要设置
    
    x = np.random.uniform(10, 40, 30)
    y = np.random.uniform(100, 200, 30)
    z = np.random.uniform(10, 20, 30)
    
    fig = plt.figure()
    ax3d = Axes3D(fig)
    ax3d.scatter(x, y, z, c="b", marker="*")
    plt.show()
    # plt.savefig('plot_axe3D.png')
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月2日
  • 已采纳回答 11月24日
  • 创建了问题 11月23日

悬赏问题

  • ¥15 Attributeerror:super object has no attribute '__sklearn_tags__'_'
  • ¥15 逆置单链表输出不完整
  • ¥15 宇视vms-B200-A16@R启动不了,如下图所示,在软件工具搜不到,如何解决?(操作系统-linux)
  • ¥500 寻找一名电子工程师完成pcb主板设计(拒绝AI生成式答案)
  • ¥15 关于#mysql#的问题:UNION ALL(相关搜索:sql语句)
  • ¥15 matlab二位可视化能否针对不同数值范围分开分级?
  • ¥15 已经创建了模拟器但是不能用来运行app 怎么办😭自己搞两天了
  • ¥15 关于#极限编程#的问题,请各位专家解答!
  • ¥20 win11账户锁定时间设为0无法登录
  • ¥45 C#学生成绩管理系统