天天看点

7 matplotlib绘图和Pygal可视化7.1matplotlib的安装和测试7.2绘制基本图形的命令7.3设置图像格式7.4 Pygal的安装7.5可视化直方图

7 matplotlib绘图和Pygal可视化

  • 7.1matplotlib的安装和测试
  • 7.2绘制基本图形的命令
    • 7.2.1折线图
    • 7.2.2散点图
  • 7.3设置图像格式
  • 7.4 Pygal的安装
  • 7.5可视化直方图
    • 7.5.1直方图

7.1matplotlib的安装和测试

安装----- 在cmd中把路径调整到python的安装目录(D:可以跳转磁盘区,cd python可以跳转到python的文件夹),然后输入python -m pip install matplotlib即可安装最新版本的matplotlib。

测试----- cmd跳转到python文件夹,输入import matplotlib 无错误即安装成功。

7.2绘制基本图形的命令

在使用前必须导入:[in1]import matplotlib [in2]import matplotlib.pyplot两个包,代码最后通过matplotlib.pyplot.show()显示图像。

7.2.1折线图

折线图基础命令----- matplotlib.pyplot.plot(X坐标数组,Y坐标数组,其它属性=……)

例如:绘制平方曲线图

#绘制平方曲线
import matplotlib
import matplotlib.pyplot
value_x=list(range(1,100))
value_y=[x**2 for x in value_x]
matplotlib.pyplot.plot(value_x,value_y)
scat_value_x=list(range(20,100,20))
scat_value_y=[x**2 for x in scat_value_x]
matplotlib.pyplot.scatter(scat_value_x,scat_value_y)
matplotlib.pyplot.title("y=sqrt(x)",fontsize=15)
matplotlib.pyplot.xlabel("x",fontsize=15)
matplotlib.pyplot.ylabel("y",fontsize=15)
matplotlib.pyplot.tick_params(axis='both',labelsize=10)
matplotlib.pyplot.axis([0,110,0,11000])
matplotlib.pyplot.show()

           

结果为:

7 matplotlib绘图和Pygal可视化7.1matplotlib的安装和测试7.2绘制基本图形的命令7.3设置图像格式7.4 Pygal的安装7.5可视化直方图

7.2.2散点图

散点图基础命令----- matplotlib.pyplot.scatter(X坐标数组,Y坐标数组,其它属性=…….)

绘制随机漫步图:

#经典的随机漫步图
import matplotlib
import matplotlib.pyplot as plt
from random import choice

class RandomWalk():
    def __init__(self,num_points=20000):
        self.num_points=num_points
        self.x_value=[0]
        self.y_value=[0]
    def fill_walk(self):
        while len(self.x_value)<self.num_points:
            x_dir=choice([-1,1])
            y_dir=choice([-1,1])
            x_dis=choice([0,1,2,3,4,5])
            y_dis=choice([0,1,2,3,4,5])
            x_step=x_dir*x_dis
            y_step=y_dir*y_dis
            if x_step==0 and y_step==0:
                continue
            next_x=self.x_value[-1]+x_step  #数值-1表示访问倒数第一个元素
            next_y=self.y_value[-1]+y_step
            self.x_value.append(next_x)
            self.y_value.append(next_y)

while True:
    rw = RandomWalk()
    rw.fill_walk()
    point_numbers = list(range(rw.num_points))
    plt.figure(figsize=(10, 6))
    #c表示颜色,c=数组表示颜色都不相同  
    # plt.scatter(rw.x_value, rw.y_value, c=point_numbers,cmap=matplotlib.cm.Greys,edgecolor='none', s=1)
    plt.scatter(rw.x_value, rw.y_value, c=point_numbers,edgecolor='none', s=1)
    plt.show()
    keepruning=input("继续输出吗?(y/n)")
    if keepruning=='n':
        break

           

输出结果为:

7 matplotlib绘图和Pygal可视化7.1matplotlib的安装和测试7.2绘制基本图形的命令7.3设置图像格式7.4 Pygal的安装7.5可视化直方图

7.3设置图像格式

更改字体----- matplotlib.pyplot.rc(‘font’,family=‘Times New Roman’)

设置标题----- matplotlib.pyplot.title(“标题名”,fontsize=int)

设置X轴标题----- matplotlib.pyplot.xlabel(“X轴标题”,fontsize=int)

设置Y轴标题----- matplotlib.pyplot.ylabel(“X轴标题”,fontsize=int)

设置坐标轴刻度大小------ matplotlib.pyplot.tick_params(axis=‘both’,labelsize=int) 其中axis可以赋值为’x’、'y’和’both’三种

设置坐标轴的范围----- matplotlib.pyplot.axis([xmin,xmax,ymin,ymax])

保存图片----- matplotlib.pyplot.savefig(‘文件名.png’, bbox_inches=‘tight’)

隐藏坐标轴----- matplotlib.axes.get_xaxis().set_visible(False)

设置图片长宽比----- matplotlib.pyplot.figure(figsize=(int,int))这个命令最好放在绘图的前面

7.4 Pygal的安装

安装----- 在cmd中把路径调整到python的安装目录(D:可以跳转磁盘区,cd python可以跳转到python的文件夹),输入pip install pygal即可。

测试----- cmd跳转到python文件夹,输入import pygal无误即安装成功。

7.5可视化直方图

7.5.1直方图

import pygal
line_chart = pygal.Bar()
line_chart.title = 'Browser usage evolution (in %)'
line_chart.x_labels = map(str, range(2002, 2013))
line_chart.add('Firefox', [None, None, 0, 16.6,   25,   31, 36.4, 45.5, 46.3, 42.8, 37.1])
line_chart.add('Chrome',  [None, None, None, None, None, None,    0,  3.9, 10.8, 23.8, 35.3])
line_chart.add('IE',      [85.8, 84.6, 84.7, 74.5,   66, 58.6, 54.7, 44.8, 36.2, 26.6, 20.1])
line_chart.add('Others',  [14.2, 15.4, 15.3,  8.9,    9, 10.4,  8.9,  5.8,  6.7,  6.8,  7.5])
line_chart.render_to_file('test.svg')
           

输出结果:

7 matplotlib绘图和Pygal可视化7.1matplotlib的安装和测试7.2绘制基本图形的命令7.3设置图像格式7.4 Pygal的安装7.5可视化直方图