-
2019-03-26 17:19:43
maven引入配置
<dependency> <groupId>jfree</groupId> <artifactId>jfreechart</artifactId> <version>1.0.13</version> </dependency> <dependency> <groupId>org.jfree</groupId> <artifactId>jcommon</artifactId> <version>1.0.24</version> </dependency> <dependency> <groupId>incanter</groupId> <artifactId>gnujaxp</artifactId> <version>1</version> </dependency>
工具类
当中绘制带刻度的雷达图实现方法是参考别人的解决方案,源文档连接:https://blog.51cto.com/wangjierui/116845
package com.wangzhongxing.springcloud.common.utils; import com.wangzhongxing.springcloud.common.config.JFreeChartConfig; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartUtilities; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.PlotOrientation; import org.jfree.chart.title.LegendTitle; import org.jfree.chart.title.TextTitle; import org.jfree.data.category.DefaultCategoryDataset; import org.jfree.data.general.DefaultPieDataset; import org.jfree.ui.RectangleEdge; import javax.imageio.ImageIO; import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileInputStream; import java.io.IOException; /** * 绘制图表工具类 * * @author wangzhongxing * @version $Id: JFreeChartUtil.java, v 0.1 2019年03月25日 8:06 PM wangzhongxing Exp $ */ public class JFreeChartUtil { /** * 绘制条形图,并生成图片 * * @param config 图表配置参数 * @param dataset 图表内容数据 * @param outputFile 输出图片路径 * @return */ public static boolean drawBarChart(JFreeChartConfig config, DefaultCategoryDataset dataset, String outputFile) { JFreeChart barChart = ChartFactory.createBarChart(config.getTitle(), config.getCategoryAxisLabel(), config.getValueAxisLabel(), dataset, PlotOrientation.VERTICAL, true, true, false); // 设置图表背景图颜色 if (null != config.getBackgroundColor()) { barChart.getPlot().setBackgroundPaint(config.getBackgroundColor()); } // 设置图表边框的颜色 if (null != config.getOutlineColor()) { barChart.getPlot().setOutlinePaint(config.getOutlineColor()); } // 设置图表背景图 if (null != config.getBackgroundImage()) { barChart.getPlot().setBackgroundImage(config.getBackgroundImage()); } try { ChartUtilities.saveChartAsJPEG(new File(outputFile), barChart, config.getWidth(), config.getHeight()); return true; } catch (IOException e) { return false; } } /** * 绘制折线图,并生成图片 * * @param config 图表配置参数 * @param dataset 图表内容数据 * @param outputFile 输出图片路径 * @return */ public static boolean drawLineChart(JFreeChartConfig config, DefaultCategoryDataset dataset, String outputFile) { JFreeChart lineChartObject = ChartFactory.createLineChart(config.getTitle(), config.getCategoryAxisLabel(), config.getValueAxisLabel(), dataset, PlotOrientation.VERTICAL, true, true, false); // 设置图表背景图颜色 if (null != config.getBackgroundColor()) { lineChartObject.getPlot().setBackgroundPaint(config.getBackgroundColor()); } // 设置图表边框的颜色 if (null != config.getOutlineColor()) { lineChartObject.getPlot().setOutlinePaint(config.getOutlineColor()); } // 设置图表背景图 if (null != config.getBackgroundImage()) { lineChartObject.getPlot().setBackgroundImage(config.getBackgroundImage()); } try { ChartUtilities.saveChartAsJPEG(new File(outputFile), lineChartObject, config.getWidth(), config.getHeight()); return true; } catch (IOException e) { return false; } } /** * 绘制饼图,并生成图片 * * @param config 图表配置参数 * @param dataset 图表内容数据 * @param outputFile 输出图片路径 * @return */ public static boolean drawPieChart(JFreeChartConfig config, DefaultPieDataset dataset, String outputFile) { JFreeChart pieChar = ChartFactory.createPieChart(config.getTitle(), dataset, true, true, false); // 设置图表背景图颜色 if (null != config.getBackgroundColor()) { pieChar.getPlot().setBackgroundPaint(config.getBackgroundColor()); } // 设置图表边框的颜色 if (null != config.getOutlineColor()) { pieChar.getPlot().setOutlinePaint(config.getOutlineColor()); } // 设置图表背景图 if (null != config.getBackgroundImage()) { pieChar.getPlot().setBackgroundImage(config.getBackgroundImage()); } try { ChartUtilities.saveChartAsJPEG(new File(outputFile), pieChar, config.getWidth(), config.getHeight()); return true; } catch (IOException e) { return false; } } public static boolean drawSpiderChart(JFreeChartConfig config, DefaultCategoryDataset dataset, String outputFile) { MySpiderWebPlot spiderwebPlot = new MySpiderWebPlot(dataset); JFreeChart jfreechart = new JFreeChart(config.getTitle(), TextTitle.DEFAULT_FONT, spiderwebPlot, false); LegendTitle legendtitle = new LegendTitle(spiderwebPlot); legendtitle.setPosition(RectangleEdge.BOTTOM); jfreechart.addSubtitle(legendtitle); try { ChartUtilities.saveChartAsJPEG(new File(outputFile), jfreechart, config.getWidth(), config.getHeight()); } catch (IOException e) { e.printStackTrace(); } return true; } public static void main(String[] args) throws IOException { // 绘制条形图 final String price = "price"; final String number = "number"; final String type = "type"; DefaultCategoryDataset dataset = new DefaultCategoryDataset(); dataset.addValue(1.1, "Guitar", price); dataset.addValue(5, "Guitar", type); dataset.addValue(7, "Guitar", number); dataset.addValue(0.9, "Piano", price); dataset.addValue(3, "Piano", type); dataset.addValue(3, "Piano", number); dataset.addValue(0.6, "Drum", price); dataset.addValue(2, "Drum", type); dataset.addValue(1, "Drum", number); dataset.addValue(0.8, "Bass", price); dataset.addValue(5, "Bass", type); dataset.addValue(6, "Bass", number); JFreeChartConfig config = new JFreeChartConfig(); config.setTitle("Instrument"); config.setCategoryAxisLabel("category"); config.setValueAxisLabel("value"); config.setWidth(640); config.setHeight(480); Color outlineColor = SystemColor.WHITE; Color backgroundColor = SystemColor.WHITE; BufferedImage bufferedImage = ImageIO.read(new FileInputStream("D:/temp/小狗1.jpg")); config.setOutlineColor(outlineColor); config.setBackgroundColor(backgroundColor); config.setBackgroundImage(bufferedImage); String barChartFile = "D:/temp/barChart.jpeg"; boolean barChartResult = drawBarChart(config, dataset, barChartFile); System.out.println(barChartResult); // 绘制折线图 DefaultCategoryDataset lineChartDataset = new DefaultCategoryDataset(); lineChartDataset.addValue(2000, "Fender tele", "1970"); lineChartDataset.addValue(3000, "Fender tele", "1980"); lineChartDataset.addValue(5000, "Fender tele", "1990"); lineChartDataset.addValue(7000, "Fender tele", "2000"); lineChartDataset.addValue(10000, "Fender tele", "2010"); lineChartDataset.addValue(11400, "Fender tele", "2018"); JFreeChartConfig lineConfig = new JFreeChartConfig(); lineConfig.setTitle("乐器"); lineConfig.setCategoryAxisLabel("价格"); lineConfig.setValueAxisLabel("金额"); lineConfig.setWidth(640); lineConfig.setHeight(480); String lineChartFile = "/temp/lineChart.png"; boolean lineChartResult = drawLineChart(lineConfig, lineChartDataset, lineChartFile); System.out.println(lineChartResult); // 绘制饼图 JFreeChartConfig pieConfig = new JFreeChartConfig(); pieConfig.setTitle("乐器"); pieConfig.setCategoryAxisLabel("种类"); pieConfig.setValueAxisLabel("数量"); pieConfig.setWidth(640); pieConfig.setHeight(480); DefaultPieDataset pieDataset = new DefaultPieDataset(); pieDataset.setValue("吉他", 40); pieDataset.setValue("钢琴", 20); pieDataset.setValue("架子鼓", 10); pieDataset.setValue("贝斯", 30); String pieChartFile = "/temp/pieChart.png"; boolean pieChartResult = drawPieChart(pieConfig, pieDataset, pieChartFile); System.out.println(pieChartResult); // 绘制雷达图 JFreeChartConfig spiderConfig = new JFreeChartConfig(); spiderConfig.setTitle("水果产量"); spiderConfig.setWidth(640); spiderConfig.setHeight(480); DefaultCategoryDataset spiderDataset = new DefaultCategoryDataset(); String apple = "apple"; String banana = "banana"; spiderDataset.addValue(5, apple, "1月"); spiderDataset.addValue(6, apple, "2月"); spiderDataset.addValue(2, apple, "3月"); spiderDataset.addValue(3, apple, "4月"); spiderDataset.addValue(7, apple, "5月"); spiderDataset.addValue(4, apple, "6月"); spiderDataset.addValue(2, banana, "1月"); spiderDataset.addValue(5, banana, "2月"); spiderDataset.addValue(4, banana, "3月"); spiderDataset.addValue(5, banana, "4月"); spiderDataset.addValue(8, banana, "5月"); spiderDataset.addValue(9, banana, "6月"); boolean spiderChartResult = JFreeChartUtil.drawSpiderChart(spiderConfig, spiderDataset, "/temp/spiderChart.png"); System.out.println(spiderChartResult); } }
依赖模型
import java.awt.*; /** * * @author wangzhongxing * @version $Id: JFreeChartConfig.java, v 0.1 2019年03月26日 4:32 PM wangzhongxing Exp $ */ public class JFreeChartConfig { /** * 图表主题 */ private String title; /** * 图表横坐标标题 */ private String categoryAxisLabel; /** * 图表纵坐标标题 */ private String valueAxisLabel; /** * 图表宽度 */ private int width; /** * 图表高度 */ private int height; /** * 图表边框颜色 */ private Color outlineColor; /** * 背景颜色 */ private Color backgroundColor; /** * 背景图 */ private Image backgroundImage; public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getCategoryAxisLabel() { return categoryAxisLabel; } public void setCategoryAxisLabel(String categoryAxisLabel) { this.categoryAxisLabel = categoryAxisLabel; } public String getValueAxisLabel() { return valueAxisLabel; } public void setValueAxisLabel(String valueAxisLabel) { this.valueAxisLabel = valueAxisLabel; } public int getWidth() { return width; } public void setWidth(int width) { this.width = width; } public int getHeight() { return height; } public void setHeight(int height) { this.height = height; } public Color getOutlineColor() { return outlineColor; } public void setOutlineColor(Color outlineColor) { this.outlineColor = outlineColor; } public Color getBackgroundColor() { return backgroundColor; } public void setBackgroundColor(Color backgroundColor) { this.backgroundColor = backgroundColor; } public Image getBackgroundImage() { return backgroundImage; } public void setBackgroundImage(Image backgroundImage) { this.backgroundImage = backgroundImage; } }
雷达图依赖方法
该方法是引用别人的,原文连接: https://blog.51cto.com/wangjierui/116845
package com.wangzhongxing.springcloud.common.utils; import org.jfree.chart.plot.SpiderWebPlot; import org.jfree.data.category.CategoryDataset; import java.awt.*; import java.awt.font.FontRenderContext; import java.awt.font.LineMetrics; import java.awt.geom.*; import java.text.NumberFormat; public class MySpiderWebPlot extends SpiderWebPlot { private static final long serialVersionUID = -7763566751166048449L; private int ticks = DEFAULT_TICKS; private static final int DEFAULT_TICKS = 5; private NumberFormat format = NumberFormat.getInstance(); private static final double PERPENDICULAR = 90; private static final double TICK_SCALE = 0.015; private int valueLabelGap = DEFAULT_GAP; private static final int DEFAULT_GAP = 10; private static final double THRESHOLD = 15; MySpiderWebPlot(CategoryDataset createCategoryDataset) { super(createCategoryDataset); } @Override protected void drawLabel(final Graphics2D g2, final Rectangle2D plotArea, final double value, final int cat, final double startAngle, final double extent) { super.drawLabel(g2, plotArea, value, cat, startAngle, extent); final FontRenderContext frc = g2.getFontRenderContext(); final double[] transformed = new double[2]; final double[] transformer = new double[2]; final Arc2D arc1 = new Arc2D.Double(plotArea, startAngle, 0, Arc2D.OPEN); for (int i = 1; i <= ticks; i++) { final Point2D point1 = arc1.getEndPoint(); final double deltaX = plotArea.getCenterX(); final double deltaY = plotArea.getCenterY(); double labelX = point1.getX() - deltaX; double labelY = point1.getY() - deltaY; final double scale = ((double) i / (double) ticks); final AffineTransform tx = AffineTransform.getScaleInstance(scale, scale); final AffineTransform pointTrans = AffineTransform.getScaleInstance(scale + TICK_SCALE, scale + TICK_SCALE); transformer[0] = labelX; transformer[1] = labelY; pointTrans.transform(transformer, 0, transformed, 0, 1); final double pointX = transformed[0] + deltaX; final double pointY = transformed[1] + deltaY; tx.transform(transformer, 0, transformed, 0, 1); labelX = transformed[0] + deltaX; labelY = transformed[1] + deltaY; double rotated = (PERPENDICULAR); AffineTransform rotateTrans = AffineTransform.getRotateInstance(Math.toRadians(rotated), labelX, labelY); transformer[0] = pointX; transformer[1] = pointY; rotateTrans.transform(transformer, 0, transformed, 0, 1); final double x1 = transformed[0]; final double y1 = transformed[1]; rotated = (-PERPENDICULAR); rotateTrans = AffineTransform.getRotateInstance(Math.toRadians(rotated), labelX, labelY); rotateTrans.transform(transformer, 0, transformed, 0, 1); final Composite saveComposite = g2.getComposite(); g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 1.0f)); g2.draw(new Line2D.Double(transformed[0], transformed[1], x1, y1)); if (startAngle == this.getStartAngle()) { final String label = format.format(((double) i / (double) ticks) * this.getMaxValue()); final Rectangle2D labelBounds = getLabelFont().getStringBounds(label, frc); final LineMetrics lm = getLabelFont().getLineMetrics(label, frc); final double ascent = lm.getAscent(); if (Math.abs(labelX - plotArea.getCenterX()) < THRESHOLD) { labelX += valueLabelGap; labelY += ascent / (float) 2; } else if (Math.abs(labelY - plotArea.getCenterY()) < THRESHOLD) { labelY += valueLabelGap; } else if (labelX >= plotArea.getCenterX()) { if (labelY < plotArea.getCenterY()) { labelX += valueLabelGap; labelY += valueLabelGap; } else { labelX -= valueLabelGap; labelY += valueLabelGap; } } else { if (labelY > plotArea.getCenterY()) { labelX -= valueLabelGap; labelY -= valueLabelGap; } else { labelX += valueLabelGap; labelY -= valueLabelGap; } } g2.setPaint(getLabelPaint()); g2.setFont(getLabelFont()); g2.drawString(label, (float) labelX, (float) labelY); } g2.setComposite(saveComposite); } } }
生成图片样例
柱状图
折线图
饼图
雷达图
更多相关内容 -
在微信小程序中绘制图表:饼图绘制及如何添加动画效果
2021-03-29 20:05:53本文作者:musiq1989,制作了一个很不错的图表插件,并且写了几篇文章来辅助,这是其中的第三篇,本系列已经获得授权,来自授权地址 本期大纲 1、饼图绘制 2、如何添加动画效果 3、使用rollup构建项目 关注我的 ... -
MFC绘制图表(折线图、饼图、柱形图)控件 High-speed Charting Control
2019-04-22 11:00:11在VS2015环境下64位、32位编译通过。High-speed Charting Control--MFC绘制图表(折线图、柱形图)控件。中文翻译文档可参照https://blog.csdn.net/xuanyuanlei1020/article/details/53487107 -
使用Python绘制图表大全总结
2020-09-21 10:24:10本篇文章主要介绍了使用Python绘制图表大全总结,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 -
vue+echarts实现动态绘制图表及异步加载数据的方法
2020-10-17 20:57:42vue写的后台管理,需要将表格数据绘制成图表(折线图,柱状图),图表数据都是通过接口请求回来的。这篇文章主要介绍了vue+echarts 动态绘制图表及异步加载数据的相关知识,需要的朋友可以参考下 -
在线绘制图表工具的使用
2022-04-15 12:44:09推荐一个在线绘制图表的工具,不需要注册,使用方便 https://rawgraphs.io/ 选择use it now 有几种方式可以导入数据,这儿我们粘贴数据,从excel中复制数据过来 粘贴 下面可以选择不同的图标类型,这儿以雷达图...推荐一个在线绘制图表的工具,不需要注册,使用方便
https://rawgraphs.io/
选择use it now
有几种方式可以导入数据,这儿我们粘贴数据,从excel中复制数据过来
粘贴
下面可以选择不同的图标类型,这儿以雷达图为例
然后做数据映射
做完后效果
左侧可以修改图像元素属性
修改后:
-
High-speedChartingControl--MFC绘制图表折线图、饼图、柱形图控件.doc
2021-10-06 23:46:44High-speedChartingControl--MFC绘制图表折线图、饼图、柱形图控件.doc -
java绘制图表(柱状图、饼图、折线图)包 jfreechart
2018-08-13 17:29:15java绘制图表(柱状图、饼图、折线图)包, jfreechart -
用Echarts绘制图表数据
2022-02-22 14:13:34之前看到 一些图表,完全就不知道是什么来的,后来才知道有一个东西叫Echarts。这个插件不是什么语言,会JS就可以了,而且有很多的参数键值对,不是都要全部都记住,用的时候去翻文档就可以,牛逼一点的人都是通过...感言
之前看到 一些图标,完全就不知道是什么来的,后来才知道有一个东西叫Echarts。这个不是什么语言,会JS就可以了,而且有很多的参数键值对,不是都要全部都记住,用的时候去翻文档就可以,牛逼一点的人都是通过文档去学习一个新的东西,我目前还不能达到,希望以后可以达到吧,写这个也是为给自己的学习之路做个纪念,不代表自己总结的东西就是有深度的,或者也可能有些是自己的错误理解。
小节 官网上的Echarts
1、百度做出来的一个开源的插件,后来记得好像是被托管了,上网搜一下就可以出来,不过现在百度真的有点那啥,首个置顶带官方字样的其实是百度文档的官网,真是浪费用户的鼠标寿命。第二个进不去了,只能通过第三个进去
2、这里不是第一次来这里逛了,一般进去看配置手册就可以,后面有需要再过来看API
3、进来之后,左侧栏就是里面的配置项,大多数都是使用JS对象的方式在里面配置信息参数,搜索栏可以去搜索看到的不明配置项的信息
小节 快速入门
1、在html页面中,创建一个有高的div容器盒子,这里可以不设置宽,一定要设置高
2、将前面设置好的div容器初始化一下,引入了jquary文件的话,可以更加方便一些
3、下面就是配置主题的option,大约图表的主体部分就都在里面了
4、最后使用setOption方法,将option对象放进去加载,就可以显示出一个最入门的echarts图表了
小节 参数项与数据后台传入
1、title
图表的标题部分,快速入门中就使用到了text一项,当然,有些没有配置的项是直接就会给他们一个默认值,默认值是什么那后面就是什么
2、legend
图标的图例部分,可以对图表中的曲线进行对比分析,另外就是图例当中的值的名称是和曲线的名称是一样的,如果不一致的话,是无法显示出来的,这里就是一个坑,自己跳了不少回
3、xAxis
这里就是用来设置x轴的样式数据,首先可以表示出来的是,x轴如果在type当中设置了category,类目轴,那它就会根据data当中的数据中取出相关的值出来,展示在x坐标轴上
4、yAxis
y轴如果是设置了value,那就是数据轴,这里的数据轴就是根据series来进行相关的数据展示
5、series
series就是展示的数据,不是一个对象了,这里就是一个数组,里面可以存相关的数据
name配置的是这个曲线的名字
type配置的是这个曲线的类型,如果是line就是折线图,如果是bar就是柱状图,具体配置看配置文档
data就是数据
data可以是一个变量,将后台传入过来的数据展示到series中,也就是后台数据的动态展示
结语
这个只是入门数据的参数配置,比较简单,后面可以根据配置文档,构造出更好看、精致的图表数据
-
pandas简单绘制图表
2022-05-08 15:45:49在阅读本篇博文前请详细阅读这篇...一、绘制折线图 import pandas as pd import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['Arial Unicode MS'] plt.rcParams['axes.unicode_minus'] = False.在阅读本篇博文前请详细阅读这篇前置博文
目录
由于我们的pandas内部有画图的方法,所以我们可以很方便地生成具体的图像
一、绘制折线图
import pandas as pd import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['Arial Unicode MS'] plt.rcParams['axes.unicode_minus'] = False data={'上海':[27677,30133,32679], '北京':[24899,28000,30320], '深圳':[19600,22286,24961], '广州':[19493,21500,23000]} gdp=pd.DataFrame(data,index=[2016,2017,2018]) series2=pd.Series([17559,19530,20363],index=[2016,2017,2018]) series2.index.name='重庆\'GDP' series2.name='重庆' gdp['重庆']=series2 gdp.index.name='年份' gdp.columns.name='城市' gdp.plot() plt.show()
二、绘制柱状图
import pandas as pd import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['Arial Unicode MS'] plt.rcParams['axes.unicode_minus'] = False data={'上海':[27677,30133,32679], '北京':[24899,28000,30320], '深圳':[19600,22286,24961], '广州':[19493,21500,23000]} gdp=pd.DataFrame(data,index=[2016,2017,2018]) series2=pd.Series([17559,19530,20363],index=[2016,2017,2018]) series2.index.name='重庆\'GDP' series2.name='重庆' gdp['重庆']=series2 gdp.index.name='年份' gdp.columns.name='城市' gdp.plot.bar() plt.show()
三、绘制条形图
import pandas as pd import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['Arial Unicode MS'] plt.rcParams['axes.unicode_minus'] = False data={'上海':[27677,30133,32679], '北京':[24899,28000,30320], '深圳':[19600,22286,24961], '广州':[19493,21500,23000]} gdp=pd.DataFrame(data,index=[2016,2017,2018]) series2=pd.Series([17559,19530,20363],index=[2016,2017,2018]) series2.index.name='重庆\'GDP' series2.name='重庆' gdp['重庆']=series2 gdp.index.name='年份' gdp.columns.name='城市' gdp.plot.barh() plt.show()
四、使用seaborn美化我们的图表
绘制纵向的柱状图
将我们orient='v'设置之后,我们的图像就是纵向的
import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns plt.rcParams['font.sans-serif'] = ['Arial Unicode MS'] plt.rcParams['axes.unicode_minus'] = False n=[response['城市'],response['2018年']] m=pd.concat(n,axis=1) fig=plt.figure(figsize=(60,5)) sns.barplot(x='城市',y='2018年',data=response,orient='v') plt.show()
绘制横向的柱状图
将我们orient='h'设置之后,我们的图像就是横向的
n=[response['城市'],response['2018年']] m=pd.concat(n,axis=1) fig=plt.figure(figsize=(5,8)) sns.barplot(x='2018年',y='城市',data=response,orient='h') plt.savefig('1.png') plt.show()
五、绘制直方图
使用.plot.hist(bins=)的方法绘制直方图
n=[response['城市'],response['2018年']] m=pd.concat(n,axis=1) fig=plt.figure(figsize=(5,8)) response.plot.hist(bins=50) plt.savefig('1.png') plt.show()
六、密度图
使用plot.density绘制密度图
n=[response['城市'],response['2018年']] m=pd.concat(n,axis=1) # fig=plt.figure(figsize=(5,8)) # sns.barplot(x='2018年',y='城市',data=response,orient='h') response.plot.density() plt.savefig('1.png') plt.show()
七、散点图
使用sns.regplot的方法来绘制散点图,来表示我们数据之间的关系
这里我们必须要注意我们给sns.regplot传入的参数必须数据的个数时相同的,在我们下面的代码中,我们的GDP列中的元素个数必须和我们Area列的元素个数必须是一样的,否则会报错
import pandas as pd import seaborn as sns import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['Arial Unicode MS'] plt.rcParams['axes.unicode_minus'] = False data=pd.read_csv('gdp_2018.csv') print(data) print(data['Area']) sns.regplot('GDP','Area',data=data) plt.show()
八、散点图矩阵
import pandas as pd import seaborn as sns import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['Arial Unicode MS'] plt.rcParams['axes.unicode_minus'] = False data=pd.read_csv('gdp_2018.csv') print(data) //这里我们将所有行的gdp列到Area列挑选出来,并且去掉我们的Rates列,删除的方向为纵向 //同时设置我们的样式为kde,其中主对角线上的图是我们两两元素的密度图 //其余位置式我们两个对应元素的散点图 sns.pairplot(data.loc[:,'GDP':'Area'].drop('Rates',axis=1),diag_kind='kde',plot_kws={'alpha':0.2}) plt.show()
-
MFC中用MSChart绘制图表
2018-05-29 16:17:27包含MCChart控件,及其所需的配置头文件及源文件,再加一个成功的实例, 本人用VS2012,编译没过可以尝试该工程的配置属性 -
matplotlib绘制图表
2022-03-21 12:15:27绘制柱状图 饼状图 直方图 等高线 三维图 import matplotlib.pyplot as plt plt.plot plt.plot([1,4],[2,8]) #绘制一条线是 先先横坐标 再写纵坐标 plt.show() ''' 使用matplotlib绘制图形时,其中最为常用的... -
C#绘制图表.rar
2020-02-03 13:02:29C#绘制图表的demo,还有一个相关的pdf,含有注释,绝对完整详细,O(∩_∩)O哈哈~,有问题欢迎留言 -
如何用echarts组件制作图表
2021-09-27 09:08:39第一步 初始化实例,第二步 指定图表的配置项和数据,第三步 使用刚刚指定图表的配置项和数据 进行第一步,基于准备好的dom元素,初始化echarts实例的操作 官网的实例中有各式各样的图表,如饼状图,柱状图,折线图... -
免费的C#开发绘制图表软件源代码
2021-05-11 16:48:46C#中优秀的免费绘图表软件nplot的项目参考代码,已经升级到vs2010及以上能够使用(网上下载的大多只能在vs2008使用) -
9款很棒的网页绘制图表JavaScript框架脚本
2020-09-22 15:47:099款很棒的网页绘制图表JavaScript框架脚本1.FlotFlot是基于 jQuery框架绘制图表的纯Javascript框架。它可在客户端即时绘制并生成各种图形。重要的是它使用简便(还有很多可选的设置)、吸引人的视觉 效果和交互功能... -
Python matplotlib绘制图表
2022-05-04 22:02:43Pythonmatplotlib绘制折图表 matplotlib是Python中的一个第三方库。主要用于开发2D图表,以渐进式、交互式的方式实现数据可视化,可以更直观的呈现数据,使数据更具说服力。 一、安装matplotlib pip install ... -
《金字塔原理:思考写作与制作图表的逻辑》.pdf
2022-03-09 10:55:22《金字塔原理:思考写作与制作图表的逻辑》.pdf -
python中采用插件pandas绘制图表
2022-02-23 09:12:51python中采用插件pandas绘制图表 -
C++绘制图表
2020-08-18 17:21:54五分钟学会C++高效图表绘制神器调用 -
Ervy在终端中绘制图表
2019-08-10 05:24:29Ervy - 在终端中绘制图表 -
C#绘制图表
2017-12-15 18:06:52利用C#实现统计表,折线,曲线,点的显示,绘制图表。 -
VBA自动绘制图表.rar
2021-08-28 09:55:13利用VBA动态生成图表,开放源代码,可适当修改后放到自己的项目中 -
WPF制作图表控件
2018-07-13 10:22:59WPF一款制作图表的控件,下载完之后再直接安装,在VisualStudio的工具箱中会出现相应的图表控件,就可以添加图表。 -
kate绘制图表2
2021-09-02 18:03:31kate绘制图表2 -
wxPython+Matplotlib绘制折线图表
2020-09-18 10:35:05主要介绍了wxPython+Matplotlib绘制折线图表,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 -
MFC C++绘制图表 饼图、柱状图、曲线图
2009-05-06 09:37:45MFC根据数据绘制图表,饼图、柱状图、曲线图 -
python图表制作
2021-02-10 04:19:19画一个吸引人注意的图表相当重要。当你探索一个数据集,需要画图表,图表看起来令人愉悦是件很高兴的事。在与你的观众交流观点时,可视化同样重要,同时,也很有必要去让图表吸引注意力和印入脑海里。Matplotlib自动... -
Django Highcharts制作图表
2020-12-23 12:35:59什么曲线图、饼图,还有你从来都不知道的图都可以生成出来,现在用的比较多的是highcharts,echarts等,django-highcharts是django的一个集成库,使用它在django里更方便绘制出我们想要的图表,所以这篇文章就使用它...