精华内容
下载资源
问答
  • 折线图

    2021-02-23 05:07:22
    折线图
  • 使用matplotlib绘制折线图,柱状图,柱线混合图

    万次阅读 多人点赞 2019-08-31 21:54:49
    matplotlib介绍 Matplotlib 是 Python 的绘图库。 它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案。 它也可以和图形工具包一起使用,如 ...matplotlib绘制折线图 绘制一条折线的折线图 # -*- c...

    matplotlib介绍

    • Matplotlib 是 Python 的绘图库。 它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案。 它也可以和图形工具包一起使用,如 PyQtwxPython
    • 安装Matplotlib库命令:在cmd命令窗口输入pip install matplotlib

    matplotlib绘制折线图

    1. 绘制一条折线的折线图
    # -*- coding:utf-8 -*-
    import matplotlib
    import matplotlib.pyplot as plt
    # 处理乱码
    matplotlib.rcParams['font.sans-serif'] = ['SimHei']  # 用黑体显示中文
    x = [1, 2, 3, 4]
    y = [10, 50, 20, 100]
    # "r" 表示红色,ms用来设置*的大小
    plt.plot(x, y, "r", marker='*', ms=10, label="a")
    # plt.plot([1, 2, 3, 4], [20, 30, 80, 40], label="b")
    plt.xticks(rotation=45)
    plt.xlabel("发布日期")
    plt.ylabel("小说数量")
    plt.title("80小说网活跃度")
    # upper left 将图例a显示到左上角
    plt.legend(loc="upper left")
    # 在折线图上显示具体数值, ha参数控制水平对齐方式, va控制垂直对齐方式
    for x1, y1 in zip(x, y):
        plt.text(x1, y1 + 1, str(y1), ha='center', va='bottom', fontsize=20, rotation=0)
    plt.savefig("a.jpg")
    plt.show()
    

    图形效果展示:
    在这里插入图片描述

    • 注意:savefig()是图形存储成图片show()是将图形显示出来。
    1. 绘制多条折线
    # -*- coding:utf-8 -*-
    import matplotlib
    import matplotlib.pyplot as plt
    matplotlib.rcParams['font.sans-serif'] = ['SimHei']  # 用黑体显示中文
    x = [1, 2, 3, 4]
    y1 = [45, 50, 20, 100]
    y2 = [26, 10, 76, 25]
    y3 = [11, 66, 55, 88]
    y4 = [69, 50, 35, 100]
    plt.plot(x, y1, marker='*', ms=10, label="a")
    plt.plot(x, y2, marker='*', ms=10, label="b")
    plt.plot(x, y3, marker='*', ms=10, label="c")
    plt.plot(x, y4, marker='*', ms=10, label="d")
    plt.xticks(rotation=45)
    plt.xlabel("发布日期")
    plt.ylabel("小说数量")
    plt.title("80小说网活跃度")
    plt.legend(loc="upper left")
    # 在折线图上显示具体数值, ha参数控制水平对齐方式, va控制垂直对齐方式
    for y in [y1, y2, y3, y4]:
        for x1, yy in zip(x, y):
            plt.text(x1, yy + 1, str(yy), ha='center', va='bottom', fontsize=20, rotation=0)
    plt.savefig("a.jpg")
    plt.show()
    

    图形效果展示:
    在这里插入图片描述

    matplotlib绘制柱状图

    1. 绘制普通柱状图
    # -*- coding:utf-8 -*-
    import matplotlib
    import matplotlib.pyplot as plt
    matplotlib.rcParams['font.sans-serif'] = ['SimHei']  # 用黑体显示中文
    # 构建数据
    x = [1, 2, 3, 4]
    y = [450, 500, 200, 1000]
    # 绘图
    plt.bar(x=x, height=y, label='书库大全', color='steelblue', alpha=0.8)
    # 在柱状图上显示具体数值, ha参数控制水平对齐方式, va控制垂直对齐方式
    for x1, yy in zip(x, y):
        plt.text(x1, yy + 1, str(yy), ha='center', va='bottom', fontsize=20, rotation=0)
    # 设置标题
    plt.title("80小说网活跃度")
    # 为两条坐标轴设置名称
    plt.xlabel("发布日期")
    plt.ylabel("小说数量")
    # 显示图例
    plt.legend()
    plt.savefig("a.jpg")
    plt.show()
    

    图形效果展示:
    在这里插入图片描述

    1. 绘制多组柱状图
    # -*- coding:utf-8 -*-
    import matplotlib
    import matplotlib.pyplot as plt
    matplotlib.rcParams['font.sans-serif'] = ['SimHei']  # 用黑体显示中文
    # 构建数据
    x = ['2015', '2016', '2017', '2018', '2019']
    y1 = [4500, 5000, 2000, 7000, 10000]
    y2 = [5200, 7000, 5000, 9000, 11000]
    # 绘图
    plt.bar(x=x, height=y1, label='python', color='steelblue', alpha=0.8)
    plt.bar(x=x, height=y2, label='java', color='indianred', alpha=0.8)
    # 在柱状图上显示具体数值, ha参数控制水平对齐方式, va控制垂直对齐方式
    for x1, yy in zip(x, y1):
        plt.text(x1, yy + 1, str(yy), ha='center', va='bottom', fontsize=20, rotation=0)
    for x1, yy in zip(x, y2):
        plt.text(x1, yy + 1, str(yy), ha='center', va='bottom', fontsize=20, rotation=0)
    # 设置标题
    plt.title("python与java图书对比")
    # 为两条坐标轴设置名称
    plt.xlabel("年份")
    plt.ylabel("销量")
    # 显示图例
    plt.legend()
    plt.savefig("a.jpg")
    plt.show()
    

    图形效果展示:
    在这里插入图片描述

    1. 绘制柱状图的条柱并列显示
    # -*- coding:utf-8 -*-
    import numpy as np
    import matplotlib
    import matplotlib.pyplot as plt
    
    matplotlib.rcParams['font.sans-serif'] = ['SimHei']  # 用黑体显示中文
    # 构建数据
    x = ['2015', '2016', '2017', '2018', '2019']
    y1 = [4500, 5000, 2000, 7000, 10000]
    y2 = [5200, 7000, 5000, 9000, 11000]
    bar_width = 0.3
    # 将X轴数据改为使用range(len(x_data), 就是0、1、2...
    plt.bar(x=range(len(x)), height=y1, label='python', color='steelblue', alpha=0.8, width=bar_width)
    # 将X轴数据改为使用np.arange(len(x_data))+bar_width,
    # 就是bar_width、1+bar_width、2+bar_width...这样就和第一个柱状图并列了
    plt.bar(x=np.arange(len(x)) + bar_width, height=y2, label='java', color='indianred', alpha=0.8, width=bar_width)
    # 在柱状图上显示具体数值, ha参数控制水平对齐方式, va控制垂直对齐方式
    for x1, yy in enumerate(y1):
        plt.text(x1, yy + 1, str(yy), ha='center', va='bottom', fontsize=20, rotation=0)
    for x1, yy in enumerate(y2):
        plt.text(x1 + bar_width, yy + 1, str(yy), ha='center', va='bottom', fontsize=20, rotation=0)
    # 设置标题
    plt.title("python与java对比")
    # 为两条坐标轴设置名称
    plt.xlabel("年份")
    plt.ylabel("销量")
    # 显示图例
    plt.legend()
    plt.savefig("a.jpg")
    plt.show()
    

    图形效果展示:
    在这里插入图片描述

    matplotlib绘制柱线混合图

    1. 绘制柱线混合图
    # -*- coding:utf-8 -*-
    import matplotlib
    import matplotlib.pyplot as plt
    matplotlib.rcParams['font.sans-serif'] = ['SimHei']  # 用黑体显示中文
    # 构建数据
    x = [2, 4, 6, 8]
    y = [450, 500, 200, 1000]
    # 绘图
    plt.bar(x=x, height=y, label='书库大全', color='steelblue', alpha=0.8)
    # 在柱状图上显示具体数值, ha参数控制水平对齐方式, va控制垂直对齐方式
    for x1, yy in zip(x, y):
        plt.text(x1, yy + 1, str(yy), ha='center', va='bottom', fontsize=20, rotation=0)
    # 设置标题
    plt.title("80小说网活跃度")
    # 为两条坐标轴设置名称
    plt.xlabel("发布日期")
    plt.ylabel("小说数量")
    # 显示图例
    plt.legend()
    # 画折线图
    plt.plot(x, y, "r", marker='*', ms=10, label="a")
    plt.xticks(rotation=45)
    plt.legend(loc="upper left")
    plt.savefig("a.jpg")
    plt.show()
    

    图形效果展示:
    在这里插入图片描述

    展开全文
  • 折线图_折线图_源码

    2021-10-01 05:36:04
    R语言新手,小白绘制好看的折线图,希望有所帮助
  • 用matlab根据所给的数据画出折线图,以便观察数据变化趋势。
  • Excel折线图面积图模板-面积折线图
  • Excel折线图面积图模板-多层折线图
  • Excel折线图面积图模板-另类折线图
  • Excel折线图面积图模板-多层动态折线图
  • Excel折线图面积图模板-员工业绩折线图
  • Excel折线图面积图模板-分段式折线图
  • 折线图绘制

    2018-01-08 15:54:20
    折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制折线图绘制...
  • C# 动态添加数据到折线图 chart 动态折线图。 C#窗口程序chart控件实现动态将数据添加到折线图的功能,勾选框可指示数据是否显示 C# chart 动态折线图
  • Excel折线图面积图模板-折线图制作花型图表
  • Excel折线图面积图模板-鼠标悬浮动态折线图
  • Excel折线图面积图模板-多段式折线图
  • Excel折线图面积图模板-复选框折线图
  • Excel折线图面积图模板-双重水平分割折线图
  • 折线图.xlsx

    2021-09-18 19:21:18
    折线图
  • c# 折线图控件 心电图控件 vb.net折线图控件 心电图控件,使用GDI+绘制,开源全中文注释无限制,直接添加工具箱调用使用,中文属性设置。
  • Excel折线图面积图模板-漂亮折线图Excel模板-
  • Excel折线图面积图模板-高低点连接线折线图
  • Android 折线图

    2018-10-27 13:44:03
    简单的代码折线图的实现,简单的代码折线图的实现,简单的代码折线图的实现,
  • Excel折线图面积图模板-横向分布填充背景的折线图
  • Excel折线图面积图模板-Excel图表模板-漂亮折线图
  • 饼状图折线图

    2017-03-03 13:58:48
    饼状图折线图
  • achartengine折线图和动态折线图

    热门讨论 2013-07-01 08:57:32
    achartengine折线图和动态折线图
  • C#使用chart绘制实时折线图,波形图

    万次阅读 多人点赞 2018-08-24 16:12:32
    采用VS自带的Chart图表控件,制作实时动态显示的折线图,和波形图 涉及知识点: Chart 控件,功能强大,可以绘制柱状图,折线图,波形图,饼状图,大大简化了对图的开发与定制。 Chart控件的相关概念: ChartArea...

    如果需要C#系统学习和辅导,请联系:C#一对一学习辅导   谢谢~

     

     

    采用VS自带的Chart图表控件,制作实时动态显示的折线图,和波形图

    涉及知识点:

    • Chart 控件,功能强大,可以绘制柱状图,折线图,波形图,饼状图,大大简化了对图的开发与定制。

    Chart控件的相关概念:

    • ChartArea,表示图表区域,一个Chart可以绘制多个ChartArea,重叠在一起。
    • Series ,表示数据序列,每个ChartArea可以有多个数据线。即,Series属于ChartArea.
    • AxisX,AxisY,表示主坐标轴,每一个ChartArea都有对应的坐标轴,包括主坐标轴,辅坐标轴
    • Queue集合,表示先进先出的集合。

    主要有两个方法:

    • Dequeue() 表示移除并返回位于 System.Collections.Generic.Queue<T> 开始处的对象。
    • Enqueue() 表示将对象添加到 System.Collections.Generic.Queue<T> 的结尾处。
    • Timer ,定时器,定时之行相应的功能,更新数据,刷新图表。

     

    【折线图,是取[0,100]之间的随即数进行填充】:

    【波形图,是取正玄值,并放大50倍,然后上移50】

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.Windows.Forms.DataVisualization.Charting;
    
    namespace WindowsFormsApplication1
    {
        public partial class RealChart : Form
        {
            private Queue<double> dataQueue = new Queue<double>(100);
    
            private int curValue = 0;
    
            private int num = 5;//每次删除增加几个点
    
            public RealChart()
            {
                InitializeComponent();
            }
    
            /// <summary>
            /// 初始化事件
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btnInit_Click(object sender, EventArgs e)
            {
                InitChart();
            }
    
            /// <summary>
            /// 开始事件
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btnStart_Click(object sender, EventArgs e)
            {
                this.timer1.Start();
            } 
            
            /// <summary>
            /// 停止事件
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btnStop_Click(object sender, EventArgs e)
            {
                this.timer1.Stop();
            }
    
            /// <summary>
            /// 定时器事件
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void timer1_Tick(object sender, EventArgs e)
            {
                UpdateQueueValue();
                this.chart1.Series[0].Points.Clear();
                for(int i=0;i<dataQueue.Count;i++){
                    this.chart1.Series[0].Points.AddXY((i+1), dataQueue.ElementAt(i));
                }
            } 
            
            /// <summary>
            /// 初始化图表
            /// </summary>
            private void InitChart() {
                //定义图表区域
                this.chart1.ChartAreas.Clear();
                ChartArea chartArea1 = new ChartArea("C1");
                this.chart1.ChartAreas.Add(chartArea1);
                //定义存储和显示点的容器
                this.chart1.Series.Clear();
                Series series1 = new Series("S1");
                series1.ChartArea = "C1";
                this.chart1.Series.Add(series1);
                //设置图表显示样式
                this.chart1.ChartAreas[0].AxisY.Minimum = 0;
                this.chart1.ChartAreas[0].AxisY.Maximum =100;
                this.chart1.ChartAreas[0].AxisX.Interval = 5;
                this.chart1.ChartAreas[0].AxisX.MajorGrid.LineColor = System.Drawing.Color.Silver;
                this.chart1.ChartAreas[0].AxisY.MajorGrid.LineColor = System.Drawing.Color.Silver;
                //设置标题
                this.chart1.Titles.Clear();
                this.chart1.Titles.Add("S01");
                this.chart1.Titles[0].Text = "XXX显示";
                this.chart1.Titles[0].ForeColor = Color.RoyalBlue;
                this.chart1.Titles[0].Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
                //设置图表显示样式
                this.chart1.Series[0].Color = Color.Red;
                if (rb1.Checked)
                {
                    this.chart1.Titles[0].Text =string.Format( "XXX {0} 显示",rb1.Text);
                    this.chart1.Series[0].ChartType = SeriesChartType.Line;
                }
                if (rb2.Checked) {
                    this.chart1.Titles[0].Text = string.Format("XXX {0} 显示", rb2.Text);
                    this.chart1.Series[0].ChartType = SeriesChartType.Spline;
                }
                this.chart1.Series[0].Points.Clear();
            }
            
            //更新队列中的值
            private void UpdateQueueValue() {
                
                if (dataQueue.Count > 100) {
                    //先出列
                    for (int i = 0; i < num; i++)
                    {
                        dataQueue.Dequeue();
                    }
                }
                if (rb1.Checked)
                {
                    Random r = new Random();
                    for (int i = 0; i < num; i++)
                    {
                        dataQueue.Enqueue(r.Next(0, 100));
                    }
                }
                if (rb2.Checked) {
                    for (int i = 0; i < num; i++)
                    {
                        //对curValue只取[0,360]之间的值
                        curValue = curValue % 360;
                        //对得到的正玄值,放大50倍,并上移50
                        dataQueue.Enqueue((50*Math.Sin(curValue*Math.PI / 180))+50);
                        curValue=curValue+10;
                    }
                }
            }
        }
    }

     

    关于定时器Timer:

    说明:表示在相同的时间间隔,引发用户自定义的事情 。实现用户需要的功能。本例中是用来定时更新队列中的数据,并刷新图表。

    常用说明:

    1. Interval 时间间隔,以毫秒为单位,本例是300毫秒。
    2. Tick 定时触发的事件,本例对应timer1_Tick事件方法。
    3. Start(),Stop() 表示定时器的启动和停止。Enabled 表示定时器是否启用,默认值为 false,需要手动设置为true。

    如果需要C#系统学习和辅导,请联系:C#一对一学习辅导   谢谢~

    展开全文
  • Excel折线图面积图模板-额达标柱形折线图Excel图表
  • java-echart.js柱状图、饼状图、折线图添加了 折线图java-echart.js柱状图、饼状图、折线图添加了 折线图

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 88,889
精华内容 35,555
关键字:

折线图