gpt4 book ai didi

javascript - 自定义 React Native Chart Kit 的颜色

转载 作者:行者123 更新时间:2023-12-02 19:55:55 25 4
gpt4 key购买 nike

已使用 react-native-chart-kit 包为 React Native 应用程序创建了基本折线图/面积图,如下面的代码所示。

问题:我们如何独立更改绘图组件的样式/颜色?例如点、线描边、面积、轴、刻度标签等...

chartConfig 中的 color 参数更改时,它似乎会影响几乎整个图表,包括轴刻度标签、网格线、折线图下的区域。

是否可以为图表的每个单独属性定义颜色?

enter image description here

代码:

import { LineChart } from 'react-native-chart-kit';
import { Dimensions} from 'react-native';
const screenWidth = Dimensions.get('window').width

const data = {
labels: ['January', 'February', 'March', 'April', 'May', 'June'],
datasets: [{
data: [ 20, 45, 28, 80, 99, 43 ],
color: (opacity = 1) => `rgba(134, 65, 244, ${opacity})`,
strokeWidth: 2 // optional
}]
}

const chartConfig = {
backgroundGradientFrom: '#fff',
backgroundGradientTo: '#fff',
color: (opacity = 1) => `rgba(63, 143, 244, ${opacity})`,
strokeWidth: 2 // optional, default 3
}

class Test extends Component {
render() {
return (
<LineChart
data={data}
width={screenWidth}
height={400}
chartConfig={chartConfig}
/>
)
}
}

最佳答案

这是我用来创建图表的代码。请参阅“propsForDots”部分来设置数据点的样式。

我知道这只是您寻求定制帮助的一部分,但这只是一个开始。

<LineChart
data={{
labels: labelArray,
datasets: [
{
data: valueArray
}
]
}}
width={Dimensions.get("window").width} // from react-native
height={220}
yAxisInterval={1} // optional, defaults to 1
chartConfig={{
backgroundColor: "#444",
backgroundGradientFrom: '#444',
backgroundGradientTo: '#444',
decimalPlaces: 2, // optional, defaults to 2dp
color: (opacity = 1) => `rgba(0, 110, 199, ${opacity})`,
labelColor: (opacity = 1) => `rgba(255, 255, 255, ${opacity})`,
style: {
borderRadius: 16
},
propsForDots: {
r: "6",
strokeWidth: "2",
stroke: "#fff"
}
}}
bezier
style={{
marginVertical: 8,
borderRadius: 16
}}
/>

在点的属性中,r是点的半径,描边宽度是边框大小,描边是边框颜色。

我仍在尝试这个库,这就是我遇到这个问题的原因。希望这对您和其他可能正在寻找相同内容的人有所帮助。

关于javascript - 自定义 React Native Chart Kit 的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57062646/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com