achartengine表格折线图代码加注释

2024-06-07 10:32

本文主要是介绍achartengine表格折线图代码加注释,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

有耐心的自己慢慢看吧,,这个可以直接运行的。。几乎所有的 方法都有用到,可以拿来修改加以加深理解。

public void lineView() {

在这里添加折线图。

把它添加到一个linearlayout中

 LinearLayout layout=(LinearLayout) mParent.findViewById(R.id.line) ;


GraphicalView graphicalView = ChartFactory.getLineChartView(
getActivity(), mDataset, mRenderer);


graphicalView.setBackgroundColor(Color.WHITE);


layout.setBackgroundColor(Color.WHITE);
layout.addView(graphicalView, new LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));



//这里是数据dataset和视图渲染器renderer
XYMultipleSeriesDataset mDataset = new XYMultipleSeriesDataset();
XYSeries series = new XYSeries("正面言论");
series.add(1, 56);
series.add(2, 75);
series.add(3, 67);
series.add(4, 84);
series.add(5, 16);
series.add(6, 25);
series.add(7, 36);
series.add(8, 55);
series.add(9, 67);
series.add(10, 88);
series.add(11, 16);
series.add(12, 58);
series.add(13, 87);
series.add(14, 28);
series.add(15, 79);
series.add(16, 97);


XYSeries seriesTwo = new XYSeries("负面言论");
seriesTwo.add(1, 14);
seriesTwo.add(2, 46);
seriesTwo.add(3, 33);
seriesTwo.add(4, 67);
seriesTwo.add(5, 78);
seriesTwo.add(6, 96);
seriesTwo.add(7, 47);
seriesTwo.add(8, 96);
seriesTwo.add(9, 65);
seriesTwo.add(10, 64);
seriesTwo.add(11, 56);
seriesTwo.add(12, 47);
seriesTwo.add(13, 38);
seriesTwo.add(14, 86);
seriesTwo.add(15, 49);
seriesTwo.add(16, 35);


mDataset.addSeries(seriesTwo);
mDataset.addSeries(series);


XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer();
// 设置图表的X轴的当前方向
mRenderer
.setOrientation(XYMultipleSeriesRenderer.Orientation.HORIZONTAL);
mRenderer.setFitLegend(true);// 设置图例字号自适应.
mRenderer.setApplyBackgroundColor(true);// 设置是否显示背景色
mRenderer.setBackgroundColor(Color.parseColor("#fff5f5f5"));// 设置背景色
mRenderer.setXTitle("正负面舆情本月变化率");// 设置为X轴的标题
// mRenderer.setYTitle("%");//设置y轴的标题
// mRenderer.setYTitle("总占量比%");


mRenderer.setAxisTitleTextSize(DensityUtil.dip2px(mActivity, 12));// 设置轴标题文本大小
// (总占比量)
// mRenderer.setChartTitle("兰生县舆论情况");//设置图表标题
// mRenderer.setChartTitleTextSize(20);//设置图表标题文字的大小
mRenderer.setLabelsTextSize(DensityUtil.dip2px(mActivity, 10));// 设置标签的文字大小(刻度值)
mRenderer.setLabelsColor(Color.BLACK);
mRenderer.setShowLegend(false);
mRenderer.setLegendTextSize(DensityUtil.dip2px(mActivity, 12));// 设置铭文文本大小
// (正面言论,负面言论的大小)
mRenderer.setPointSize(10f);// 设置点的大小
mRenderer.setYAxisMin(0);// 设置y轴最小值是1
mRenderer.setYAxisMax(101);


mRenderer.setYLabelsPadding(DensityUtil.dip2px(mActivity, 14));// 设置坐标于y轴的距离
mRenderer.setYLabelsColor(0, Color.BLACK);
mRenderer.setYLabels(3);// 设置Y轴刻度个数(貌似不太准确)


// mRenderer.setXAxisMin(1);
// mRenderer.setXAxisMax(10);
mRenderer.setAxesColor(Color.BLACK);
mRenderer.setXLabelsColor(Color.BLACK);
mRenderer.setPanEnabled(false, false);
mRenderer.setZoomEnabled(false, false);
mRenderer.setXLabelsPadding(1);
mRenderer.setShowGrid(true);// 显示网格
mRenderer.setShowGridX(true);
mRenderer.setShowGridY(true);
mRenderer.setYAxisAlign(Align.LEFT, 0);
mRenderer.setXLabelsAlign(Align.CENTER);// 刻度线与刻度标注之间的相对位置关系
mRenderer.setYLabelsAlign(Align.LEFT);// 刻度线与刻度标注之间的相对位置关系
// 将x标签栏目显示如:1,2,3,4替换为显示1月,2月,3月,4月


mRenderer.setXLabels(0);// 设置只显示如1月,2月等替换后的东西,不显示1,2,3等
mRenderer.addXTextLabel(1, " ");
mRenderer.addXTextLabel(2, " ");
mRenderer.addXTextLabel(3, " ");
mRenderer.addXTextLabel(4, " ");
mRenderer.addXTextLabel(5, " ");
mRenderer.addXTextLabel(6, " ");
mRenderer.addXTextLabel(7, " ");
mRenderer.addXTextLabel(8, " ");
mRenderer.addXTextLabel(9, " ");
mRenderer.addXTextLabel(10, " ");
mRenderer.addXTextLabel(11, " ");
mRenderer.addXTextLabel(12, " ");
mRenderer.addXTextLabel(13, " ");
mRenderer.addXTextLabel(14, " ");
mRenderer.addXTextLabel(15, " ");
mRenderer.addXTextLabel(16, " ");


mRenderer.setMargins(new int[] { DensityUtil.dip2px(mActivity, 10),
DensityUtil.dip2px(mActivity, 20),
DensityUtil.dip2px(mActivity, 30),
DensityUtil.dip2px(mActivity, 10) });// 设置视图位置 {上,左,下,右}
mRenderer.setMarginsColor(Color.parseColor("#fff5f5f5"));


XYSeriesRenderer r = new XYSeriesRenderer();// (类似于一条线对象)


r.setColor(Color.BLUE);// 设置颜色
r.setPointStyle(PointStyle.POINT);// 设置点的样式
r.setFillPoints(true);// 填充点(显示的点是空心还是实心)
// r.setDisplayChartValues(true);//将点的值显示出来
r.setChartValuesSpacing(10);// 显示的点的值与图的距离
r.setChartValuesTextSize(25);// 点的值的文字大小


// r.setFillBelowLine(true);//是否填充折线图的下方
// r.setFillBelowLineColor(Color.GREEN);//填充的颜色,如果不设置就默认与线的颜色一致
r.setLineWidth(2);// 设置线宽
mRenderer.addSeriesRenderer(r);
XYSeriesRenderer rTwo = new XYSeriesRenderer();// (类似于一条线对象)
rTwo.setColor(Color.RED);// 设置颜色
rTwo.setPointStyle(PointStyle.POINT);// 设置点的样式
rTwo.setFillPoints(false);// 填充点(显示的点是空心还是实心)
// rTwo.setDisplayChartValues(true);//将点的值显示出来
rTwo.setChartValuesSpacing(30);// 显示的点的值与图的距离
rTwo.setChartValuesTextSize(25);// 点的值的文字大小


// rTwo.setFillBelowLine(true);//是否填充折线图的下方
// rTwo.setFillBelowLineColor(Color.GREEN);//填充的颜色,如果不设置就默认与线的颜色一致
rTwo.setLineWidth(2);// 设置线宽


mRenderer.addSeriesRenderer(rTwo);



}

这篇关于achartengine表格折线图代码加注释的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1038926

相关文章

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python

Python从Word文档中提取图片并生成PPT的操作代码

《Python从Word文档中提取图片并生成PPT的操作代码》在日常办公场景中,我们经常需要从Word文档中提取图片,并将这些图片整理到PowerPoint幻灯片中,手动完成这一任务既耗时又容易出错,... 目录引言背景与需求解决方案概述代码解析代码核心逻辑说明总结引言在日常办公场景中,我们经常需要从 W

使用Spring Cache本地缓存示例代码

《使用SpringCache本地缓存示例代码》缓存是提高应用程序性能的重要手段,通过将频繁访问的数据存储在内存中,可以减少数据库访问次数,从而加速数据读取,:本文主要介绍使用SpringCac... 目录一、Spring Cache简介核心特点:二、基础配置1. 添加依赖2. 启用缓存3. 缓存配置方案方案

MySQL的配置文件详解及实例代码

《MySQL的配置文件详解及实例代码》MySQL的配置文件是服务器运行的重要组成部分,用于设置服务器操作的各种参数,下面:本文主要介绍MySQL配置文件的相关资料,文中通过代码介绍的非常详细,需要... 目录前言一、配置文件结构1.[mysqld]2.[client]3.[mysql]4.[mysqldum

Python多线程实现大文件快速下载的代码实现

《Python多线程实现大文件快速下载的代码实现》在互联网时代,文件下载是日常操作之一,尤其是大文件,然而,网络条件不稳定或带宽有限时,下载速度会变得很慢,本文将介绍如何使用Python实现多线程下载... 目录引言一、多线程下载原理二、python实现多线程下载代码说明:三、实战案例四、注意事项五、总结引

C#使用Spire.XLS快速生成多表格Excel文件

《C#使用Spire.XLS快速生成多表格Excel文件》在日常开发中,我们经常需要将业务数据导出为结构清晰的Excel文件,本文将手把手教你使用Spire.XLS这个强大的.NET组件,只需几行C#... 目录一、Spire.XLS核心优势清单1.1 性能碾压:从3秒到0.5秒的质变1.2 批量操作的优雅

IDEA与MyEclipse代码量统计方式

《IDEA与MyEclipse代码量统计方式》文章介绍在项目中不安装第三方工具统计代码行数的方法,分别说明MyEclipse通过正则搜索(排除空行和注释)及IDEA使用Statistic插件或调整搜索... 目录项目场景MyEclipse代码量统计IDEA代码量统计总结项目场景在项目中,有时候我们需要统计

MySQL设置密码复杂度策略的完整步骤(附代码示例)

《MySQL设置密码复杂度策略的完整步骤(附代码示例)》MySQL密码策略还可能包括密码复杂度的检查,如是否要求密码包含大写字母、小写字母、数字和特殊字符等,:本文主要介绍MySQL设置密码复杂度... 目录前言1. 使用 validate_password 插件1.1 启用 validate_passwo

MySQL实现多源复制的示例代码

《MySQL实现多源复制的示例代码》MySQL的多源复制允许一个从服务器从多个主服务器复制数据,这在需要将多个数据源汇聚到一个数据库实例时非常有用,下面就来详细的介绍一下,感兴趣的可以了解一下... 目录一、多源复制原理二、多源复制配置步骤2.1 主服务器配置Master1配置Master2配置2.2 从服