关于python曲线绘制的问题

2024-05-09 12:14

1. 关于python曲线绘制的问题

用r来做

关于python曲线绘制的问题

2. 如何用python画深度学习训练图?比如误差,准确率变化曲线之类的

用TensorFlow啊,外加个图形包就可以了

3. 如何使用Python绘制光滑实验数据曲线

楼主的问题是否是“怎样描绘出没有数据点的位置的曲线”,或者是“x在某个位置时,即使没有数据,我也想知道他的y值是多少,好绘制曲线”。这就是个预测未知数据的问题。
传统的方法就是回归,python的scipy可以做。流行一点的就是机器学习,python的scikit-learn可以做。
但问题在于,仅由光强能预测出开路电压吗(当然,有可能可以预测。)?就是你的图1和图2的曲线都不能说是不可能发生的情况吧,所以想预测开路电压值还需引入其他影响因子。这样你才能知道平滑曲线到底应该像图1还是图2还是其他样子。
如果是单因子的话,从散点图观察,有点像 y = Alnx + B,用线性回归模型确定A,B的值就可以通过x预测y的值,从而绘制平滑的曲线了。

如何使用Python绘制光滑实验数据曲线

4. python怎么画曲线图

# encoding=utf-8
import matplotlib.pyplot as plt
from pylab import *                                 #支持中文
mpl.rcParams['font.sans-serif'] = ['SimHei']

names = ['5', '10', '15', '20', '25']
x = range(len(names))
y = [0.855, 0.84, 0.835, 0.815, 0.81]
y1=[0.86,0.85,0.853,0.849,0.83]
#plt.plot(x, y, 'ro-')
#plt.plot(x, y1, 'bo-')
#pl.xlim(-1, 11)  # 限定横轴的范围
#pl.ylim(-1, 110)  # 限定纵轴的范围
plt.plot(x, y, marker='o', mec='r', mfc='w',label=u'y=x^2曲线图')
plt.plot(x, y1, marker='*', ms=10,label=u'y=x^3曲线图')
plt.legend()  # 让图例生效
plt.xticks(x, names, rotation=45)
plt.margins(0)
plt.subplots_adjust(bottom=0.15)
plt.xlabel(u"time(s)邻居") #X轴标签
plt.ylabel("RMSE") #Y轴标签
plt.title("A simple plot") #标题

plt.show()

5. 怎么用python做光滑折线图,谢谢了,困扰我很多天了

参考python散点的平滑曲线化方法

怎么用python做光滑折线图,谢谢了,困扰我很多天了

6. 如何用python turtle画斐波那契螺旋曲线?

我把矩形和圆弧都用不同颜色填充了,你按照自己的需求修改一下吧,你的题目说的不清楚。
# Python3.6# 使用turtle绘制Fibonacci螺旋def draw_fibonacci(x):    # F0=1    # F1=1    # Fn=F(n-1)+F(n-2)    # 产生斐波那契数列,用于查表    # 像这种计算复杂性指数增长的计算,不要写个函数去每次求一个数    # 最好的办法是,按照规律写出查找表,用查找的方法来得到数据    f_list = []    for i in range(x):        if i == 0:            f_list.append(1)        elif i == 1:            f_list.append(1)        else:            f_list.append(f_list[i-1]+f_list[i-2])    # 像素比例    f0 = 50    # 设置画笔属性    turtle.pensize(5)    turtle.pencolor("black")    turtle.penup()    turtle.home()    turtle.pendown()    for i in range(0, len(f_list)):        # 绘制速度,1~10个不同速度等级,小于1或者大于10立即绘制        turtle.speed(1)        turtle.pendown()        # 绘制矩形        if i == 0:            fill_color = "black"        else:            fill_color = (random.random(), random.random(), random.random())        turtle.fillcolor(fill_color)        turtle.begin_fill()        turtle.forward(f_list[i]*f0)        turtle.left(90)        turtle.forward(f_list[i]*f0)        turtle.left(90)        turtle.forward(f_list[i]*f0)        turtle.left(90)        turtle.forward(f_list[i]*f0)        turtle.left(90)        turtle.end_fill()        # 绘制圆弧        fill_color = (random.random(), random.random(), random.random())        turtle.fillcolor(fill_color)        if i == 0:            turtle.forward(f_list[i] * f0 / 2)            turtle.begin_fill()            turtle.circle(f_list[i] * f0 / 2, 360)            turtle.end_fill()            # 移动到一下起点            turtle.forward(f_list[i] * f0 / 2)            continue        else:            turtle.begin_fill()            turtle.circle(f_list[i] * f0, 90)            turtle.left(90)            turtle.forward(f_list[i] * f0)            turtle.left(90)            turtle.forward(f_list[i] * f0)            turtle.end_fill()        # 移动到一下起点        turtle.speed(0)        turtle.penup()        turtle.left(90)        turtle.forward(f_list[i] * f0)        turtle.left(90)        turtle.forward(f_list[i] * f0)    turtle.done()if __name__ == "__main__":    draw_fibonacci(6)下面是我跑出来的结果:

7. python使用matplotlib怎么画光滑曲线

matplotlib 是Python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中。
它的文档相当完备,并且 Gallery页面 中有上百幅缩略图,打开之后都有源程序。因此如果你需要绘制某种类型的图,只需要在这个页面中浏览/复制/粘贴一下,基本上都能搞定。

在Linux下比较著名的数据图工具还有gnuplot,这个是免费的,Python有一个包可以调用gnuplot,但是语法比较不习惯,而且画图质量不高。
而 Matplotlib则比较强:Matlab的语法、python语言、latex的画图质量(还可以使用内嵌的latex引擎绘制的数学公式)。

快速绘图
matplotlib的pyplot子库提供了和matlab类似的绘图API,方便用户快速绘制2D图表。例子:

?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

#
 coding=gbk
'''
Created
 on Jul 12,2014
python
 科学计算学习:numpy快速处理数据测试
@author:
 皮皮
'''
importstring
importmatplotlib.pyplot
 as plt 
importnumpy
 as np

if__name__
 == '__main__':   
file
 = open(E:machine_learningdatasetshousing_datahousing_data_ages.txt, 'r')
linesList
 = file.readlines()
#    
 print(linesList)
linesList
 = [line.strip().split(,) forline
 in linesList]
file.close()   
print(linesList:)
print(linesList)
#    
 years = [string.atof(x[0])forx
 in linesList]
years
 = [x[0]forx
 in linesList]
print(years)
price
 = [x[1]forx
 in linesList]
print(price)
plt.plot(years,
 price, 'b*')#,label=$cos(x^2)$)
plt.plot(years,
 price, 'r')
plt.xlabel(years(+2000))
plt.ylabel(housing
 average price(*2000yuan))
plt.ylim(0,15)
plt.title('line_regression
 & gradient decrease')
plt.legend()
plt.show()

python使用matplotlib怎么画光滑曲线

8. python怎么画折线图

一、环境准备
linux ubuntu 下需安装下面三个包:
Numpy, Scipy,Matplotlib
分别输入下面的代码进行安装:
[plain] view plain copy
pip install numpy  
pip install scipy  
sudo apt-get install python-matplotlib  

测试是否安装成功

[html] view plain copy
python  
>>> import pylab    
如果没有报错则安装成功
二、开始画图
1. 画最简单的直线图
代码如下:
[python] view plain copy
import numpy as np  
import matplotlib.pyplot as plt  

x=[0,1]  
y=[0,1]  
plt.figure()  
plt.plot(x,y)  
plt.savefig("easyplot.jpg")  
结果如下:

代码解释:
[python] view plain copy
#x轴,y轴  
x=[0,1]  
y=[0,1]  
#创建绘图对象  
plt.figure()  
#在当前绘图对象进行绘图(两个参数是x,y轴的数据)  
plt.plot(x,y)  
#保存图象  
plt.savefig("easyplot.jpg")  
2. 给图加上标签与标题
上面的图没有相应的X,Y轴标签说明与标题
在上述代码基础上,可以加上这些内容
代码如下:
[python] view plain copy
import numpy as np  
import matplotlib.pyplot as plt  

x=[0,1]  
y=[0,1]  

plt.figure()  
plt.plot(x,y)  
plt.xlabel("time(s)")  
plt.ylabel("value(m)")  
plt.title("A simple plot")  

结果如下:

代码解释:
[python] view plain copy
plt.xlabel("time(s)") #X轴标签  
plt.ylabel("value(m)") #Y轴标签  
plt.title("A simple plot") #标题  
3. 画sinx曲线
代码如下:
[python] view plain copy
# -*- coding: utf-8 -*-  
import numpy as np  
import matplotlib.pyplot as plt  

#设置x,y轴的数值(y=sinx)  
x = np.linspace(0, 10, 1000)  
y = np.sin(x)  

#创建绘图对象,figsize参数可以指定绘图对象的宽度和高度,单位为英寸,一英寸=80px  
plt.figure(figsize=(8,4))  

#在当前绘图对象中画图(x轴,y轴,给所绘制的曲线的名字,画线颜色,画线宽度)  
plt.plot(x,y,label="$sin(x)$",color="red",linewidth=2)  

#X轴的文字  
plt.xlabel("Time(s)")  

#Y轴的文字  
plt.ylabel("Volt")  

#图表的标题  
plt.title("PyPlot First Example")  

#Y轴的范围  
plt.ylim(-1.2,1.2)  

#显示图示  
plt.legend()  

#显示图  
plt.show()  

#保存图  
plt.savefig("sinx.jpg")  
结果如下:

4. 画折线图
代码如下:
[python] view plain copy
# -*- coding: utf-8 -*-  
import numpy as np  
import matplotlib.pyplot as plt  
#X轴,Y轴数据  
x = [0,1,2,3,4,5,6]  
y = [0.3,0.4,2,5,3,4.5,4]  
plt.figure(figsize=(8,4)) #创建绘图对象  
plt.plot(x,y,"b--",linewidth=1)   #在当前绘图对象绘图(X轴,Y轴,蓝色虚线,线宽度)  
plt.xlabel("Time(s)") #X轴标签  
plt.ylabel("Volt")  #Y轴标签  
plt.title("Line plot") #图标题  
plt.show()  #显示图  
plt.savefig("line.jpg") #保存图  
结果如下: