pyecharts库是python下实现的echarts图表绘制库,接下来,我们使用pyecharts来绘制一条曲线,来体验一下pyecharts的基本使用效果。

        1、首先,我们要安装下pyecharts库,在pycharm终端输入安装命令:

                                        pip install pyecharts

Python画曲线如何标识 如何用python画曲线图_python

   

 2、然后在程序中引入相关的库。    

from pyecharts.charts import Line
from pyecharts.options import VisualMapOpts,LabelOpts
from pyecharts import options as opts

3、生成我们要拟合的曲线数据

num = range(1,11)
D = 10
data_list1 = []#设置两个列表接收x,y的值
data_list2 = []
for i in num:
    x = i/10
    y = 1/(D*(1-x)+x)#需要拟合曲线的表达式# print(f"{x},{y}")
    data_list1.append(x)
    data_list2.append(y)#数组中填入需要的x,yprint(F"{data_list1}")

x_data = data_list1
y_data = data_list2

        其中,我们首先定义了一个列表num,列表中你的值为【1,10】,然后定义两个列表data_list1和data_list2,分别用来存放x自变量的值和因变量y的值。

        然后循环num,生成x和y的值,其中x变量为0.1-1之间的值,y为1/(D*(1-x)+x),然后将生成的值分别放入到列表data_list1和data_list2

        循环完毕后再将data_list1和data_list2分别赋值给x_data和y_data

4、新建一个line对象,用于绘制曲线。然后设置曲线的x和y分别为我们上面生成好的x_data和y_data

line = Line()
line.add_xaxis(x_data)
line.add_yaxis("模拟",y_data,label_opts=LabelOpts(is_show=False), is_smooth=True)

 其中label_opts=LabelOpts(is_show=False)用于设置不显示y具体的数值在图形上,is_smooth设置绘制出来的线条是平滑的,而不是折线。

5、设置全局属性。

line.set_global_opts(
        visualmap_opts=VisualMapOpts(is_show=True),
         xaxis_opts=opts.AxisOpts(
             type_="value",
             name="x",
             is_show=True,
             is_scale=True,
             name_location='middle',
             min_=0.1,
             max_=1,
         ) )

         其中,我们设置visualmap_opts属性为可见,表示绘制出来的图形是否显示视觉组件,这个组件会在图形的旁边显示,通过这个组件可以控制图形的一个显示,当数据量比较多的时候。在这里作用不大,因为数据单一。

       其次,xaxis_opts参数设置x轴的一些属性,name为x轴上显示的文本,最重要的是min_和max_属性,表示x轴的数值范围,如果不设置,显示的数据会有问题。这里x轴的数据是从0.1到1。

6、最后调用render方法,执行完后会在项目目录下生成一个render.html文件:

line.render()

Python画曲线如何标识 如何用python画曲线图_python_02

 

7、打开这个render.html文件,我们可以看到生成的html代码:

        

Python画曲线如何标识 如何用python画曲线图_python_03

 如果你做过网页开发,使用过echarts,那么这个文件中你的代码你会很熟悉。

我们鼠标点击文件内部的内容,会有浏览器图标显示出来:

Python画曲线如何标识 如何用python画曲线图_python_04

根据自己电脑上已安装的浏览器,选择一个浏览器打开,这里我用第一个谷歌浏览器打开看看:

Python画曲线如何标识 如何用python画曲线图_echarts_05

 

可以看到,我们拟合的曲线就绘制出来啦。

8、最后全部的代码共享给大家。

from pyecharts.charts import Line
from pyecharts.options import VisualMapOpts,LabelOpts
from pyecharts import options as opts

num = range(1,11)
D = 10
data_list1 = []#设置两个列表接收x,y的值
data_list2 = []
for i in num:
    x = i/10
    y = 1/(D*(1-x)+x)#需要拟合曲线的表达式# print(f"{x},{y}")
    data_list1.append(x)
    data_list2.append(y)#数组中填入需要的x,yprint(F"{data_list1}")

x_data = data_list1
y_data = data_list2

line = Line()
line.add_xaxis(x_data)
line.add_yaxis("模拟",y_data,label_opts=LabelOpts(is_show=False), is_smooth=True)
line.set_global_opts(
        visualmap_opts=VisualMapOpts(is_show=True),
         xaxis_opts=opts.AxisOpts(
             type_="value",
             name="x",
             is_show=True,
             is_scale=True,
             name_location='middle',
             min_=0.1,
             max_=1,
         ) )

line.render()