Python3.5 在Ubuntu16.04上无法画图的解决方案
2016-06-04 13:24
375 查看
1. 问题由来
在使用下面的测试代码学习python时,用Pycharm画不出来图像,SPYDER3 可以画出来。下面的代码来自:http://old.sebug.net/
# -*- coding: utf-8 -*- import numpy as np from scipy.optimize import leastsq import pylab as pl def func(x, p): """ 数据拟合所用的函数: A*sin(2*pi*k*x + theta) """ A, k, theta = p return A*np.sin(2*np.pi*k*x+theta) def residuals(p, y, x): """ 实验数据x, y和拟合函数之间的差,p为拟合需要找到的系数 """ return y - func(x, p) x = np.linspace(0, -2*np.pi, 100) A, k, theta = 10, 0.34, np.pi/6 # 真实数据的函数参数 y0 = func(x, [A, k, theta]) # 真实数据 y1 = y0 + 2 * np.random.randn(len(x)) # 加入噪声之后的实验数据 p0 = [7, 0.2, 0] # 第一次猜测的函数拟合参数 # 调用leastsq进行数据拟合 # residuals为计算误差的函数 # p0为拟合参数的初始值 # args为需要拟合的实验数据 plsq = leastsq(residuals, p0, args=(y1, x)) print (u"真实参数:", [A, k, theta]) print (u"拟合参数", plsq[0]) # 实验数据拟合后的参数 pl.plot(x, y0, label=u"真实数据") pl.plot(x, y1, label=u"带噪声的实验数据") pl.plot(x, func(x, plsq[0]), label=u"拟合数据") pl.legend() pl.show()
发现问题
在python控制台输入import matplotlib
matplotlib.get_backend()
u’agg’
我们可以看到输出的时agg,
AGG使不能画图的。
so,解决方案如下
sudo apt-get install tk-devsudo pip uninstall -y matplotlib
sudo pip –no-cache-dir install -U matplotlib #这是最关键的
图一发
稍后要解决这个中文乱码的问题了。
相关文章推荐
- Ubuntu 默认壁纸历代记
- Ubuntu Remix Cinnamon 20.04 评测:Ubuntu 与 Cinnamon 的完美融合
- 关于Ubuntu 11.10启动提示waiting for the network configuration的问题
- 在 Ubuntu 桌面中使用文件和文件夹
- Python动态类型的学习---引用的理解
- Python3写爬虫(四)多线程实现数据爬取
- 垃圾邮件过滤器 python简单实现
- 下载并遍历 names.txt 文件,输出长度最长的回文人名。
- ubuntu下chrome无法同步问题解决
- install and upgrade scrapy
- Scrapy的架构介绍
- Centos6 编译安装Python
- Ubuntu Linux使用体验
- 使用Python生成Excel格式的图片
- 让Python文件也可以当bat文件运行
- [Python]推算数独
- Python中zip()函数用法举例
- Python中map()函数浅析