我创建了一个metricsgraphics图表,并试图增加轴标签的字体大小:http://jsfiddle.net/hk63jfg3/1/
我的js:
MG.data_graphic({
title: "sightings",
data: [{
'date': new Date('2014-10-28'),
'value': 7
}, {
'date': new Date('2014-11-01'),
'value': 12
}, {
'date': new Date('2014-11-02'),
'value': 18
}],
width: 400,
height: 250,
target: '#sightings',
x_accessor: 'date',
y_accessor: 'value',
});
和CSS:
.mg-x-axis text, .mg-y-axis text, .mg-histogram .axis text {
font-size: 1.5rem;
}
年份和月份相互碰撞,有没有办法通过CSS或更好的图表选项来解决这个问题?
答案 0 :(得分:0)
transform: translate(x,y)
。您可以使用列出in the W3C specification的所有属性设置文本样式, 例如使其变粗或改变颜色:
text {
font-weight: bold;
fill: rebeccapurple;
font-size: 30px;
}
如果年份标记与月份标记发生碰撞,请将其与translate(0,10px)
分开并使年份标记显示为:
svg {
overflow: visible !important;
}
$(function () {
MG.data_graphic({
title: "sightings",
data: [{
'date': new Date('2014-10-28'),
'value': 7
}, {
'date': new Date('2014-11-01'),
'value': 12
}, {
'date': new Date('2014-11-02'),
'value': 18
}],
width: 400,
height: 250,
target: '#sightings',
x_accessor: 'date',
y_accessor: 'value',
});
});
$(".mg-year-marker text").attr("fill", "red");

.mg-x-axis text, .mg-y-axis text, .mg-histogram .axis text {
font-size: 1.5rem;
}
svg {
overflow: visible !important;
height: 300px;
}
g.mg-year-marker {
transform: translate(100px, 15px);
}
g.mg-year-marker text {
font-size: 2rem;
fill: rebeccapurple;
font-weight: bold;
}

<link href="http://metricsgraphicsjs.org/css/metricsgraphics.css" rel="stylesheet"/>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.4.11/d3.min.js"></script>
<script src="http://metricsgraphicsjs.org/js/metricsgraphics.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<body>
<div id='sightings'></div>
</body>
&#13;
document.getElementById("my-svg-id").contentDocument
获取SVG元素的内部DOM,并通过设置其属性来操作文本元素。setAttribute("fill","red");
)制作标记红色。