3图例
对于范围值和独立值专题图可以创建图例,并且可以修改图例的字体,标题等信息。图例也可以输出为一个栅格图文件,使用Bean编程时也可以使用图例。每个专题图都有图例对象,但只有范围值和独立值专题的图例对象不是空。如果要图例和专题图关联起来,需要调用theme.setLegend。
示例:
//CreateThemeobject
//AssumerendsasaRenditionobject
//AssumecolNameasaattributeName(String)
//AssumerBreaksasabreakPointsVector
RangedThemerTheme=newRangedTheme(colName,rBreaks,rends,"StatesbyPop_1990");
//Createadefaultlegend
RangedThemeLegendrThmLeg=rTheme.createDefaultLegend(null);
//OR,Createathemelegendinstanceusingthemeandsettinghashtable
//Addthemesettingstohashtable
Hashtableht=newHashtable();
ht.put("geomtype",RangedThemeLegend.REGION_GEOMETRY);
ht.put("lableorder",RangedThemeLegend.ORDER_ASCENDING);
RangedThemeLegendrThmLeg=newRangedThemeLegend(rTheme,ht);
//Setlegendtitle
rThmLeg.setTitle("RangedThemelegend");
//sendlegendtoimagefile
rThmLeg.toFile("c:\\temp\\rangeLeg.gif","image/gif");
如果使用LegendContainerBean可以将它放在VisualMapJ中,图例都会显示在Bean中,如果专题图改变,LegendContainerBean中的图例也会调整。
除了专题图图例外,图层中的图元也有一个图例CatographicLegend,可以使用com.mapinfo.legend.CatographicLegend来创建。下面是一个示例:
//AssumemapJisalreadyinitialized
Layerlandmarks=mapJ.getLayers().getLayer("landmarks");
//createthelegendwithtitle"StateLandmarks"
CartographicLegendlegend=newCartographicLegend("StateLandmarks");
//PerformasearchAll()onthelayertogetitsentire
//FeatureSet-needtomakesurewefetchthecolumnthat
//wewanttolabelwithinthelegend
Vectorcolumns=newVector();
columns.add("Name");
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-27888-11.html
柬埔寨之类的国家的女孩回来能上户口话至少解决掉几百万的光棍
自己什么都不需要担心
为何有关部门不出来表态