惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

酷 壳 – CoolShell
酷 壳 – CoolShell
H
Hacker News: Front Page
P
Palo Alto Networks Blog
T
ThreatConnect
Apple Machine Learning Research
Apple Machine Learning Research
博客园_首页
T
True Tiger Recordings
P
Privacy & Cybersecurity Law Blog
B
Blog
IT之家
IT之家
Last Week in AI
Last Week in AI
F
Full Disclosure
Hacker News: Ask HN
Hacker News: Ask HN
C
Comments on: Blog
Microsoft Azure Blog
Microsoft Azure Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
N
News and Events Feed by Topic
NISL@THU
NISL@THU
腾讯CDC
雷峰网
雷峰网
Security Latest
Security Latest
李成银的技术随笔
M
Microsoft Research Blog - Microsoft Research
L
LangChain Blog
L
Lohrmann on Cybersecurity
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
C
Check Point Blog
Y
Y Combinator Blog
Recent Announcements
Recent Announcements
博客园 - Franky
N
News | PayPal Newsroom
V
V2EX
A
About on SuperTechFans
The Register - Security
The Register - Security
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google Online Security Blog
Google Online Security Blog
MyScale Blog
MyScale Blog
Cisco Talos Blog
Cisco Talos Blog
Vercel News
Vercel News
WordPress大学
WordPress大学
C
Cyber Attacks, Cyber Crime and Cyber Security
The Hacker News
The Hacker News
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
爱范儿
爱范儿
A
Arctic Wolf
L
LINUX DO - 最新话题
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - jeky

rails 路由配置时 URL 地址如何匹配下划线? github.com 不能访问怎么办? Linux - 显示日历的命令 cal 用法 Linux - echo 命令如何追加文本? - jeky 如何解决ssh连接后长时间不操作断线的问题? Rails 中如何使用全局变量? raw 允许输出html字符 Linux 用户及组 话说调试 全等(===) 委托的协变与逆变 判断一个整数是奇数还是偶数 - jeky - 博客园 选择排序法 让我笔试吃亏"单例模式" 用Javascript实现关键词的高亮显示 Javascript中正则表达式的相识知识 - jeky 对 TextBox 设置css属性 注意void()里面不能空 - jeky - 博客园 访问数组元素的 3 种方法 Internet Explorer 7.0(IE7.0)简体中文版
OWC11 实例
jeky · 2007-02-11 · via 博客园 - jeky

项目中的工程模块需要用到图表来显示数据,后来选中了“OWC11”,效果如下:

CS代码:

    void ToPrint(string categoryStr, string[] valueArr, string[] titleArr, string[] colorArr)
    
{
        
// 新建一个绘图空间
        ChartSpace objCSpace = new ChartSpace();


        
// 在绘图空间中新建一个图表
        ChChart objChart = objCSpace.Charts.Add(0);
        
//objChart.Type = ChartChartTypeEnum.chChartTypeColumnClustered3D; // 指定图表的类型为3D柱状
        objChart.Type = ChartChartTypeEnum.chChartTypeColumnClustered; // 平面柱状
        objChart.HasLegend = true// 指定图表是否需要图例

        
// 标题
        objChart.HasTitle = true;
        objChart.Title.Caption 
= "年度水量消耗统计";
        objChart.Title.Font.Size 
= 9;
        objChart.Title.Font.Name 
= "宋体";
        objChart.Title.Font.Bold 
= true;

        objChart.PlotArea.Interior.Color 
= "#C0C0C0"// 绘图区的背景颜色
        objChart.PlotArea.Floor.Interior.Color = "#888888"// 绘图区的底色

        objChart.Legend.Font.Size 
= 9// 图例的字体




        
// X, Y 轴的图示属性
        
//objChart.Axes[0].HasTitle = true;
        
//objChart.Axes[0].Title.Caption = "X:月";
        
//objChart.Axes[0].Title.Font.Size = 9;
        
//objChart.Axes[1].HasTitle = true;
        
//objChart.Axes[1].Title.Caption = "Y:量";
        
//objChart.Axes[1].Title.Font.Size = 9;


        
for (int i = 0; i < valueArr.Length; i++)
        
{
            
// 在图表中添加一个数据系列
            ChSeries objSeries = objChart.SeriesCollection.Add(i);
            objSeries.SetData(ChartDimensionsEnum.chDimSeriesNames, ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(), titleArr[i]);
            objSeries.SetData(ChartDimensionsEnum.chDimCategories, ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(), categoryStr);
            objSeries.SetData(ChartDimensionsEnum.chDimValues, ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(), valueArr[i]);
            objSeries.Interior.Color 
= colorArr[i]; // 柱子内部的颜色
            objSeries.GapWidth = 300// 柱子之间的间隙

            ChDataLabels objDataLabels 
= objChart.SeriesCollection[i].DataLabelsCollection.Add();
            objDataLabels.HasValue 
= false// 柱子上面的数字是否显示
            objDataLabels.Font.Color = "Black"// 柱子上面的数字颜色是黑色的
        }


        
object objPic = objCSpace.GetPicture("GIF"700300);

        Response.Buffer 
= true;
        Response.ContentType 
= "image/gif";
        Response.BinaryWrite((
byte[])objPic);
        Response.End();
    }

调用:

        string[] categoryArr = new string[] "1月份""2月份""3月份""4月份""5月份""6月份" };
        
string categoryStr = string.Join("\t", categoryArr);

        
string[] valueArr1 = new string[] "3832""3167""3575""3816""2651""3494" };
        
string[] valueArr2 = new string[] "17627.2""14568.2""12194.6""16445""17553.6""16072.4" };
        
string[] valueArr3 = new string[] "5748""4750.5""3976.5""5362.5""5724""5241" };
        
string[] valueArr4 = new string[] "23375.2""19318.7""16171.1""21807.5""23277.6""21313.4" };
        
string valueStr1 = string.Join("\t", valueArr1);
        
string valueStr2 = string.Join("\t", valueArr2);
        
string valueStr3 = string.Join("\t", valueArr3);
        
string valueStr4 = string.Join("\t", valueArr4);
        
string[] valueArr = new string[] { valueStr1, valueStr2, valueStr3, valueStr4 };

        
string[] titleArr = new string[] "消耗量m3""水费(元)""污水费(元)""合计(元)" };

        
string[] colorArr = new string[] "#9999FF""#993366""#FFFFCC""#CCFFFF" };

        ToPrint(categoryStr, valueArr, titleArr, colorArr);