Gnumeric bubble plot label problem

目次
Gnumeric
Gnumeric ソースコード改変
Gnumeric example
Gnumeric move worksheet to another Wookbook problem
Gnumeric code memo
Gnumeric bubble plot label problem
Gnumeric goffice開発事始め
Gnumeric tree
Gnumeric selecting one column or row problem
Gnumeric position shifts at copy-pasting a chart
Gnumeric copy paste multiple chart problem
yozooffice.png libreoffice.png
yozo office libre office
rthegreat.png
R

we can not read scale without labels since the size of bubble doesn't has axis.

https://developer.gnome.org/goffice/0.8/GogGraph.html
https://developer.gnome.org/goffice/0.8/GogRenderer.html#gog-renderer-draw-text

r@r-ThinkPad-T60:~/gnumeric-1.10.17$ find . -name "*.c" -exec grep -n -H 'SheetObjectGraph' {} \;
./src/sheet-object-graph.c:92:#define SHEET_OBJECT_GRAPH_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SHEET_OBJECT_GRAPH_TYPE, SheetObjectGraphClass))
./src/sheet-object-graph.c:99:} SheetObjectGraph;
./src/sheet-object-graph.c:100:typedef SheetObjectClass SheetObjectGraphClass;
./src/sheet-object-graph.c:105:sog_data_set_sheet (G_GNUC_UNUSED SheetObjectGraph *sog,
./src/sheet-object-graph.c:120:		   GOData *data, SheetObjectGraph *sog)
./src/sheet-object-graph.c:126:		      GOData *data, SheetObjectGraph *sog)
./src/sheet-object-graph.c:132:sog_datas_set_sheet (SheetObjectGraph *sog, Sheet *sheet)
./src/sheet-object-graph.c:143:	SheetObjectGraph *sog = SHEET_OBJECT_GRAPH (obj);
./src/sheet-object-graph.c:201:	SheetObjectGraph *sog = SHEET_OBJECT_GRAPH (so);
./src/sheet-object-graph.c:264:	SheetObjectGraph *sog = SHEET_OBJECT_GRAPH (so);
./src/sheet-object-graph.c:295:	SheetObjectGraph *sog = SHEET_OBJECT_GRAPH (so);
./src/sheet-object-graph.c:319:	SheetObjectGraph *sog = SHEET_OBJECT_GRAPH (so);
./src/sheet-object-graph.c:351:	SheetObjectGraph *sog = SHEET_OBJECT_GRAPH (so);
./src/sheet-object-graph.c:371:	SheetObjectGraph *sog = SHEET_OBJECT_GRAPH (so);
./src/sheet-object-graph.c:413:	SheetObjectGraph const *sog = SHEET_OBJECT_GRAPH (so);
./src/sheet-object-graph.c:443:	SheetObjectGraph const *sog = SHEET_OBJECT_GRAPH (src);
./src/sheet-object-graph.c:480:	SheetObjectGraph *sog = SHEET_OBJECT_GRAPH (so);
./src/sheet-object-graph.c:506:	SheetObjectGraph *sog = SHEET_OBJECT_GRAPH (so);
./src/sheet-object-graph.c:515:	SheetObjectGraph *sog = SHEET_OBJECT_GRAPH (so);
./src/sheet-object-graph.c:524:	SheetObjectGraph *sog = SHEET_OBJECT_GRAPH (so);
./src/sheet-object-graph.c:540:	SheetObjectGraph *sog = SHEET_OBJECT_GRAPH (so);
./src/sheet-object-graph.c:604:GSF_CLASS_FULL (SheetObjectGraph, sheet_object_graph,
./src/sheet-object-graph.c:619:	SheetObjectGraph *sog = g_object_new (SHEET_OBJECT_GRAPH_TYPE, NULL);
./src/sheet-object-graph.c:629:	return ((SheetObjectGraph *)sog)->graph;
./src/sheet-object-graph.c:634: * @so : #SheetObjectGraph
./src/sheet-object-graph.c:638: * Assign the graph to its SheetObjectGraph wrapper and initialize the
./src/sheet-object-graph.c:644:	SheetObjectGraph *sog = SHEET_OBJECT_GRAPH (so);
./src/wbc-gtk.c:5460:	/* The SheetObjectGraph does the magic to link things in */
./src/xml-sax-read.c:2301:	else if (!strcmp (type_name, "SheetObjectGraphic"))
./src/xml-sax-read.c:3019:	GSF_XML_IN_NODE (SHEET_OBJECTS, OBJECT_OLD_LINE, GNM, "SheetObjectGraphic", GSF_XML_NO_CONTENT, &xml_sax_object_start, &xml_sax_object_end),
./src/xml-sax-read.c:3022:	GSF_XML_IN_NODE (SHEET_OBJECTS, OBJECT_GRAPH, GNM, "SheetObjectGraph", GSF_XML_NO_CONTENT,	&xml_sax_object_start, &xml_sax_object_end),
./src/gnm-so-line.c:462:	so_class->xml_export_name	= "SheetObjectGraphic";
./plugins/excel/ms-chart.c:3877: * @sog : #SheetObjectGraph
r@r-ThinkPad-T60:~/gnumeric-1.10.17$ find . -name "*.c" -exec grep -n -H 'gog_graph_render_to_cairo' {} \;
./src/sheet-object-graph.c:453:	gog_graph_render_to_cairo (SHEET_OBJECT_GRAPH (so)->graph,
r@r-ThinkPad-T60:~/gnumeric-1.10.17$ cd 
r@r-ThinkPad-T60:~$ cd goffice-0.8.17/
r@r-ThinkPad-T60:~/goffice-0.8.17$ find . -name "*.c" -exec grep -n -H 'gog_graph_render_to_cairo' {} \;
./goffice/graph/gog-graph.c:1192: * gog_graph_render_to_cairo:
./goffice/graph/gog-graph.c:1201:void gog_graph_render_to_cairo (GogGraph *graph, cairo_t *cairo, double w, double h)
r@r-ThinkPad-T60:~/goffice-0.8.17$ gvim ./goffice/graph/gog-graph.c

Alternative way

alter.png
fortunately, gnumeric offers secondary y axis and accurate user control.
here, add some samples as scale in the series, going to color those scale circles.

1 download data and open

2 select column{B,F,I}, insert bubble chart

insertbubble.png

3 set axis non-automatic

for create scale-bubble space, manually set x-axis1 0:12+1(13) ENTER, y-axis1 0:1400 ENTER

manual.png

4 get max(population) and min(population), decide scale-bubble range.

range.png
like 40m > > 0.5m > 0

5 calculate y-axis2 number, corresponding ratio to y-axis1.

5-1 ok. i decided put 40m-scale-bubble on 1200 of burglary.
and set scale-bubble-axis-0 on 0 of burglary, because it's easier to calculate.
5-2 then, burgalary1200 goes population400m, equation is that burglary = population(million) * 30population(million) = burgary / 30.
y-axis2 becomes 0 to 1400/30 million = 46666666.6... add y-axis2, set interval shown every 10000000 from 0.

y2.png

6 add scale-bubble data. ratio of population against burglary must be corresponding.

cal.png
now, just calculate as same as 1400. according the equation above, population30m goes burglary 30 * 30, population20m goes burglary 20 * 30...

7 point to scale-bubble

point.png
add point. this case, last index of 56,55,54,53,52,51 was scale-bubble.

9 edit style bubble type=surface,diameter; bubble scale=90%.., colours as you like.

dia.png

/file/Gnumeric bubble plot label problem/demonstration_crimeRatesByState2005.gnumeric

    last modified: 18 May 2013 [ View wiki source Close ]
     
SEARCH DIFFERENCE ATTACHMENT RECENT POST