我使用此代码绘制X向量与example.txt
上表格的所有列C = readtable('example.txt', 'Delimiter',',');
X = 5:5:430;
%%
for i=1:numel(X)
plot(X,C{:,i})
hold on
grid on
end
LegendString = cell(1,numel(X));
hold all
for k = 1:numel(X)
LegendString{k} = sprintf('%i',X(k));
end
legend(LegendString)
在这里,您可以下载example.txt文件来运行代码: https://la.mathworks.com/matlabcentral/answers/383371-how-to-make-all-the-legend-appear-in-a-plot
为什么剧情只向我展示50个传说而不是代码所要求的全部86个?
答案 0 :(得分:1)
它不是Matlab错误,而是故意行为:传说目前仅限于componentDidMount(){
return fetch('http://example.com/search.php' , {
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
// Getting the search.
search: this.props.name
})
}).then((response) => response.json())
.then((responseJson) => {
this.setState({
//isLoading: false,
dataSource: responseJson
}, function() {
// In this block you can do something with new state.
});
})
.catch((error) => {
console.error(error);
});
}
return(
<FlatList
Vertically
data={this.state.dataSource}
ItemSeparatorComponent={this.FlatListItemSeparator}
renderItem={({item}) =>
<TouchableOpacity
onPress={()=> this.onPress(item.subCategory, item)}>
<Image
source={{uri: item.icon}}
style={{width:100, height:100}}
/>
</TouchableOpacity>
}
numColumns={1}
onEndReachedThreshold={120}
onEndReached={this.endReach()}
keyExtractor={(item)=>item.ID}
/>
)
个元素(您可能已经注意到您的情节图例实际上包含50
项,而不是50
)。可能已经引入了这个限制,以避免产生过大的传说,其中包括:
这个硬编码限制的痕迹可以在图例脚本本身中找到(为了查看它,在命令窗口中运行86
)。对于使用作为参数传递的显式标签创建的图例,限制可能应用于处理图例图形组件的类中的某个内部。对于没有定义标签集创建的图例,子功能open legend
应用此限制:
set_children_and_strings
为了克服这个限制,你有两种选择:
修改强>
if auto_children && length(ch) > 50,
% only automatically add first 50 to cut down on huge lists
ch = ch(1:50);
end
matlab.graphics.illustration.internal.generateDisplayNames(ch);