C#读取EXCEL列数据,并画折线图(刚开始入门小白自己整理的,方便自己以后看)
首先建立一个c#dll文件,添加代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.Office.Interop.Excel;
using System.Diagnostics;
using System.Reflection;
namespace ClassLibrary3
{
public class Class1
{
#region 获取Excel某列数据/// <summary>/// 获取Excel某列数据/// </summary>/// <param name="ExcelName"></param>public List<string> ColumnDB = new List<string>();public List<string> getColumnDB(string ExcelName){//创建 Excel对象Application App = new Application();//获取缺少的object类型值object missing = Missing.Value;//打开指定的Excel文件Workbook openwb = App.Workbooks.Open(ExcelName, missing, missing, missing, missing,missing, missing, missing, missing, missing, missing, missing, missing, missing, missing);//获取选选择的工作表Worksheet ws = ((Worksheet)openwb.Worksheets["Sheet1"]);//方法一:指定工作表名称读取//Worksheet ws = (Worksheet)openwb.Worksheets.get_Item(1);//方法二:通过工作表下标读取//获取工作表中的行数int rows = ws.UsedRange.Rows.Count;//获取工作表中的列数int columns = ws.UsedRange.Columns.Count;// Console.WriteLine("请输入你要获取哪列数据");// int column = Convert.ToInt16(Console.ReadLine());int column = 2;//提取对应行列的数据并将其存入数组中for(int i=1;i<=rows;i++){string a = ((Range)ws.Cells[i, column]).Text.ToString();// Console.WriteLine("读取的数据:" + a);//测试是否获得数据ColumnDB.Add(a);}/* for (int i = 0; i < rows; i++){Console.WriteLine(ColumnDB[i]);}*/return ColumnDB;//遍历数组/*foreach (string db in ColumnDB){Console.WriteLine("列表中的数据"+db);//查看数组中的数据,测试是否存储成功}Console.ReadLine();**/}#endregion}
}
此处借鉴:https://blog.csdn.net/kevinfan2011/article/details/83960232 大佬代码
稍作修改,注释的非常清楚:
public List ColumnDB = new List();
泛型,字符串类型,创建了一个容量可根据需要自动扩充的列表
Workbooks.Open方法(Excel):
Excel.Workbook workbook = ExcelApplication.Workbooks.Open(fileName)
参考:https://www.cnblogs.com/ilookbo/p/5531698.html
接下来,右键解决方案,找到管理解决方案的NUGET包(若VS2010没有,可以再添加,可自行搜索),在里面搜索excel
接下来生成解决方案,即创建完dll
新建项目,添加工具:按钮、chart,布局如下
添加代码,我将所有代码都附上了:
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 ClassLibrary3;
namespace Curve
{
public partial class Form1 : Form
{
int count = 0;
List data = new List();
List dataFloat = new List();
private void updateChart(){chart1.Series[0].Points.Clear();for (int i = 0; i < count; i++){chart1.Series[0].Points.AddXY(i, dataFloat[i]);}}//更新chart表格public Form1(){InitializeComponent();}private void btn_DrawSignal_Click(object sender, EventArgs e){Class1 hanshu = new Class1();data = hanshu.getColumnDB("C:/Users/ASUS/Desktop/6.xlsx");foreach (var v in data){count++;}//遍历data列表,找出列表元素数目for (int i = 0; i < count; i++){dataFloat.Add(Convert.ToSingle(data[i])); //将string类型强制转换为double} updateChart(); }
}
}
运行即可:
代码都实测可用,三十注意添加点的效率太慢,我画了8万个点用了四分钟左右,本来想做个信号图,六十万个点,电脑卡死。请求大佬教教该怎么解决这个问题!谢谢
这是刚开始入门小白自己整理的,方便以后自己改正查看,如有那边不妥,欢迎指正0.0。
C#读取EXCEL列数据,并画折线图(刚开始入门小白自己整理的,方便自己以后看)相关推荐
- python导入数据画折线图_Python读取Excel表格,并同时画折线图和柱状图的方法
今日给大家分享一个Python读取Excel表格,同时采用表格中的数值画图柱状图和折线图,这里只需要几行代码便可以实. 首先我们需要安装一个Excel操作的库xlrd,这个很简单,在安装Python后 ...
- 用python读取excel数据、并作图_Python读取Excel表格,并同时画折线图和柱状图的方法...
今日给大家分享一个Python读取Excel表格,同时采用表格中的数值画图柱状图和折线图,这里只需要几行代码便可以实. 首先我们需要安装一个Excel操作的库xlrd,这个很简单,在安装Python后 ...
- python画柱状图和折线图-Python读取Excel表格,并同时画折线图和柱状图的方法
今日给大家分享一个Python读取Excel表格,同时采用表格中的数值画图柱状图和折线图,这里只需要几行代码便可以实. 首先我们需要安装一个Excel操作的库xlrd,这个很简单,在安装Python后 ...
- Python读取excel/csv表格并通过折线图可视化显示
Python读取excel/csv表格并通过折线图可视化显示 写作背景 参数 使用figure()函数重新申请一个figure对象 注意,每次调用figure的时候都会重新申请一个figure对象 第 ...
- excel 用一列数据生成图表/折线图
问题描述 该教程适用于该列的长度很长,数据量较大不适合鼠标拖动选中的情况.如果有更简单的方法也欢迎小伙伴们在评论区交流补充~ 操作步骤 1 点一下列上面的标号 即图中的B. 2 按住ctrl,再点一下 ...
- echarts画折线图和数据excel导出
最近一直使用echarts画折线图,在此做个记录 最后样式 代码 <!DOCTYPE html> <html style="height: 100%">&l ...
- Python读取excel文件中的数据,绘制折线图、散点图
https://www.cnblogs.com/liulinghua90/p/9935642.html https://blog.csdn.net/qq_32458499/article/detail ...
- 用R studio读取excel的数据画散点图
首先是读取Excel文件数据,以下两步皆需安装对应的包. library(readxl) test_data<-read_excel("/Users/yangxueyi/Desktop ...
- Python读取CSV文件画折线图
首先,我们先导入需要的模块,然后读取CSV文件的数据,在折线图上画出"Third"这一列的数据的折线图 画出的图表结果: import pandas as pd import ma ...
最新文章
- 【风险管理】假如我是风控经理,会搭建怎样的风控团队
- 关于大小型项目如何最大限度提高WebAPi性能
- 韦东山驱动视频笔记——3.字符设备驱动程序之poll机制
- 那些常见的C++、Qt基础面试题
- 密码学AES算法_S盒_C值搜索
- 韩顺平循序渐进学java 第13讲 抽象类.接口
- javaWeb服务详解(含源代码,测试通过,注释) ——applicationContext-dao.xml
- 织梦(Dedecms)V5.6 远程文件删除漏洞
- iOS 关于修饰代理用weak还是assign
- python——正则表达式详解(二)
- Sliver RecyclerView 功能最强大、最好用的适配器
- pycharm出现 Pycharm this applicatation failed to start because it could not find or laod the qt 的解决办法
- js 取表格table td值 botton a
- php5.2.17 pecl,php pecl的使用
- java与英语词汇_Java英语词汇表
- Windows开启telnet功能
- EUV光刻技术如何为功率半导体提供动力
- 通俗讲解分布式锁:场景和使用方法
- docker 安装shipyard
- 图解Java开发工具JBuilder 9 0(三)
热门文章
- 服务器显示B7,win7系统出现错误代码0x800700B7怎么办
- 某某农业有限公司网络营销工作计划
- VS Code 1.32 发布,想说 1.32.1 正在路上?没门!
- Android中各种Span的用法——转载
- 引擎TA校园招聘: 搜狐畅游 追光者计划第三期训练营
- 如何在ppt里面实现文字环绕和分栏?
- 2019中国最佳表现城市排行榜发布,成都、深圳位居前列
- php 正则 规则,PHP 正则表达式的语法规则
- 新编计算机应用基础教材答案,新编计算机应用基础习题参考答案22365.doc
- android动态添加数组中,Android动态数组