利用GIS的数据批量生成XY的图形图像文件,可以直接使用Python。一般大家都是用matplotlib,中文设置的问题参看了许多内容,结论是对错不一,让我折腾了三天,现总结如下:

1.软件的版本。安装测试的为numpy-1.6.1和matplotlib-1.1.0,WindowsXP系统。我原来系统安装的numpy-1.6和matplotlib-1.1.0有冲突。

2.修改matplotlibrc文件。ArcGIS10下安装后,该文件在C:\Python26\ArcGIS10.0\Lib\site-packages\matplotlib\mpl-data下,利用记事本打开后找到下列两句:

#font.family         : sans-serif
#font.sans-serif     : Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
将注释符号#去掉,并增加中文字体名,修改如下:
font.family         : sans-serif
font.sans-serif     : Microsoft YaHei, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif

注:在font.sans-serif中添加的字体名称必须正确,XP下可以在C:\Documents and Settings\[用户名]\.matplotlib\/fontList.cache文件中,通过查找文件名找到对应的名称,如上面的"Microsoft YaHei"的字体文件名称为“msyh.ttf",搜索一下就找到了。如果还不行,试着将字体文件copy到C:\Python26\ArcGIS10.0\Lib\site-packages\matplotlib\mpl-data\fonts\ttf目录下。

 
3.在Python程序中增加下列语句
mpl.rcParams['axes.unicode_minus'] = False  #避免负号不显示的错误
 
4.Unicode的设置。如果在ArcGIS10环境以外调试,必须在文件开始处(第一行)中增加:
#-*- coding: utf-8 -*-
字符格式使用u‘中文显示'
如果是在ArcGIS10中的Arctoolbox中调用,上面的Unicode的设置反而多余。ArcGIS10默认值即可,没有必要设置,通过参数传进去的字符均为Unicode字符。
通过以上几个步骤在ArcGIS10下作图成功。

ArcGIS10中matplotlib画图时的中文设置的更多相关文章

  1. 解决在Ubuntu系统下用matplotlib作图时出现中文乱码问题

    今天在jupyter notebook中画图时,中文不能正常显示,如下图所示: 在此记录一下解决的办法. 1.找到matplotlib配置文件的位置 import matplotlib print(m ...

  2. 解决Pycharm中matplotlib画图出错问题(AttributeError: module 'matplotlib' has no attribute 'verbose')

    最近在Linux中使用pycharm过程中使用matplotlib无法画图,总是提示错误 /usr/bin/python3. /home/leo/PycharmProjects/untitled1/E ...

  3. python怎么解决用matplotlib画图时无法显示中文的问题或者出现方框的问题

    在中文前面加上u 加上u以后如果还不可以显示中文显示了方框 就直接加上 from pylab import mpl mpl.rcParams['font.sans-serif']=['SimHei']

  4. Ubuntu下用matplotlib作图时显示中文

    之前在Ubuntu下用matplotlib作图的时候发现无法正常显示中文,查了一番以后发现是Ubuntu系统和matplotlib库没有共同可显示的中文字体库的原因.用此文章的方法可以解决这一问题. ...

  5. python中matplotlib画图

    参考 https://blog.csdn.net/u010358304/article/details/78906768 https://www.cnblogs.com/onemorepoint/p/ ...

  6. 使用python中的matplotlib 画图,show后关闭窗口,继续运行命令

    使用python中的matplotlib 画图,show后关闭窗口,继续运行命令 在用python中的matplotlib 画图时,show()函数总是要放在最后,且它阻止命令继续往下运行,直到1.0 ...

  7. [转]SSIS高级转换任务—在Package中是用临时表是需要设置RetainSameConnection属性

    本文转自:http://www.cnblogs.com/tylerdonet/archive/2011/05/20/2052306.html 在上一个导入列这个例子中我们创建一个实际的表来存储文件路径 ...

  8. ubuntu下matplotlib画图中文乱码问题

    最近因为论文原因在学习机器学习,看的一本叫做<机器学习实战>的书,看了看还是不错的,因为其中既有原理又有实例.今天载使用matplotlib进行画图时,发现中文会显示为小方块,这个问题真是 ...

  9. Windows下的matplotlib画图中文显示设置

    一.在测试matplotlib时遇到X轴中文字符不显示的问题,参考网上 源代码如下 from matplotlib import pyplot as plt import random import ...

随机推荐

  1. iOS开发——UI篇Swift篇&UIToolbar

    UIToolbar class UIToolBarUISearchBar: UIViewController,UISearchBarDelegate { var titleString:String! ...

  2. Android广播机制:Broadcast

    转载:Android总结篇系列:Android广播机制 1.Android广播机制概述 Android广播分为两个方面:广播发送者和广播接收者,通常情况下,BroadcastReceiver指的就是广 ...

  3. APP快速通过苹果AppStore审核九大诀窍

    [IT168技术]对于移动应用开发者来说, 最令人沮丧的可能莫过于辛辛苦苦开发的应用, 没能通过苹果AppStore的审核,或者在应用更新时遭遇下架.苹果的AppStore的审核流程和标准, 一向不透 ...

  4. SIFT算法的应用--目标识别之Bag-of-words模型

    原文:http://blog.csdn.net/v_JULY_v/article/details/6555899 SIFT算法的应用 -目标识别之用Bag-of-words模型表示一幅图像 作者:wa ...

  5. 一款基于jQuery的支持鼠标拖拽滑动焦点图

    记得之前我们分享过一款jQuery全屏广告图片焦点图,图片切换效果还不错.今天我们要分享另外一款jQuery焦点图插件,它的特点是支持鼠标拖拽滑动,所以在移动设备上使用更加方便,你只要用手指滑动屏幕即 ...

  6. Lua读写文件

    文件读写 文件读写对制作游戏很有帮助.可以调用别的文件中的代码,保存最高分.游戏存档.玩家状态等信写到文件中. 首先,让我们看一个简单的命令:dofile.这个命令会读入另一个文件的代码并立即执行. ...

  7. 【PHP代码审计】 那些年我们一起挖掘SQL注入 - 2.全局防护Bypass之UrlDecode

    0x01 背景 现在的WEB程序基本都有对SQL注入的全局过滤,像PHP开启了GPC或者在全局文件common.php上使用addslashes()函数对接收的参数进行过滤,尤其是单引号.遇到这种情况 ...

  8. GNU-ARM汇编

    GNU ARM 汇编指令(2008-10-29 00:16:10) 标签:linux gnu arm 汇编指令 it 分类:技术文摘 第一部分 Linux下ARM汇编语法尽管在Linux下使用C或C+ ...

  9. postgres数据库中的数据转换

    postgres8.3以后,字段数据之间的默认转换取消了.如果需要进行数据变换的话,在postgres数据库中,我们可以用"::"来进行字段数据的类型转换.实际上"::& ...

  10. 菜菜菜鸟学习之JavaWeb 入门1(自己的学习理解,不对之处请大神们多多指教啊)

    一.相关基础知识 1.C/S(Client/Server)架构和B/S(Browser/Server)架构 首先说C/S架构,简单讲其实很常见,类似QQ等需要下载客户端的应用程序就是建立在C/S架构中 ...